ミニバッチサイズとエポックごとの反復について
20 次查看(过去 30 天)
显示 更早的评论
エポック数とミニバッチサイズを指定し、学習(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になってしまいます。なぜこのような結果になるのでしょうか?
采纳的回答
Hiroyuki Hishida
2019-11-6
编辑:michio
2019-11-6
Yoshino様、
学習に使う画像と申しますかそのデータストアを、学習用と検証用に分けられていませんか?
なお、同種のQ&Aもありますので、あわせて確認してみてください。
よろしくお願いします。
菱田
3 个评论
Hiroyuki Hishida
2019-11-7
编辑:Hiroyuki Hishida
2019-11-7
Yoshino様、
回答ありがとうございます。でしたら、michio からのコメントも一読いただいた後、以下二点を確認してみてください。なお、説明用のスクリプト(sample.m)では以下のURLにある「深層学習における学習の進行状況の監視」を使用しております。
Iteration数の計算
下図のようにエポックごとの反復が4
実際にはIteration数の計算が走っておりますが、プロットするタイミング(回数)は、上記の計算で求めたIteration数を、ValidationFrequencyで設定している値で割り算したものになります。従いまして、このケースですと20÷5=4となっております。
サンプルスクリプトと、trainingoptionを変更して走らせた結果をいくつか添付しておりますので、動かして確認してみていただければ、理解が進むかと思います。
よろしくおねがいします。
菱田
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 時系列、シーケンス、およびテキストを使用した深層学習 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!