gpt4 book ai didi

python - 无法删除 TypeError : unhashable type: 'numpy.ndarray'

转载 作者:太空宇宙 更新时间:2023-11-03 14:46:22 28 4
gpt4 key购买 nike

我刚刚开始学习 TensorFlow 编码,但我一直坚持使用非常基本的代码来创建神经网络。下面是代码:

import tensorflow as tf
import numpy as np
a = tf.placeholder(shape=(1,1),dtype=tf.float16)
b = tf.placeholder(shape=(1,1),dtype=tf.float16)
y= tf.placeholder(shape=(1,1),dtype=tf.float16)
addition = tf.add(a, b)
correct_prediction = tf.equal(addition,y,name=None)
init = tf.global_variables_initializer()
with tf.Session() as sess:
sess.run(init)
a1=[[0.2]]
b1=[[0.3]]
y1=[[0.5]]
a = sess.run(addition, feed_dict={a: a1, b: b1})
b = sess.run(correct_prediction, feed_dict={a: a1, b: b1, y: y1})
sess.close()

它给我以下错误

*Traceback (most recent call last):
File "D:/NN/pyNN/new_main.py", line 35, in <module>
b = sess.run(correct_prediction, feed_dict={a: a1, b: b1, y: y1})
TypeError: unhashable type: 'numpy.ndarray'*

我尝试了多种方法来提供输入和输出,但最终还是遇到了同样的错误。任何帮助将不胜感激

最佳答案

您正在将 session.run() 的结果分配给 a。这意味着 a 是在第一次 run 之后的一个 numpy 数组,将原始定义覆盖为占位符。然后您在第二次run 中将此数组用作字典中的键,这显然不起作用。

重命名 session 上下文中的 ab 变量应该可以修复它,例如

a_array = sess.run(addition, feed_dict={a: a1, b: b1})
b_array = sess.run(correct_prediction, feed_dict={a: a1, b: b1, y: y1})

关于python - 无法删除 TypeError : unhashable type: 'numpy.ndarray' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48972752/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com