我是一個TensorFlow noob。我已經從開源的deeppose實現中訓練了一個TensorFlow模型,並且現在必須針對一組新的圖像運行該模型。Tensorflow Assign要求兩個張量的形狀相匹配。 lhs shape = [20] rhs shape = [48]
該模型在尺寸爲100 * 100
的圖像上進行了訓練,因此我將這組新圖像調整爲相同尺寸。我有149
新圖像來運行該模型。當我運行模型時,出現以下錯誤。
InvalidArgumentError (see above for traceback): Assign requires shapes
of both tensors to match. lhs shape= [20] rhs shape= [48]
在生產線
saver = tf.train.Saver(tf.all_variables())
我懷疑訓練模型大小和測試圖像大小不匹配。我不清楚如何解決這個問題。我打印出tf.all_variables()
調用的變量列表。這裏是
Tensor("Placeholder:0", shape=(128, 100, 100, 3), dtype=float32)
(11, 11, 3, 20)
conv1/weights:0
(20,)
conv1/biases:0
(5, 5, 20, 35)
conv2/weights:0
(35,)
conv2/biases:0
(3, 3, 35, 50)
conv4/weights:0
(50,)
conv4/biases:0
(3, 3, 50, 75)
conv5/weights:0
(75,)
conv5/biases:0
(300, 1024)
local1/weights:0
(1024,)
local1/biases:0
(1024, 1024)
local2/weights:0
(1024,)
local2/biases:0
(1024, 0)
softmax_linear/weights:0
(0,)
softmax_linear/biases:0
我不確定RHS參數來自哪裏。我已經看過所有的配置文件,並且似乎沒有指定此配置的任何參數。
任何幫助解決此問題將不勝感激。
嘗試'saver = tf.train.Saver(tf.all_variables(),reshape = True)' – yuefengz
你能展示更大的堆棧跟蹤嗎? – sygi
@Fake - 重塑不起作用,但我解決了這個問題。感謝隊友 –