文書には、チェックポイントパスのリストを渡す必要がありますが、リストを取得する方法は?ハードコーディング?いいえ、それはばかげた練習です。プロトコルバッファファイル(モデルディレクトリのcheckpoint
という名前のファイル)を解析すると、しかし、テンソルフローはパーサを実装していないのですか?私は自分で実装する必要がありますか? チェックポイントパスのリストを取得するのは良い方法ですか?tf.train.Saver()のメソッドrecover_last_checkpointsの使用方法?
最近では1つのことで困っていますので、この質問を提起します。ご存知のように、何日かの長いトレーニングが何らかの理由でクラッシュする可能性があり、最新のチェックポイントから回復する必要があります。
restorer = tf.train.Saver()
restorer.restore(sess, latest_checkpoint)
私はハードコードlatest_checkpoint
、またはやや賢く、tf.train.latest_checkpoint()
を使用することができます。私は、次のコードを記述する必要があるので、トレーニングを回復することは、簡単です。
しかし、私はトレーニングを修復した後に問題が発生します。クラッシュ前に作成された古いチェックポイントファイルはそこに残されます。 Saverは、1回の実行で作成されたチェックポイントファイルのみを管理します。以前に作成したチェックポイントファイルを管理して、自動的に削除されるようにして、毎回手動で削除する必要はありません。私はそのような繰り返しの仕事は本当にばかだと思う。
次に、tf.train.Saver()
のrecover_last_checkpoints
メソッドが見つかりました。これにより、Saverは古いチェックポイントを管理できます。しかし、使用するのは便利ではありません。だから良い解決策はありますか?
どのように? – isarandi
ああ、あなたは私の問題の人を解決する!それをどうやって見つけましたか?公式のAPIリファレンスは 'CheckpointState'クラスをまったく導入していません! :\ – Jim07
ソースコードを掘り下げて見つけました。彼らは 'tf.train.latest_checkpoint()'でそれを使用しています。 – isarandi