卷积神经网络模型发展及应用
转载地址:
http://fcst.ceaj.org/CN/abstract/abstract2521.shtml
深度学习是机器学习和人工智能研究的最新趋势,作为一个十余年来快速发展的崭新领域,越来越受到研究者的关注。卷积神经网络(CNN)模型是深度学习模型中最重要的一种经典结构,其性能在近年来深度学习任务上逐步提高。由于可以自动学习样本数据的特征表示,卷积神经网络已经广泛应用于图像分类、目标检测、语义分割以及自然语言处理等领域。首先分析了典型卷积神经网络模型为提高其性能增加网络深度以及宽度的模型结构,分析了采用注意力机制进一步提升模型性能的网络结构,然后归纳分析了目前的特殊模型结构,最后总结并讨论了卷积神经网络在相关领域的应用,并对未来的研究方向进行展望。
卷积神经网络(convolutional neural network,CNN) 在计算机视觉[1- 5]、自然语言处理[6- 7]等领域已被广泛 应用。在卷积神经网络兴起之前,主要依靠人工针对特定的问题设计算法,比如采用 Sobel、LoG(Laplacian of Gaussian)、Canny、Prewitt 等[8- 11]算子进行边 缘 检 测 ,采 用 Harris、DoG(difference of Gaussian)、FAST(features from accelerated segment test)、SIFT (scale invariant feature transform)等[12-15]用于角点等特 征检测,并且采用传统分类器如 K近域、支持向量机、 稀疏分类器等[16- 18]进行分类。特征提取和分类器的 设计是图片分类等任务的关键,对分类结果的好坏 有着最为直接的影响。卷积神经网络可以自动地从 训练样本中学习特征并且分类,解决了人工特征设计 的局限性。神经网络的思想起源于1943年McCulloch 和 Pitts 提出的神经元模型[19],简称 MCP 神经元模 型。它是利用计算机来模拟人的神经元反应的过 程,具有开创性意义。此模型将神经元反应简化为 三个过程:输入信号线性加权、求和、非线性激活。1958 年到 1969 年为神经网络模型发展的第一阶段, 称为第一代神经网络模型。在 1958 年 Rosenblatt 第 一次在 MCP 模型上增加学习功能并应用于机器学 习,发明了感知器算法[20],该算法使用 MCP 模型能够 采用梯度下降法从训练样本中自动学习并更新权 值,并能对输入的多维数据进行二分类,其理论与实 践的效果引起了神经网络研究的第一次浪潮。1969 年美国数学家及人工智能先驱 Minsky在其著作中证 明感知器本质上是一种线性模型[21],只能处理线性分 类问题,最简单的异或问题都无法正确分类,因此神 经网络的研究也陷入了近二十年的停滞。1986 年到 1988 年是神经网络模型发展的第二阶段,称为第二 代神经网络模型。1986 年 Rumelhart 等人提出了误 差反向传播算法(back propagation algorithm,BP)[22]。
BP 算法采用 Sigmoid 进行非线性映射,有效解决了 非线性分类和学习的问题,掀起了神经网络第二次 研究高潮。BP 网络是迄今为止最常用的神经网络, 目前大多神经网络模型都是采用 BP网络或者其变化 形式。早期神经网络缺少严格数学理论的支撑,并 且在此后的近十年时间,由于其容易过拟合以及训 练速度慢,并且在 1991 年反向传播算法被指出在后 向传播的过程中存在梯度消失的问题[23],神经网络再 次慢慢淡出人们的视线。
1998 年 LeCun 发明了 LeNet-5,并在 Mnist 数据 集达到 98%以上的识别准确率,形成影响深远的卷积 神经网络结构,但此时神经网络的发展正处于下坡 时期,没有引起足够的重视。从感知机提出到 2006 年以前,此阶段称为浅层 学习,2006 年至今是神经网络的第三阶段,称为深度 学习。深度学习分为快速发展期(2006—2012 年)和 爆发期(2012 年至今),2006 年 Hinton 提出无监督的 “逐层初始化”策略以降低训练难度,并提出具有多 隐层的深度信念网络(deep belief network,DBN)[24], 从此拉开了深度学习大幕。
随着深度学习理论的研究和发展,研究人员提 出了一系列卷积神经网络模型。为了比较不同模型 的质量,收集并整理了文献中模型在分类任务上的 识别率,如图 1所示。由于部分模型并未在 ImageNet 数据集测试识别率,给出了其在 Cifar-100 或 Mnist数 据集上的识别率。其中,Top-1识别率指的是 CNN 模型预测出最大概率的分类为正确类别的概率。Top-5 识别率指的是 CNN 模型预测出最大概率的前 5 个分 类里有正确类别的概率。
2012 年,由 Alex Krizhevshy 提出的 AlexNet给卷 积神经网络迎来了历史性的突破。AlexNet 在百万 量级的 ImageNet数据集上对于图像分类的精度大幅 度超过传统方法,一举摘下了视觉领域竞赛 ILSVRC2012的桂冠。自 AlexNet之后,研究者从卷积神经网 络的结构出发进行创新,主要有简单的堆叠结构模 型,比如 ZFNet、VGGNet、MSRNet。堆叠结构模型通 过改进卷积神经的基本单元并将其堆叠以增加网络 的深度提升模型性能,但仅在深度这单一维度提升 模 型 性 能 具 有 瓶 颈 ;后 来 在 NIN(network in network)模型提出使用多个分支进行计算的网中网结 构模型,使宽度和深度都可增加,具有代表性的模型 有 Inception 系列模型等;随着模型深度以及宽度的 增加,网络模型出现参数量过多、过拟合以及难以训 练等诸多问题。ResNet 提出残差结构后,为更深层 网络构建提出解决方案,随即涌现出很多残差结构模 型,比如基于 ResNet 改进后的 ResNeXt、DenseNet、 PolyNet、WideResNet,并且 Inception也引入残差结构 形成了 Inception-ResNet-block,以及基于残差结构并 改进其特征通道数量增加方式的 DPResNet;与之前 在空间维度上提升模型性能的方法相比,注意力机 制模型通过通道注意力和空间注意力机制可以根据 特征通道重要程度进一步提升模型性能,典型的模 型为 SENet、SKNet 以及 CBAM(convolutional block attention module)。
传统的卷积神经网络模型性能十分优秀,已经 应用到各个领域,具有举足轻重的地位。由于卷积 神经网络的模型十分丰富,有些模型的结构或用途 比较特殊,在本文中统称为特殊模型,包括具有简单的结构和很少参数量的挤压网络模型 SqueezeNet,采 用无监督学习的生成对抗网络模型(generative adversarial network,GAN),其具有完全相同的两路网络 结构以及权值的孪生神经网络模型 SiameseNet,以 及通过线性运算生成其他冗余特征图的幽灵网络 GhostNet。由于卷积神经网络的一系列突破性研究成果, 并根据不同的任务需求不断改进,使其在目标检测、 语义分割、自然语言处理等不同的任务中均获得了 成功的应用。
基于以上认识,本文首先概括性地介绍了卷积 神经网络的发展历史,然后分析了典型的卷积神经 网络模型通过堆叠结构、网中网结构、残差结构以及 注意力机制提升模型性能的方法,并进一步介绍了 特殊的卷积神经网络模型及其结构,最后讨论了卷 积神经网络在目标检测、语义分割以及自然语言处 理领域的典型应用,并对当前深度卷积神经网络存 在的问题以及未来发展方向进行探讨。
转载文章,如有侵权,请联系我删除