このエラーの意味がわかりません。このエラーは、acc
を計算しようとすると発生します。
acc = accuracy.eval(feed_dict = {x: batch_images, y: batch_labels, keep_prob: 1.0})
解決策を探してみましたが、オンラインで見つかりませんでした。エラーの原因について何か考えはありますか?
これが 私の完全なコードへのリンク です。
同様のエラーが発生しましたが、問題は1次元ベクトルでargmaxを使用しようとしたことでした。だから私のラベルの形は(50、)で、評価するときにそれに対してtf.argmax(y、1)をしようとしていました。ソリューションリファレンスは Tensorflow:精度に問題があります
次のようなコードの場合
tf.equal(tf.argmax(y, 1), tf.argmax(labels, 1))
精度を計算するときによく使用されますが、次のように変更できます。
tf.equal(tf.argmax(y, -1), tf.argmax(labels, -1))
ソースコードによると:
// tensorflow/compiler/tf2xla/kernels/index_ops_cpu.cc:58
OP_REQUIRES(ctx, axis >= 0 && axis < input_dims,
errors::InvalidArgument("Expected dimension in the range [",
-input_dims, ", ", input_dims,
"), but got ", dim));