ale*_*lex 4 python convolution neural-network conv-neural-network tensorflow
我是卷积神经网络和 Tensorflow 的新手,我需要使用更多参数实现一个卷积层:
转化次数 第1层:过滤器=11,通道=64,步幅=4,Relu。
API如下:
tf.nn.conv2d(input, filter, strides, padding, use_cudnn_on_gpu=None, data_format=None, name=None)
Run Code Online (Sandbox Code Playgroud)
我明白什么是步幅,在我的例子中它应该是 [1, 4, 4, 1] 。但我不明白,我应该如何传递过滤器参数和填充。有人可以帮忙吗?
首先,您需要创建一个过滤变量:
W = tf.Variable(tf.truncated_normal(shape = [11, 11, 3, 64], stddev = 0.1), tf.float32)
Run Code Online (Sandbox Code Playgroud)
形状参数的前两个字段代表滤波器大小,第三个字段代表输入通道数(我猜你的图像有 3 个通道),第四个字段代表输出通道数。
现在卷积层的输出可以计算如下:
conv1 = tf.nn.conv2d(input, W, strides = [1, 4, 4, 1], padding = 'SAME')
,其中padding = 'SAME'
代表零填充,因此图像的大小保持不变,输入的大小应为 [batch, size1, size2, 3]。
ReLU 应用非常简单:
conv1 = tf.nn.relu(conv1)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
702 次 |
最近记录: |