卷积神经网络广泛应用于图像分类、语义分割和图像生成等计算机视觉领域, 其通过卷积核对图像中的局部区域做卷积, 以提取图像中的特征, 在每一层的卷积中通过参数共享以减少模型复杂度, 之后结合池化操作实现位移不变性的识别. 现有的卷积神经网络普遍将3×3卷积作为其基本构建模块. 对于卷积神经网络而言, 卷积核的感受野、深度以及通道数决定了网络的性能. 感受野越大, 表示特征图上像素点映射的区域越大; 深度决定了网络的抽象能力或学习能力; 通道数决定了卷积核所包含的信息量大小. 感受野和通道数共同决定了卷积层学习有效信息与空间的能力.
2012年, 卷积神经网络在复杂模型下的有效性得到证明[1]; 2015年Inception Net v1[2]以及v2、v3、v4[3]证明了更多的卷积和更深的网络可以得到更好的分类效果; 2016年, ResNet解决了深度网络结构的训练问题[4]. 传统的卷积操作主要有3个缺点: (1)使用的是局部操作, 不能得到比较大的范围甚至图像的全局特征, 且卷积核是固定的尺寸; (2)对物体的形状、姿态变化缺少适应性; (3)当特征的通道数变大后, 卷积核的参数也变得庞大, 增加了运算量. 在传统的卷积神经网络中, 图像输入到卷积神经网络后, 先对图像做传统的卷积, 然后进行池化操作, 通过降低特征点的数量来扩大感受野[5]. 由于图像分割是像素级的预测, 对池化后较小尺寸的图像上采样到的原始图像尺寸进行预测, 这种先池化后上采样的操作使得特征图的尺寸依次进行了缩小和增大, 该过程带来了信息的损失.
2015年, 空洞卷积被提出, 它是在标准的卷积核上注入空洞, 以达到扩大感受野的目的. 相较于传统卷积, 空洞卷积不仅可以保留数据的内部结构, 也可以获得上下文信息, 而且不需要下采样、池化等操作来进行特征的提取. 在WaveNet[6], ByteNet[7]等网络中, 也用到了空洞卷积, 以提升网络性能. 空洞卷积起源于图像分割领域, 也广泛应用于在分类任务中[8]. 空洞卷积避免了池化所带来的信息丢失, 弥补了上述传统卷积的3个缺点[9], 但同时带来了空间层次和信息连续性丢失等问题.
不对称卷积通常用于模型的加速和压缩. 在现有研究中, 研究者将n×n的对称卷积分解为1×n和n×1卷积, 减少了模型的参数. 如果二维卷积核的秩为1, 其运算可以等价转换成一系列的一维卷积. 在实际情况中, 由于卷积核具有分布特征值, 因此卷积核的秩要高得多, 直接应用会导致信息大量损失. Denton等人用奇异值分解[10], 找到了一个低秩逼近, 对上层进行精细化来恢复卷积性能. Jaberberg等人通过最小化重构建误差, 成功学习了水平核和垂直核[11]. Jin等人应用结构约束使二维卷积可分离, 在精度不变同时使计算时间加速2倍[12]. 非对称卷积也广泛应用于网络结构的构成, 如Inception Net中, 1×7和7×1卷积代替了7×7卷积. ENet网络中也采用了不对称卷积设计网络, 虽然分类效果有所下降, 但是模型参数降低了33%, 降低了网络的复杂度[13].
针对空洞卷积所带来的问题, 本文提出了一种新的并行不对称空洞卷积模块, 用2×2的空洞卷积、1×3和3×1的不对称卷积进行并列相加, 代替原有的3×3卷积, 以增强原有的卷积核. 本文主要贡献如下:
(1)本文提出的并行不对称空洞卷积模块引入了空洞卷积, 在不增加参数的情况下, 可以扩大感受野, 捕获多尺度上下文信息.
(2)本文提出的并行不对称空洞卷积模块, 着重在特定维度寻找特征, 补全空洞卷积在空间层次上缺失的信息, 使整个网络具有更好的连续性.
(3)本文提出的并行不对称空洞卷积模块在CIFAR-10[3], 孟加拉文(
本文提出了一种并行不对称空洞卷积模块, 如图1所示. 通过不对称卷积结构的特殊性, 使得模块在不改变感受野的情况下充分利用特征图所含信息, 提高了网络模型的特征表达能力. 新模块可以用来代替传统的连续卷积, 在不增加模型复杂度的情况下, 提升整个模型的准确率.
本文所提出模块的网络结构如表1所示.
1.1 空洞卷积的感受野
本文将从卷积操作出发, 在普通卷积上注入空洞, 连续卷积核进行卷积操作如式(1)[9]:
$(x * F)(p) = \sum\nolimits_{s + t = p} {x(t)F(t)} $ | (1) |
其中,
$ {Y_{:,:,j}} = \sum\nolimits_k^c {{x_{:,:,k}}{F_{:,:,k}}^{(j)}} $ | (2) |
其中,
$ (x{ * _l}F)(p) = \sum\nolimits_{s + lt = p} {x(t)F(t)} $ | (3) |
空洞卷积支持指数扩展的感受野, 不会丢失分辨率或覆盖范围. 将偶数尺寸的卷积核[14]通过注入奇数个空洞, 其感受野范围等价于一个奇数尺寸的连续卷积, 其对应的输出映射通道等价于式(2), 因此空洞卷积能够代替连续卷积操作.
1.2 卷积并行性对于经过普通卷积后再池化的操作而言, 空洞卷积不仅能够达到与其一致的效果, 而且减少了因池化所丢失的信息. 与此同时, 空洞卷积也带来了一些弊端. 空洞卷积操作会使一些信息因特征空间上的连续而丢失, 如图像角落和边界的信息. 注入过多的空洞数量可能会导致预测结果出现棋盘效应. 如果可以补充所丢失的连续信息, 则空洞卷积可以比普通卷积提取到更有效的特征.
将几个大小兼容的二维卷积核在相同的输入数据上进行相同步幅的卷积操作, 可以得到相同分辨率的输出[15]. 通过将这些输出求和并在相应的位置上进行相加, 可以得到等效核的输出特征图. 即使卷积核大小不同, 二维卷积的可加性依旧成立. 因此可以引入两个不同类型的不对称卷积来补充所丢失的信息[15].
$I * {K^{(1)}} + I * {K^{(2)}} = I * ({K^{(1)}} \oplus {K^{(2)}}) = I * {K^{(3)}}$ | (4) |
其中,
如图2所示, 1*3卷积核、3*1卷积核和2*2空洞卷积核因为形状的兼容性, 可以被3*3的卷积核填充. 将1*3卷积核、3*1卷积核和2*2空洞卷积核所形成的特征图依次相加, 其得到的特征图和3*3卷积核所形成的特征图等价.
1.3 不对称卷积的补充作用对于对称卷积而言, 不对称卷积更加注重特定维度的特征, 其感受野与对称卷积的感受野不同. 例如1*3卷积核在卷积的过程中, 更加倾向于列间特征的提取.
$ {f_i} = \sum\nolimits_{k = 1}^K {\tau _k^i{{(h_k^i)}^T}} $ | (5) |
其中,
1.4 计算量
3*3卷积核的感受野为9, 计算量为
本文采用CIFAR-10与孟加拉文数据集对所提出模块的性能进行验证. CIFAR-10数据集共有60000张彩色图像, 这些图像大小为32×32, 分为10个类, 每类6000张图. 孟加拉文数据集为Kaggle2020比赛提供的数据集, 包括10000张孟加拉文手写体图片.
将本文所提出的并行不对称空洞卷积模块嵌入到不同的基础网络, 如VGG19、ResNet-34、ResNet-50、SENet-34和SENet-50网络, 并与原基础网络进行对比. 本文使用十折交叉验证方法, 损失函数为交叉熵损失函数, 学习率初始化为0.001, batchsize为128, epoch为100, 均在TITAN V上进行试验.
2.2 实验结果分析(1)与基础网络进行比较
我们采用CIFAR-10与孟加拉文数据集, 比较了VGG19、ResNet-34、ResNet-50、SENet-34、SENet-50五种经典的基础网络及其嵌入了本文所提出的并行不对称空洞卷积模块后网络的分类效果. 在嵌入模块的网络中, 均将模块嵌入到网络输出层位置, 将连续卷积核和不对称空洞卷积模块的感受野面积都固定为9. 卷积核大小为2*2, 空洞率为1的空洞卷积在不对称卷积的信息补充下, 其准确率与原基础网络相比有所提高. 实验结果如表2、表3及图3、图4所示. 通过对比可见, 嵌入模块后网络的准确率均有比较明显的提升. 实验结果表明, 通过空洞卷积和不对称卷积对特征图的信息补偿, 使得网络中所嵌入的并行不对称空洞卷积模块可以更好地提取特征, 提高了模型的特征表达能力, 提升了网络的分类效果.
(2)与ACNet卷积比较
在该部分中, 我们将并行不对称空洞卷积模块中的2*2空洞卷积替换成3*3的普通连续卷积后, 则模块变成ACNet的不对称卷积模块ACB[15]. 我们将并行不对称空洞卷积模块与替换成普通连续卷积的ACB模块分别嵌入到VGG19、ResNet-34、SENet-34网络的输出层位置, 保持相同的网络结构, 对CIFAR-10数据集上的分类效果进行比较, 实验结果如表4及图5所示. 实验结果表明, 嵌入并行不对称空洞卷积模块的网络比嵌入ACB模块的网络准确率更高, 模型复杂度也更低. 这是因为不对称卷积结构的特殊性, 使其与空洞卷积的结构相匹配, 与连续卷积搭配相比, 准确率要高; 由于空洞卷积比连续卷积的参数要少, 使得模型的复杂度也降低了很多. 只有与空洞卷积相结合, 不对称卷积的特征补偿能力才能更好地体现.
2.3 损失特性分析
该部分将并行不对称空洞卷积模块分别嵌入到ResNet-34网络中的不同层并进行比较, 其中损失函数的振荡变化及收敛情况如图6所示.
当模块嵌入到ResNet-34模型输出层位置时, 损失函数的收敛趋势如图6(a)所示. 当模块嵌入到ResNet-34模型网络输入层位置时, 损失函数的收敛趋势如图6(b)所示. 两者的迭代次数和运行环境均一致. 可见, 模块嵌入到模型的网络输出层位置时, 其损失函数的振荡比模块嵌入到网络输入层时的振荡要小. 这是因为该模块中含有不对称卷积, 当放在与输入层比较近的位置时, 会导致网络的信息损失变大, 收敛速度变慢. 而将模块嵌入到网络输出层, 则会加速收敛的过程, 提升网络的性能.
3 结论本文提出了一种并行不对称空洞卷积模块, 用不对称卷积补充空洞卷积, 通过不对称卷积结构的特殊性, 在不同维度上收集特征, 使得模块在不改变感受野的情况下充分利用特征图的信息, 提高了网络模型的特征表达能力. 同时, 该模块通过引入空洞卷积, 使得模型在与普通卷积复杂度相近的情况下, 达到使用同样感受野尺寸的普通卷积的分类效果. 不对称卷积补充了空洞卷积所丢失的信息, 补充了不同维度的信息, 而且加速了整个网络的收敛过程, 提高了网络的效率. 本文将该模块嵌入到五种基本网络, 并对CIFAR-10与孟加拉文数据集进行了分类比较, 结果准确率均有较大的提高. 该模块可嵌入其它任何网络模型中, 帮助提高网络模型的分类效果, 也可迁移到其它图像的分类任务当中.
[1] |
Krizhevsky A, Sutskever I, Hinton GE. ImageNet classification with deep convolutional neural networks. Communications of the ACM, 2017, 60(6): 84-90. DOI:10.1145/3065386 |
[2] |
Szegedy C, Liu W, Jia YQ, et al. Going deeper with convolutions. Proceedings of 2015 IEEE Conference on Computer Vision and Pattern Recognition. Boston, MA, USA. 2015. 1–9.
|
[3] |
Szegedy C, Ioffe S, Vanhoucke V, et al. Inception-v4, inception-ResNet and the impact of residual connections on learning. Proceedings of the 31st AAAI Conference on Artificial Intelligence. San Francisco, CA, USA. 2016. 4278–4284.
|
[4] |
He KM, Zhang XY, Ren SQ, et al. Deep residual learning for image recognition. Proceedings of 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, NV, USA. 2016. 770–778.
|
[5] |
Lee CY, Gallagher PW, Tu ZW. Generalizing pooling functions in convolutional neural networks: Mixed, gated, and tree. Proceedings of the 19th International Conference on Artificial Intelligence and Statistics. Cadiz, Spain. 2016. 464–472.
|
[6] |
van den Oord A, Dieleman S, Zen HG, et al. WaveNet: A generative model for raw audio. Proceedings of the 9th ISCA Speech Synthesis Workshop. Sunnyvale, CA, USA. 2016. 125.
|
[7] |
Kalchbrenner N, Espeholt L, Simonyan K, et al. Neural machine translation in linear time. arXiv: 1610.10099, 2016.
|
[8] |
Strubell E, Verga P, Belanger D, et al. Fast and accurate entity recognition with iterated dilated convolutions. Proceedings of 2017 Conference on Empirical Methods in Natural Language Processing. Copenhagen, Denmark. 2017. 2670–2680.
|
[9] |
Yu F, Koltun V. Multi-scale context aggregation by dilated convolutions. Proceedings of the 4th International Conference on Learning Representations. San Juan, Puerto Rico. 2015.
|
[10] |
Denton E L, Zaremba W, Bruna J, et al. Exploiting linear structure within convolutional networks for efficient evaluation. Proceedings of the 27th International Conference on Neural Information Processing Systems. Montreal, QC, Canada. 2014. 1269–1277.
|
[11] |
Jaderberg M, Vedaldi A, Zisserman A. Speeding up convolutional neural networks with low rank expansions. Proceedings of 2014 British Machine Vision Conference. Nottingham, UK. 2014.
|
[12] |
Jin J, Dundar A, Culurciello E. Flattened convolutional neural networks for feedforward acceleration. Proceedings of the 3rd International Conference on Learning Representations. San Diego, CA, USA. 2014.
|
[13] |
Paszke A, Chaurasia A, Kim S, et al. ENet: A deep neural network architecture for real-time semantic segmentation. arXiv: 1606.02147, 2016.
|
[14] |
Wu S, Wang GR, Tang P, et al. Convolution with even-sized kernels and symmetric padding. Advances in Neural Information Processing Systems 32. Vancouver, BC, Canada. 2019. 1194–1205.
|
[15] |
Ding XH, Guo YC, Ding GG, et al. ACNet: Strengthening the kernel skeletons for powerful CNN via asymmetric convolution blocks. Proceedings of 2019 IEEE/CVF International Conference on Computer Vision. Seoul, Republic of Korea. 2019. 1911–1920.
|