cnn算法介绍,cnn定义

  cnn算法介绍,cnn定义

  平时不关心的细节我也不知道,所以每一个参数我都在认真对待。

  首先,tensorflow包含哪些卷积运算?

  3359张量flow.Google.cn/API _ docs/python/TF/nn/conv 2d

  TF.nn.conv2d(input,filter,steps,padding,use_cudnn_on_gpu=True,data_format=NHWC ,dilution g其实就是固定你输入的格式。当NHWC对应于您的输入数据的尺寸[批量大小,高度,宽度,通道],[

  其实大踏步中的参数和这个data_format是一一对应的。你什么意思?也就是说,当采用NHWC模式和大步数=[a,b,c,d]时,卷积核偏移过程会发生什么变化?在该批次的维度上,根据步长=a的大小进行移动计算.同样,在每个HWC维度上移动的步长是B C D,这里a和d的值都是1,因为batch和channel必须分开计算。c的值可以根据情况变化,它们的值直接关系到输出特征图的维数。

  我们来看看两个参数的计算方法,padding=same和valid。

  参考文献:3359 www . Jian 1621 c7e

  假设输入图像尺寸为w * h。

  内核大小为k _ h * k _ w。

  将h方向的步幅设置为h,将W方向的步幅设置为W.

  请求新输出特性图的大小、n_h和n_w。

  在有效模式下,他只修改原始绘图。

  所以n_h=(h-k_h )/h向上取整,加1;

  N_w=(w-k_w )/h向上取整加1;

  同样的模式,他在填充的时候会自动加0。

  那么什么时候有必要呢?首先根据公式n_h=H/h和n_w=W/w进行舍入得到最终输出n_h和n_w,根据需要将输出n_h和n_w按回原位,需要补0。

  Pad_need_H=(n_h -1) * h K_h-H在H方向

  要添加到矩阵中每行上方的像素数如下:

  Pad_need_H/2整形

  要添加到矩阵每一行下面的像素数是

  pad_need_H -pad_need_H/2

  也是在w方向

  源代码如下所示。

  例如,输入特征映射为4*4,内核大小为1*1,步长为1,1,1。

  补充图纸如下

  这里画的对角线用零填充。

  输入特征图是2 * 5,内核大小是2*2,步幅是[1,2,1,1]

  所需的图表如下

  最后一列是必须填充的0值,最终输出的特征图是1*5。

  欢迎补充。

cnn算法介绍,cnn定义