2
我試圖將一維數組轉換爲TF矩陣,用於卷積網絡,類似於它在TF深層MNIST示例中的做法通過使用tf.reshape()
:嘗試將向量轉換爲矩陣後tf.reshape()出錯
X = tf.placeholder(tf.float32, [None, 480])
X = tf.reshape(X, shape=[-1, 60, 8, 1])
我收到以下錯誤:
ValueError: Cannot feed value of shape (5, 480) for Tensor 'Reshape_1:0', which has shape '(?, 60, 8, 1)'
5是我batch_size
和480是原始數組的長度。我想將它轉換爲60x8張量,加上1個輸出通道,所以我使用TF MNIST示例使用目標形狀[-1, 60, 8, 1]
。
- 任何想法,爲什麼我得到這個?看起來像在MNIST示例中,他們使用-1來將單行調整爲AxA矩陣併爲輸出通道添加一個額外維度?
- 我甚至可以使用這種非方矩陣,還是會給我一個錯誤的道路?我試着做類似400 = 20x20的東西,以及只是爲了查看錯誤是否是由不均勻的形狀造成的,但仍然出現錯誤...
謝謝,這是做到了。我保持這種方式,因爲TF的例子有這種方式,但現在你提到它,可能它在那裏工作,因爲X重塑是在一個函數中定義的,將預重塑的X作爲變量傳遞給它,所以也許這就是爲什麼TF允許它在那裏......謝謝! –
重要的是不要將python變量與tensorflow變量混淆。 python變量只是指向tensorflow的指針。 – Aaron