2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Keras.model.fitの使い方例(コールバック、モデルの学習途中記録など)

Posted at

#Kerasのfitの使い方を備忘録を兼ねて記述しておきます。

erly_stpg = EarlyStopping(patience=10, verbose=1,monitor='val_loss' , mode = 'min') 
chkfile = '/root/・・・・・・/' + '{0:2d}'.format(Vernum)+'_{epoch:02d}-{val_loss:.4f}.hdf5' #format関数
chck_pont = ModelCheckpoint(filepath = chkfile, monitor='val_loss', verbose=1, save_best_only=True, mode='min')

history_callback = model.fit(x_train, y_train, batch_size=128, epochs=12, validation_split=0.1, shuffle = True , \
                             callbacks=[erly_stpg , chck_pont],validation_data=(x_val,y_val) , verbose = 0)

主なコードは上記のとおりです。
個別に説明します。

erly_stpg = EarlyStopping(patience=10, verbose=1,monitor='val_loss' , mode = 'min') #early Stoppingを設定する
chkfile = '/root/・・・・・・/' + '{0:2d}'.format(Vernum)+'_{epoch:02d}-{val_loss:.4f}.hdf5' #format関数
#チェックポイント(後述)をセーブするファイル。Vernumは事前に記録してある実験ナンバー
#epoch,val_lossはFormatを用いなくてもそのまま記述できるようだ
chck_pont = ModelCheckpoint(filepath = chkfile, monitor='val_loss', verbose=1, save_best_only=True, mode='min')

学習途中を記録する
filepath:記録するファイル名、固定すると上書きされてしまうため、今回変数を使用
monitor:記録要否を判定する変数
verbose:エコーの有無を指示
save_best_only:現時点で最もよかったら記録
mode:望小か望大を指示

history_callback = model.fit(x_train, y_train, batch_size=128, epochs=12, validation_split=0.1, shuffle = True , \
                             callbacks=[erly_stpg , chck_pont],validation_data=(x_val,y_val) , verbose = 0)

x_train...shuffleは省略
callbacks:学習途中のデータ(1epoch毎)を変数に返す
      []内に複数のオブジェクトを記載する
validation_data:別にバリデーションデータを用意する
      今回は、学習データにノイズをいれたので、ノイズを入れていないデータを用意した。
###参考URL
https://qiita.com/cvusk/items/7bcd3bc2e82bb45c9e9c
モデルを時系列で書き出す方法が記載されています。
https://qiita.com/officefutaro/items/94af6799dc2451fa82c2
損失関数をファイルにセーブする方法を書いてあります(by 風太郎)
https://keras.io/ja/callbacks/
Keras日本語ドキュメント Callbackの部分です
https://keras.io/ja/models/model/#fit
Keras日本語ドキュメント Modelクラスのfitメソッドの解説です

2
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?