現在犬猫の画像分類を行なっているのですが一回一回コンパイルして數十分数時間待つのは効率が悪いですよね?
そのため画像分類の精度などを図る際に時間短縮するための効率化できると思うのですがモデルを保存するということは一つ効率化になりますか?
ここからは勝手に効率化されるとして書きますが
kerasmodelを保存するには?の項目でKerasのモデルを保存するのに,pickleやcPickleを使うことは推奨されませんと書いてあります。僕が読んだ教科書はpickleで行なっていたのですがkerasでは専用の関数が用意されているようです。
Kerasに関するよくある質問
公式サイトによると
model.save(filepath)を使うことで,単一のHDF5ファイルにKerasのモデルを保存できます.この
HDF5ファイルは以下を含みます.再構築可能なモデルの構造>
モデルの重み
学習時の設定 (loss,optimizer)
optimizerの状態.これにより,学習を終えた時点から正確に学習を再開できます
モデルのアーキテクチャ(weightパラメータや学習時の設定は含まない)のみを保存する場合は,以> 下のように行ってください:
save as JSON
json_string = model.to_json()
save as YAML
yaml_string = model.to_yaml()
生成されたJSON / YAMLファイルは,人が読むことができ,必要に応じて編集可能です.
モデルの重み を保存する必要がある場合,以下のコードのようにHDF5を利用できます.注: 予め,HDF5とPythonライブラリの h5pyがインストールされている必要があります(Kerasには>
同梱されていません).model.save_weights('my_model_weights.h5')
となっていますが使い分けがよくわかりません。
ここで質問があります。まずはモデルを保存する意味、利点とそれぞれの利点、使い分け方法を教えてください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/07/10 11:18
2017/07/10 11:38
2017/07/10 11:42
2017/07/10 12:33