卷积神经网络中用1*1 卷积

假设我有一个转换层输出(N,𝐹,𝐻,𝑊)形张量:
N批量大小
F是卷积滤波器的数量
𝐻,𝑊是空间尺寸
假设将此输出馈入v1的转换层1x1过滤器,零填充和跨度1。然后此1x1转换层的输出将具有形状(𝑁,𝐹1、H、𝑊)

因此1x1转换滤镜可用于更改滤镜空间中的尺寸。如果𝐹1>𝐹那么我们在增加维数,如果𝐹1<𝐹
我们正在降低维度,即过滤器维度。

确实,在Google Inception的文章“用卷积更深入”中,他们指出(粗体是我的,不是原始作者的):

上述模块的一个大问题是,即使是适度的5x5卷积,在具有大量过滤器的卷积层之上也可能是非常昂贵的。

这导致了所提出的体系结构的第二个想法:明智地将尺寸缩小和投影应用于计算需求会增加太多的地方。这是基于嵌入的成功:即使是低维的嵌入也可能包含许多有关较大图像补丁的信息… 1x1卷积用于计算比昂贵的3x3和5x5卷积还要小的压缩。除了用作减少量之外,它们还包括使用整流线性激活,使其具有双重用途。
因此,在Inception体系结构中,我们使用1x1卷积滤波器来减少滤波器维数。如上文所述,这些1x1转换层通常可用于更改滤镜空间维数(增加或减小),在Inception体系结构中,我们看到了这些1x1滤镜对于降维效果如何,尤其是在滤镜维空间中,而不是空间维度空间。

特征地图过多的问题

卷积层中使用的输入深度或滤波器数量通常会随着网络深度的增加而增加,从而导致生成的特征图数量增加。这是一种常见的模型设计模式。

此外,某些网络体系结构(例如初始体系结构)也可以连接来自多个卷积层的输出特征图,这也可能会大大增加后续卷积层的输入深度。

卷积神经网络中的大量特征图可能会引起问题,因为必须向下执行整个输入深度的卷积运算。如果要执行的卷积运算相对较大(例如5×5或7×7像素),这将是一个特殊的问题,因为它可能导致更多的参数(权重),进而导致执行卷积运算的计算(较大时空复杂度)。

池层设计用于缩小特征图的比例,并系统地将网络中特征图的宽度和高度减半。但是,池化层不会更改模型中过滤器的数量,深度或通道的数量。

深度卷积神经网络需要相应的合并类型的图层,该图层可以降低采样率或减少特征图的深度或数量。

使用1×1滤镜下采样特征图

解决方案是使用1×1滤镜向下采样特征图的深度或数量。

1×1滤波器的输入中每个通道只有一个参数或权重,就像任何滤波器的应用一样,其结果也只有一个输出值。这种结构允许1×1过滤器像单个神经元一样起作用,并且输入来自输入中每个特征图的相同位置。然后,可以单步移动,从左到右,从上到下,系统地应用该单个神经元,而无需进行填充,从而得到宽度和高度与输入相同的特征图。

1×1滤波器非常简单,以至于输入中不包含任何相邻像素。它可能不被认为是卷积运算。相反,它是输入的线性加权或投影。此外,与其他卷积层一样,使用了非线性,从而允许投影对输入特征图执行非平凡的计算。

这个简单的1×1过滤器提供了一种有效汇总输入要素图的方法。依次使用多个1×1滤镜,可以调整要创建的输入要素图的摘要数量,从而有效地根据需要增加或减小要素图的深度。

因此,可以在卷积神经网络的任何点上使用带有1×1滤波器的卷积层来控制特征图的数量。这样,它通常被称为投影操作或投影层,或者甚至称为特征图或通道池层。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值