学習の進行状況について

8 views (last 30 days)
NicknameAlpha
NicknameAlpha on 8 Apr 2018
Answered: michio on 8 Apr 2018
転移学習についてのwebページ https://jp.mathworks.com/help/nnet/examples/transfer-learning-using-alexnet.html を参考にして学習画像を変えたり, パラメータを少し変えたりして実行すると添付ファイルの学習の進行状況の画面のようになりました.
添付ファイルの学習の進行状況の画面で, Deep Learningにおける
  • ①の学習終了で"検証基準に適合の意味",
  • ②のエポックで最大エポック未満で学習が終了している理由,
  • ③の反復の意味,
  • ④のエポックごとの反復の意味,
  • ⑤の最大反復回数の意味,
  • ⑥の頻度で"56回の反復"の意味,
  • ⑦の許容回数の意味,
  • ⑧の学習スケジュールで"定数"の意味,
  • ⑨の精度と損失それぞれの検証でそれらの結果が求められるときの画像がどのようにして選ばれているかについての方法
についてどのようになっていそうですか?

Accepted Answer

michio
michio on 8 Apr 2018
それぞれ学習のオプション設定に関連するものですので、 trainingOptions ニューラル ネットワークの学習のオプション が参考になると思います。それぞれ下記で紹介する該当するオプションの項目を確認してみてください。
提示頂いた URL 先の例題ですと
options = trainingOptions('sgdm',...
'MiniBatchSize',miniBatchSize,...
'MaxEpochs',4,...
'InitialLearnRate',1e-4,...
'Verbose',false,...
'Plots','training-progress',...
'ValidationData',validationImages,...
'ValidationFrequency',numIterationsPerEpoch);
でオプション設定を行っています。
  • ①の学習終了で"検証基準に適合の意味"
'ValidationPatience' (デフォルトで 5) で指定される検証回数だけ、検証セットでの損失に改善がみられなかった場合に学習は終了します。この条件で学習が終了した場合に "検証基準に適合" と表示されます。
  • ②のエポックで最大エポック未満で学習が終了している理由
上の理由から、学習を指定されたエポック数行う前に終了しています。最大エポック数は 'MaxEpochs' で指定します。何も指定しない場合は 30 に設定されます。
  • ③の反復の意味
  • ④のエポックごとの反復の意味
反復とは、勾配降下法アルゴリズムでミニバッチを使用して損失関数の最小化を目指して実行される 1 ステップのことです。エポックとは、学習セット全体に対して学習アルゴリズムの実行することを表します。
MATLAB Answers の別エントリー [ミニバッチとエポックについて] も参考にしてください。
  • ⑤の最大反復回数の意味
1エポック中に何回反復が発生するかですので、学習に使用される画像数とミニバッチによって決定されます。ミニバッチは 'MiniBatchSize' で指定し、デフォルトで 128 に設定されています。
  • ⑥の頻度で"56回の反復"の意味
'ValidationData' で指定されたデータに対して、検証を行う頻度で 'ValidationFrequency' で指定します。デフォルトで 50 と設定されています。
  • ⑦の許容回数の意味
'ValidationPatience' で指定する値です。①に関連します。
  • ⑧の学習スケジュールで"定数"の意味
'LearnRateSchedule' — 学習中に学習率を下げるオプション の設定を表示しています。
  • ⑨の精度と損失それぞれの検証でそれらの結果が求められるときの画像がどのようにして選ばれているかについての方法
'ValidationData' で明示的に指定しているはずです。

More Answers (0)

Community Treasure Hunt

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

Start Hunting!