エポック
Epoch
学習データ全体を一巡させる単位。ニューラルネットは通常、複数エポックかけて繰り返し学習する。
エポックとは
エポック(Epoch)は、機械学習で学習データ全体を一巡させる単位です。「1エポック」=「全訓練データを一度すべて使って学習した状態」を指します。
ニューラルネットは1エポックでは学習が不十分なことが多く、数十〜数百エポックを繰り返して精度を高めるのが一般的です。
バッチサイズとの関係
- バッチサイズ: 一度に処理するデータ数
- イテレーション: 1回のパラメータ更新
- エポック: 全データを一巡(= 全データ数 ÷ バッチサイズ 回のイテレーション)
例えば10,000件のデータをバッチサイズ100で学習すると、1エポック=100回のパラメータ更新になります。
何エポック回すべきか
- 少なすぎると: 学習不足(未学習)
- 多すぎると: 過学習(訓練データに過剰適合し、未知データで精度が落ちる)
実務では、検証データでの精度が頭打ちになった時点で学習を止める(Early Stopping)のが一般的な工夫です。
関連する概念
- バッチサイズ: 1回で処理するデータ数
- 学習率: 1回あたりの更新幅
- 過学習: エポックを増やしすぎたときの代表的な失敗
エポックは**学習の"周回数"**と捉えると、全体像をイメージしやすくなります。
