チェックポイントファイルでネットワークを復元する方法について2つの質問があります。 私はthis codeを使用してネットワークを復元しています。私は元のネットワークの一部だけを必要とします。実際には、私の元のネットワークは5つの畳み込み(非常に小さい)ネットで構成されており、これらはすべて最後に完全に接続された大きなレイヤーに接続されています。私は私の5つのミニ通話を持っているだけです。 私は、ネットワーク内のすべての単一変数とすべてのレイヤーの名前を定義します。 (私がログデータを使ってテンソルボードを実行すると、すべてが正常です。つまり、変数とテンソルの名前はすべて適切です)復元されたチェックポイントファイルからテンソル名を取得する:1つの変数名のみを返します
1-私の最初の問題は、これらの変数復元されたネットワークの名前で、私は "この名前のテンソルはありません"というエラーに直面しています。私はまたinspect_checkpoint.pyと私のチェックポイントファイルをテストし、出力にそれが1つの変数のみを返します。
Variable (DT_INT32) []
をし、他の方法で、私はこのコードで再びそれをテスト:
from tensorflow.python import pywrap_tensorflow
checkpoint_path = os.path.join('./', 'model.ckpt-100')
reader = pywrap_tensorflow.NewCheckpointReader(checkpoint_path)
var_to_shape_map = reader.get_variable_to_shape_map()
for key in var_to_shape_map:
print("tensor_name: ", key)
print(reader.get_tensor(key))
、それが返されます。
tensor_name: Variable
101
この問題の原因を見つけることができません。誰もがこの問題に直面したことはありますか?
2-ネットワークを復元するために使用した上記のサイトに基づいて、私はちょっと混乱しています。実際には、私はすべての5ミニコンバットを復元したい(これらのミニネットはすべて最後の層に完全に接続されています)。だから、すべてのミニコンネルを最後に完全に接続されたレイヤーからすべてのウェイトで復元する正しい方法は何か分かりません。
を使用する必要があなたのネットワークを復元するには、私は本当にあなたがhttps://keras.io/やってみることをお勧めします。それは、TensorFlowまたはTheanoのいずれかの上に位置する高レベルの機械学習ライブラリであり、ディープ・ラーニング・モードをもっと*迅速に構築します。 pip install keras – DrMcCleod