次の行のトレースバックは「構文エラー」です。どうして? 私はそれを修正するために何をするのですか?このステートメントの何が問題なのですか?
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')
私はラインも Aを得るために、セッション内で実行を意味する「完璧に」と言うとき層の数値。 2つの形式のステートメントの違いは何ですか?
ポイントがtf.conv2dの入力パラメータがtensorflow.Tensorでなければならないことではなく、numpy.ndarray –
上記の私の変更を参照してください。 np.array上でもうまくいきます。私が書いたように、私はそれをチェックした。 2つのステートメントの唯一の違いは、フィルターの定義に基づいています。最初の行では関数の外で定義され、他の2つの行では関数なしで定義されます。 –
tf.conv2dがperfectlを実行 –