ニューラルネットワー​クの学習を途中保存す​る方法はありますか?

7 visualizaciones (últimos 30 días)
MathWorks Support Team
MathWorks Support Team el 18 de Abr. de 2018
Editada: MathWorks Support Team el 27 de Sept. de 2021
ニューラルネットワークやディープラーニングの学習の途中経過を保存して一度停止し途中から再開するにはどうすればよいでしょうか。 

Respuesta aceptada

MathWorks Support Team
MathWorks Support Team el 18 de Ag. de 2021
Editada: MathWorks Support Team el 27 de Sept. de 2021
ニューラルネットワークの関数には、計算途中で結果を保存しておける 'CheckpointFile' オプションがあります。このオプションについては、浅層のニューラルネットワーク、深層ネットワーク両方にあります。 
Shallow Network の場合、train 関数のオプションで以下のように保存場所と一緒に定義します。
net2 = train(net,x,t,'CheckpointFile','MyCheckpoint.mat');
また、保存の頻度は通常60秒に1回、それより短い場合は学習開始時と終了時に1 回ずつ保存されますが、保存の頻度を変更することも可能です。例えば以下の例では10秒ごとにチェックポイントを設けるために 'CheckpointDelay' オプションで10と指定しています。 
net2 = train(net,X,T,Xi,Ai,'CheckpointFile','MyCheckpoint.mat','CheckpointDelay',10);
Deep network の場合、trainingOptions 関数の 'CheckpointPath' オプションで保存場所を指定します。 
options = trainingOptions('sgdm','CheckpointPath','C:\Temp\cnncheckpoint');
オプションを指定後、trainNetwork を実行すると、学習結果がエポックごとに convnet_checkpoint__351__2016_11_09__12_04_23.mat のようなmatファイルとして保存されます。保存された mat ファイル名には、チェックポイント保存時の反復回数とタイムスタンプが含まれています。 
CNN (trainNetwork 関数) の場合には、デフォルトでは変数 net に保存されます。RCNN系 (trainRCNNObject / trainFastRCNNObject / trainFasterRCNNObject 関数) の場合には、変数 detector に学習途中のネットワークが保存されます。 
この mat ファイルを読み込んで学習を再開するには、通常の mat ファイル同様、load 関数を使用します。 
load convnet_checkpoint__351__2016_11_09__12_04_23.mat
以下のドキュメントも参考にしてください。 

Más respuestas (0)

Etiquetas

Aún no se han introducido etiquetas.

Community Treasure Hunt

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

Start Hunting!