[英]TensorFlow MLP unhashable type 'list'
我正在嘗試為MLP提供數組。 輸入數組包含120個浮點數,輸出包含2個。
sess.run(init)
# Training cycle
train = True
if train is True:
for i in range(50):
for letter in d1:
#print(letter[0][0][0:5])
letter[0][0][0:5] = sorted(letter[0][0][0:5], key=itemgetter(0))
letter[0][0][5:10] = sorted(letter[0][0][5:10], key=itemgetter(0))
#print(np.squeeze(np.asarray(d1[0])))
result=[]
for x in letter[0][0]:
for y in x:
result.append(y)
div = (result)
xxx = [letter[0][1][0], int(not letter[0][1][0])]
xxx = (xxx)
print(result)
#print(letter[1])
_, c = sess.run([optimizer, cost], feed_dict={x: div, y: xxx})
當執行最后一行時,它將引發異常:
Traceback (most recent call last):
File "tf.py", line 97, in <module>
_, c = sess.run([optimizer, cost], feed_dict={x: div, y: xxx})
TypeError: unhashable type: 'list'
我想您在代碼的開頭有兩個占位符x
和y
:
x = tf.placeholder(tf.float32)
y = tf.placeholder(tf.float32)
問題是在代碼中,您再次對兩個變量使用了相同的名稱x
和y
:
for x in letter[0][0]:
for y in x:
result.append(y)
這將刪除x
和y
的先前值。
相反,您應該使用其他名稱,例如:
for ix in letter[0][0]:
for iy in ix:
result.append(iy)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.