ミニバッチサイズとエポックごとの反復について

조회 수: 7 (최근 30일)
Yuki Yoshino
Yuki Yoshino 2019년 11월 6일
댓글: Yuki Yoshino 2019년 11월 7일
エポック数とミニバッチサイズを指定し、学習(2種分類問題)しました。
学習データ数(2種合わせて) 5801枚を用いて、学習オプションを下記のように設定しました。
options = trainingOptions('sgdm', ...
'InitialLearnRate',0.001, ...
'Shuffle','every-epoch', ...
'ValidationData',testImages, ...
'MaxEpochs',5, ...
'ValidationFrequency',5,...
'Verbose',true, ...
'MiniBatchSize',290, ...
'Plots','training-progress');
学習データ数とミニバッチサイズからエポックごとの反復は(5801/290 = ) 20になると考えました。
しかしながら下図のようにエポックごとの反復が4になってしまいます。なぜこのような結果になるのでしょうか?
出力.bmp

채택된 답변

Hiroyuki Hishida
Hiroyuki Hishida 2019년 11월 6일
편집: michio 2019년 11월 6일
Yoshino様、
学習に使う画像と申しますかそのデータストアを、学習用と検証用に分けられていませんか?
なお、同種のQ&Aもありますので、あわせて確認してみてください。
よろしくお願いします。
菱田
  댓글 수: 3
Hiroyuki Hishida
Hiroyuki Hishida 2019년 11월 7일
편집: Hiroyuki Hishida 2019년 11월 7일
Yoshino様、
回答ありがとうございます。でしたら、michio からのコメントも一読いただいた後、以下二点を確認してみてください。なお、説明用のスクリプト(sample.m)では以下のURLにある「深層学習における学習の進行状況の監視」を使用しております。
Iteration数の計算
こちらはYoshino様のおっしゃるとおりです。端数処理についてはmichio のコメントにあるリンクを参照ください。
下図のようにエポックごとの反復が4
実際にはIteration数の計算が走っておりますが、プロットするタイミング(回数)は、上記の計算で求めたIteration数を、ValidationFrequencyで設定している値で割り算したものになります。従いまして、このケースですと20÷5=4となっております。
サンプルスクリプトと、trainingoptionを変更して走らせた結果をいくつか添付しておりますので、動かして確認してみていただければ、理解が進むかと思います。
よろしくおねがいします。
菱田
Yuki Yoshino
Yuki Yoshino 2019년 11월 7일
菱田様、michio様
理解いたしました。ありがとうございました。

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 時系列、シーケンス、およびテキストを使用した深層学習에 대해 자세히 알아보기

제품


릴리스

R2019b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!