【发布时间】:2018-11-22 04:17:21
【问题描述】:
在编码卷积神经网络时,我不确定从哪里开始卷积层。当使用不同的卷积滤波器产生不同的特征图时,这是否意味着滤波器具有不同的尺寸(例如,3x3、2x2 等)?
【问题讨论】:
标签: neural-network conv-neural-network
在编码卷积神经网络时,我不确定从哪里开始卷积层。当使用不同的卷积滤波器产生不同的特征图时,这是否意味着滤波器具有不同的尺寸(例如,3x3、2x2 等)?
【问题讨论】:
标签: neural-network conv-neural-network
在大多数可以很好地说明如何编写卷积神经网络的示例中,您会发现从 1 个卷积层开始,然后通过层大小、3x3 窗口、输入数据特征。
model.add(Conv2D(layer_size, (3,3), input_shape = x.shape[1:]))
过滤器大小通常仅在最大池化层中有所不同,例如 2x2。
model.add(MaxPooling2D(pool_size=(2,2)))
图层大小通常从layer_size = [32, 64,128] 范围内选择,您可以这样做以尝试不同的convolution_layers = [1,2,3]
【讨论】:
我从未见过同一层中过滤器的不同内核大小,尽管可以这样做,但这不是我使用的框架的默认选项。使过滤器产生不同特征图的是权重。
在不同的层使用不同的内核大小,因为卷积网络的想法是通过下采样层(例如最大池化)逐渐降低维度,因此在深层你有更小的特征图和更小的过滤器保持卷积和不太完全连接(具有与图像相同大小的内核相当于具有密集层)。
如果您从卷积开始,我建议您使用this CNN 的交互式可视化,它帮助我了解了很多概念。
【讨论】: