1. 程式人生 > >TensorFlow 報錯:unhashable type: 'numpy.ndarray' error 的可能錯因

TensorFlow 報錯:unhashable type: 'numpy.ndarray' error 的可能錯因

一般來說是sess.run裡的feed_dict字典內部出現了問題。feed_dict的引數一般存放的是佔位符placeholder,通過feed_dict將具體資料“喂”進placeholder。unhashable type: 'numpy.ndarray' error報了這樣的錯,極有可能是因為feed_dict的內部的鍵(placeholder)與值不匹配。

通過上網查閱以及我個人出現的情況,目前發現兩個比較有可能導致的錯因會報這樣的錯:

  1. 比如placeholder為tf.float32,而feed進去的具體資料為np.int64,這樣就會需要將所對應的型別設為一致。
  2. 這也是博主個人所犯的錯誤,placeholder內部設定的size與“喂”進去的資料的size不匹配。同樣,需要將其設定為一致。

歡迎各位若遇到不同的情況報了相同的錯誤在下面評論補充,贈人玫瑰,手留餘香。