私はcaffe-tensorflowを使用してCaffeで実装されたResnetモデルをテンソルフローに転送するtensorflow-deeplab-resnet modelを使用しています。Tensorflow:Caffeからインポートしたモデルから変数にアクセスするには?
Caffeからインポートされたモデルから個々の変数にアクセスする方法を知りたいので、何がうまくいかないかを確認できます。
Iは
[...]
res5c_branch2c/weights:0
bn5c_branch2c/scale:0
bn5c_branch2c/offset:0
bn5c_branch2c/mean:0
bn5c_branch2c/variance:0
fc1_voc12_c0/weights:0
fc1_voc12_c0/biases:0
fc1_voc12_c1/weights:0
fc1_voc12_c1/biases:0
fc1_voc12_c2/weights:0
fc1_voc12_c2/biases:0
fc1_voc12_c3/weights:0
fc1_voc12_c3/biases:
を出力
allTrainVars = tf.trainable_variables()
for f in allTrainVars:
print f.name
を試みfc1_voc12_c*
層をランダムに再初期化する必要が面白い層です。しかし、私はそれらにアクセスし、私はtensorboardでその変数を参照することはできません。この
var = [v for v in tf.trainable_variables() if v.name == "fc1_voc12_c0/weights:0"][0]
tf.summary.histogram("fc1_voc12_c0/weights_0", var)
のような変数へのロギングを追加しようとします。テンソルボードに表示されるのはグラフそのものだけです。
これらの変数をテンソルボードで監視するには、どうすればこれらの変数にアクセスできますか?
グラフを見るだけで、監視したい変数の正しい名前を推測できますか(写真参照)?
編集
私は、コードの作者が、今で固定されているバグがありましたので、少し私の質問の焦点を編集しました。
私は実際にそれを作成していませんでした。それは、caffeに組み込まれたdeeplab-resnetモデルから自動的に生成されました。それで私は個々の変数にアクセスしてランダム初期化を実行する方法を知らない – mcExchange