tf.nn.conv2d

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

计算给定的4-D input和filter张量的2-D卷积。
给定形状为[batch, in_height, in_width, in_channels]的输入张量和形状为[filter_height, filter_width, in_channels, out_channels]的滤波器/内核张量,此操作执行以下操作:

  1. 将滤波器展平为具有形状[filter_height * filter_width * in_channels, output_channels]的二维矩阵。
  2. 从输入张量中提取图像特征,以形成形状为[batch, out_height, out_width, filter_height * filter_width * in_channels]的虚拟张量。
  3. 对于每个特征,右乘滤波器矩阵和图像特征矢量。
output[b, i, j, k] =
    sum_{di, dj, q} input[b, strides[1] * i + di, strides[2] * j + dj, q] *
                    filter[di, dj, q, k]

必须有strides[0] = strides[3] = 1。对于相同水平和顶点步幅的最常见情况,strides = [1, stride, stride, 1]。

参数:

input一个4-D张量,[batch, in_height, in_width, in_channels],必须是以下类型之一:float32, float64
filter一个4-D张量,[filter_height, filter_width, in_channels, out_channels],必须与input类型相同
strides整数列表,长度为4的1-D张量,input的每个维度的滑动窗口的步幅
padding字符串,可以是:“SAME”, “VALID”,要使用的填充算法的类型
use_cudnn_on_gpu,可选是否是gpu加速,布尔型,默认为True
name,可选操作的名称

返回:
一个张量,与input具有相同的类型。

例子
x为输入数据;W为滤波器/内核,卷积的参数共享就是共享的该参数;

>>>tf.nn.conv2d(x , W, strides = [1,1,1,1], padding= 'SAME')
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值