-1
以下行的回溯是「語法錯誤」。爲什麼? 我做什麼修復它?這個陳述有什麼問題?
w1=tf.Variable(tf.truncated_normal(shape=[3,3,1,20])
layer=tf.nn.conv2d(input=img,filter=w1,strides=[1,1,1,1],padding='SAME')
'img'是灰度圖像(np.array),1x32x32x1。
但是,下面的行工作得很好:
def new_w(shape):
return tf.Variable(tf.truncated_normal(shape,stddev=0.05))
然後:
w1=new_w(shape=[3,3,1,20])
layer=tf.nn.conv2d(input=img,filter=w1,strides=[1,1,1,1],padding='SAME')
當我說「非常好」我指的是線也是一個會話中運行,產生 一個該層的數值。這兩種表述之間有什麼區別?
請參閱我修改上面 –
的一點是,tf.conv2d的輸入參數應該是一個tensorflow.Tensor,而不是numpy.ndarray –
tf.conv2d運行perfectl嗯,在np.array上。正如我寫的,我檢查了它。這兩個陳述之間的唯一區別在於過濾器的定義。在第一行中,它是在一個函數之外定義的,而在另外兩行中則是在沒有函數的情況下定義的。 –