テンソルフローモデルを作成しました。 しかし、何らかの理由で常にNANの損失が発生します。 各テンソルの各値をデバッグして表示する方法を知りたいと思います。例えばのために入力サンプルあたりのTensorflowネットワーク重み/出力/コストをデバッグする方法はありますか?
: -
out = tf.add(tf.matmul(outputs[-1], _weights['out']), _biases['out'])
実行時に、私はこのテンソルの値を表示し、物事がうまくいかないところ見てみたいと思います。 私は彼らがこの
out = tf.add(tf.matmul(outputs[-1], _weights['out']), _biases['out'])
out = tf.Print(out, [out], message="This is softmax Output: ")
ような何かをしかし、これが与えると出て、私はカントのように本当に便利ではありません。この
I tensorflow/core/kernels/logging_ops.cc:79] This is softmax Output: [2.148583e-08 5.9002307e-08 -9.90654e-08...]
I tensorflow/core/kernels/logging_ops.cc:79] This is softmax Output: [nan nan nan...]
I tensorflow/core/kernels/logging_ops.cc:79] This is softmax Output: [nan nan nan...]
Iter 64, Minibatch Loss= nan, Training Accuracy= 0.01562
Testing Accuracy: 0.0
I tensorflow/core/kernels/logging_ops.cc:79] This is softmax Output: [nan nan nan...]
I tensorflow/core/kernels/logging_ops.cc:79] This is softmax Output: [nan nan nan...]
I tensorflow/core/kernels/logging_ops.cc:79] This is softmax Output: [nan nan nan...]
I tensorflow/core/kernels/logging_ops.cc:79] This is softmax Output: [nan nan nan...]
のように入れ、このpost
に似た何かを発見しましたすべての値を表示します。 ステップバイステップのデバッグオプションがあるかどうか知りたいですか?
あなたにも –
真の中間テンソルを印刷するために同様のレシピを使用することができますが、問題は、これは、それが印刷して全体を出力しないことですテンソルの最初の数値。クリッピングを適用するような数学的なテストをして、それを次のテンソルに渡したい場合、私はそれをすることができませんでした。しかし、ええ、最後の手段としてそれを使用します。 –
私たちが取り組んでいるのですが、このような段階的な計算は簡単に行えません。 1つの回避策は、すべてを変数として再定義し、 "tf.assign"を使用して値を設定することです。このようにして、セッションの実行間で状態を調べることができます –