TensorFlow TypeError: Fetch argument has invalid type(Can not convert a float32 into a Tensor or Op)

最近开始使用tensorflow写多层感知器,结果运行时,出现了上述错误,仔细查看了变量的类型,觉得没什么问题,于是google了一下,找到问题所在,见链接 TypeError: Fetch argument has invalid type float32, must be a string or Tensor

loss,  _ = sess.run([loss, train_op], feed_dict={x:train_data, y_:train_label})

错误出现在这行代码,原因是 sess.run()返回的参数,与fetch_list传入的参数名称一致,导致代码第二次运行的时候,将第一次运行得到的值,直接代入,与之前的定义运算冲突。

loss_train,  _ = sess.run([loss, train_op], feed_dict={x:train_data, y_:train_label})

修改之后,便可以顺利运行啦~~

猜你喜欢

转载自blog.csdn.net/boice_girl/article/details/82838949