Tensorflow tf.nn.conv2d澄清

问题描述:

在阅读Tensorflow教程和API文档时,我不明白他们如何定义卷积输入和过滤器参数的形状。方法是:tf.nn.conv2d(input, filter, strides, padding, use_cudnn_on_gpu=None, data_format=None, name=None),其中输入形状为:[batch, in_height, in_width, in_channels],过滤器形状为:[filter_height, filter_width, in_channels, out_channels]。如果任何人都可以阐明如何正确定义“in_channel”和“out_channel”大小,那将会非常有帮助。Tensorflow tf.nn.conv2d澄清

in_channels指向构成层的输入的深度。例如,如果您使用原始RGB图像输入图层,则深度将为3,对应于红色,绿色和蓝色通道。这意味着内核实际上是3D而不是2D。 out_channels指的是输出的深度。从here下面的图片示出了具有3个输入深度和输出深度的5个例子:

enter image description here

properly define东西基于实验完成。这是一个网络设计问题。您可以阅读一些着名的体系结构,如AlexNetVGG-16,以了解网络体系结构在实践中的设计方式。

+0

感谢您的信息! – ColeS

+0

@ColeS,没问题。要感谢*中的某个人,您可以将问题标记为已接受(如果您是问题的作者),或者您可以赞成回答(如果您喜欢回答答案) – Ali