3

我卷積神經網絡和Tensorflow是新的,我需要實施進一步的參數CONV層實現CNN:與tensorflow

轉化率。 layer1:filter = 11,channel = 64,stride = 4,Relu。

的API如下:

tf.nn.conv2d(input, filter, strides, padding, use_cudnn_on_gpu=None, data_format=None, name=None) 

我明白了,什麼是步幅,它應該是[1,4,4,1]在我的情況。但我不明白,我應該如何傳遞過濾器參數和填充。 有人可以幫忙嗎?

回答

3

首先,你需要創建一個過濾器變量:

W = tf.Variable(tf.truncated_normal(shape = [11, 11, 3, 64], stddev = 0.1), tf.float32) 

形狀參數的前兩個字段代表濾波器的尺寸,第三對(我猜你的圖片有3個通道)輸入通道的數量和第四個是輸出通道的數量。

現在卷積層的輸出可以被計算如下:

conv1 = tf.nn.conv2d(input, W, strides = [1, 4, 4, 1], padding = 'SAME'),其中padding = 'SAME'代表零填充,因此,圖像的尺寸保持相同,輸入應具有尺寸[批次,尺寸1,size2個,3] 。

RELU應用程序是非常簡單的:

conv1 = tf.nn.relu(conv1)