您好我正在尝试使用自己的图像数据运行TensorFlow。 但是当我试图运行这些函数时它会崩溃:它来自mnist.py
def loss_fn(logits, labels):
batch_size = tf.size(labels)
labels = tf.expand_dims(labels, 1)
indices = tf.expand_dims(tf.range(0, batch_size, 1), 1)
concated = tf.concat(1, [indices, labels])
onehot_labels = tf.sparse_to_dense(
concated, tf.pack([batch_size, NUM_CLASSES]), 1.0, 0.0)
cross_entropy = tf.nn.softmax_cross_entropy_with_logits(logits,
onehot_labels,name='xentropy')
loss = tf.reduce_mean(cross_entropy, name='xentropy_mean')
return loss
出现此错误:
Compute status: Invalid argument: Indices are not valid (out of bounds). Shape: dim { size: 100 } dim { size: 447 }
数字100是我的batch_size,447是我的课程数量。
我也试着解决这个问题 https://github.com/tensorflow/tensorflow/issues/194 将indeces行更改为此行:
indices = tf.expand_dims(tf.range(0, batch_size, 1), 1)
没有解决我的问题。 有人有想法吗?
答案 0 :(得分:1)
我也有这个错误。我意识到自己的错误。如果您有10个班级,则您的标签值应介于0-9之间(包括0和9)。该错误在TensorFlow CIFAR10示例中重现,与SVHN数据集一起使用。请参阅下面的问答。