cross_entropy = tf.nn.sparse_softmax_cross_entropy_with_logits (y,tf.argmax (y_, 1))
这个语句造成:
Traceback (most recent call last):
File "C:/Users/pop/Desktop/python/TensorFlowLearn/6/mnist_train.py", line 70, in <module>main()
File "C:/Users/pop/Desktop/python/TensorFlowLearn/6/mnist_train.py", line 67, in main
train(mnist)
File "C:/Users/pop/Desktop/python/TensorFlowLearn/6/mnist_train.py", line 34, in train
cross_entropy = tf.nn.sparse_softmax_cross_entropy_with_logits (y,tf.argmax (y_, 1))
File "C:\Python\Python36\lib\site-packages\tensorflow\python\ops\nn_ops.py", line 1850, in sparse_softmax_cross_entropy_with_logits
labels, logits)
File "C:\Python\Python36\lib\site-packages\tensorflow\python\ops\nn_ops.py", line 1698, in _ensure_xent_args
"named arguments (labels=..., logits=..., ...)" % name)
ValueError: Only call `sparse_softmax_cross_entropy_with_logits` with named arguments (labels=..., logits=..., ...)
报错的意思是:
sparse_softmax_cross_entropy_with_logits这个函数的参数传输方法改变了。
改为:
cross_entropy = tf.nn.sparse_softmax_cross_entropy_with_logits (logits=y,labels=tf.argmax (y_, 1))这样传参数就OK了。