1.简介
tf.nn.conv2d函数是用于计算2-D卷积的函数,本文章对于该函数的解读基于r1.15版本。(本文是针对英文API纯手工翻译,并加上自己的部分理解)
官网API地址传送门:https://tensorflow.google.cn/versions/r1.15/api_docs/python/tf
强烈推荐大家去阅读官网的英文API,原汁原味。
2.函数具体说明
tf.nn.conv2d(
input,
filter=None,
strides=None,
padding=None,
use_cudnn_on_gpu=True,
data_format='NHWC',
dilations=[1, 1, 1, 1],
name=None,
filters=None
)
参数说明:
input
:一个Tensor。数据类型仅支持:half
,bfloat16
,float32
,float64
。是一个4-D的Tensor。这4个维度的具体顺序见下面的data_format
参数描述
filter
:一个Tensor。数据类型仅支持:half
,bfloat16
,float32
,float64
。是一个4-D的Tensor[filter_height, filter_width, in_channels, out_channels]
分别对应卷积核的长、卷积核的宽、输入到卷积核的channel,卷积核输出的channel
strides
:一个int或者一个具有长度1、2或者4的int类型的list。是对于input
每一维度的步长
padding
:填入值为'SAME'
或者'VALID'
,代表使用的填充算法。或者填入值为一个list,表示每一个维度的开端和结尾的填充
use_cudnn_on_gpu
:可选。bool
类型。默认为True
data_format
:可选。string
类型。NHWC
或者NCHW
,默认为NHWC
。该参数用来指定输入数据和输出数据的数据格式。在NHWC
数据格式下,数据按照以下顺序排列:[batch, height, width, channels]
,在NCHW
数据格式下,数据按照以下顺序排列:[batch, channels, height, width]
dilations
:一个int或者一个具有长度1、2或者4的int类型的list,默认值为1
name
:可选,操作的名称
filters
:filter的别名
3.返回值说明
返回一个和input
具有相同类型的Tensor