Another approach to speed-up the network optimisation is to update parameters more frequently. Mini-batch process first divide training set into small batches, then compute gradient, and updates the parameter for each batch. So if training data is divided into 10 mini-batches, then parameters are updated 10 times par epoch. The size of batch and samples must be carefully chosen so that each mini-batch preserves the data distribution of the entire original training set.
As the network is modified during sweeping the training data, we need to measure the network performance with another set of data other than training dataset. So we divide the training data into two sets of data, validation set and training set. Training set is used for parameter optimisation and validation set is used to measure the network performance for each epoch.
The following figures show the effect of mini-batching for various optimisation configuration, compared against batch updating.
ネットワーク最適化を高速にする他の手段は、パラメーターの更新頻度を上げることである。ミニバッチは訓練データをより小さなバッチに分割し、それぞれのバッチを用いて勾配を計算、パラメーターを更新する。訓練データを10個のバッチに分割したならば、パラメーターは 1 Epoch で10回更新される。訓練データを分割する際は、元の訓練データの分布が保持されるように分割数と選出するサンプルを選ばなければならない。
訓練データを一巡する間にパラメーターが随時更新されてしまうので、ネットワークの性能を測るために別のデータセットが必要になる。そこで、元々の訓練データをバリデーションセットと訓練セットの二つに分割する。パラメーターの更新には訓練セットを(ミニバッチに分割して)用い、Epoch 毎の性能の評価にはバリデーションセットを用いる。
以下の図はミニバッチによるネットワーク最適化の変化を示す。
As the network is modified during sweeping the training data, we need to measure the network performance with another set of data other than training dataset. So we divide the training data into two sets of data, validation set and training set. Training set is used for parameter optimisation and validation set is used to measure the network performance for each epoch.
The following figures show the effect of mini-batching for various optimisation configuration, compared against batch updating.
ネットワーク最適化を高速にする他の手段は、パラメーターの更新頻度を上げることである。ミニバッチは訓練データをより小さなバッチに分割し、それぞれのバッチを用いて勾配を計算、パラメーターを更新する。訓練データを10個のバッチに分割したならば、パラメーターは 1 Epoch で10回更新される。訓練データを分割する際は、元の訓練データの分布が保持されるように分割数と選出するサンプルを選ばなければならない。
訓練データを一巡する間にパラメーターが随時更新されてしまうので、ネットワークの性能を測るために別のデータセットが必要になる。そこで、元々の訓練データをバリデーションセットと訓練セットの二つに分割する。パラメーターの更新には訓練セットを(ミニバッチに分割して)用い、Epoch 毎の性能の評価にはバリデーションセットを用いる。
以下の図はミニバッチによるネットワーク最適化の変化を示す。
No comments:
Post a Comment