tensorflow的卷积与池化

tf.nn.conv2d(input_tensor, conv1_weight, strides=[1,1,1,1], padding='SAME') 
tf.nn.max_pool(relu1, ksize=[1,2,2,1], strides=[1,2,2,1], padding='SAME')
tf.nn.dropout(fc1, 0.5)
tf.nn.relu(tf.nn.bias_add(conv1 , conv1_biases))

卷积函数的细微差异:

1.tf.nn.conv2d

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

这样写x,输入的图片全部信息,W即偏重
W=[h,w,channel,outchannel_size],输出空间的维度即W是filter为一个形状为[filter_height * filter_width * in_channels, output_channels]的二维矩阵

tf.nn.conv2d(x,W,strides=[1,1,1,1],padding='SAME')  

2.tf.layers.conv2d或者tf.contrib.layers.conv2d

tf.layers.conv2d(inputs, filters, kernel_size, strides=(1, 1), padding='valid', data_format='channels_last',dilation_rate=(1, 1), activation=None, use_bias=True,kernel_initializer=None,bias_initializer=None,kernel_regularizer=None,bias_regularizer=None,ctivity_regularizer=None,kernel_constraint=None, bias_constraint=None, trainable=True, name=None, reuse=None)

举例:

conv2 = tf.layers.conv2d(x, 32, 5, 1, 'same', activation=tf.nn.relu)    

下面只要讲解cnn卷积和池化的计算及参数(具体理论知识自己补充):

卷积:

strides:第1,第4参数都为1,中间两个参数为卷积步幅,如:[1,1,1,1],[1,2,2,1]
    1、使用VALID方式,feature map的尺寸为       (3,3,1,32)卷积权重
      out_height = ceil(float(in_height - filter_height + 1) / float(strides[1])) (28-3+1) / 1 = 26,(28-3+1) / 2 = 13
      out_width = ceil(float(in_width - filter_width + 1) / float(strides[2])) (28-3+1) / 1 = 26,(28-3+1) / 2 = 13
     2、使用使用SAME方式,feature map的尺寸为     (3,3,1,32)卷积权重
      out_height = ceil(float(in_height) / float(strides[1]))  28 / 1 = 28,28 / 2 = 14
      out_width = ceil(float(in_width) / float(strides[2]))   28 / 1 = 28,28 / 2 = 14
ceil:函数返回数字的上入整数

池化:

ksize:第1,第4参数都为1,中间两个参数为池化窗口的大小,如:[1,1,1,1],[1,2,2,1]
实验证明:对于实际的池化后的数据尺寸,ksize没有影响,只是计算的范围不同。            
strides:第1,第4参数都为1,中间两个参数为池化窗口的步幅,如:[1,1,1,1],[1,2,2,1]
实验证明:对于实际的池化后的数据尺寸,strides产生影响,具体的计算方式和卷积中的strides相同。'''

一般来说如果:

输入图片大小 W×W
Filter大小 F×F
步长 S
padding的像素数 P
可以得出:N = (W - F + 2P )/S+1
输出图片大小为 N×N

池化:


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容