エポック・イテレーション(学習の単位)
解説:AIの「ドリル学習」スケジュール
ニューラルネットワークは、同じデータを何度も繰り返し学習することで賢くなります。この「繰り返しの回数」を数える単位として、エポックとイテレーションの2つが使われます。
これを「60,000問ある問題集」を解く学生に例えると、以下のような違いになります。
| 用語 | 意味 | 問題集での例え |
|---|---|---|
| エポック (Epoch) |
用意した「全データ」を一通り学習し終えること。 | 「問題集を最初から最後まで1周すること」 (1周で終わりではなく、10周、50周と繰り返します) |
| イテレーション (Iteration) |
重み(パラメータ)を「更新した回数」。 ミニバッチごとの学習回数とも言えます。 |
「1日の勉強回数」 (今日は100問解いて答え合わせした=1イテレーション完了) |

計算問題を攻略しよう
G検定では、データ数とバッチサイズ(一度に学ぶ量)から、回数を計算させる問題が出ます。
関係式は以下の通りです。
【1エポックあたりのイテレーション数】
全データ数 ÷ バッチサイズ
例題:
データ数が60,000個あり、バッチサイズを100(一度に100個ずつ学習)に設定した場合。
- 1エポックの長さ:
60,000 ÷ 100 = 600回
つまり、600回更新(イテレーション)すると、データ全体を1周(1エポック)したことになります。 - 20エポック学習する場合:
600 × 20 = 12,000回
合計で12,000回のイテレーション(更新)が行われます。
G検定対策
出題ポイント
- 定義の区別:「データを一周=エポック」「更新一回=イテレーション」。
- 計算能力:「データ数 ÷ バッチサイズ」の計算が素早くできること。
- バッチサイズとの関係:バッチサイズを小さくすると、1エポックあたりのイテレーション回数は増える(更新頻度が高くなる)。
ひっかけ対策
- 「バッチ学習(一括学習)の場合」:
バッチ学習では全データを一度に使う(バッチサイズ=全データ数)ため、「1エポック = 1イテレーション」になります。ここをミニバッチ学習と混同しないように注意しましょう。
