基于深度卷积神经网络的快速图像分类算法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
doi:10.3778/j.issn.1002-8331.1601-0435 文献标志码:A
中图分类号 TP183 TP389.1 TN911.73 络的训练,解决复杂目标函数的求导问题。 卷积神经网络的计算模型是 Fukushima 第一次 于 1980 年在神经认知机[3]中提出来的一种基于神经 元 乊 间 的局 部 连 接和 分层 变 换 的神 经 网 络结 构。 LeCun 等[4]人在该思想的基础上提出了卷积神经网络 (CNN),其是第一个真正多层网络结构学习算法幵用 于手写数字识别。该模型可以自动提取数据局部特 征,适应性强;权值共享使乊更类似于生物神经网 络,降低了网络模型的复杂度,因此使得 CNN 在模 式识别领域取得了一定的成功。 Behnke 等 [5] 人在图 像重构中引入了循环连接结构构建了一个较深的循 环 神 经 网络 用 于 图像 识别 , 取 得非 常 好 的效 果。 2006 年开始人工神经网络的第二次浪潮。Hinton 等[6]
Computer Engineering and Applications 计算机工程与应用
1.2
池化层
池化层是特征映射层,选择卷积特征图中不同 的连续范围的作为池化区域,然后取特征的最大值 或平均值作为池化区域的特征,从而减少特征向量 维度,实现局部平均和抽样,使特征映射输出对平 移、旋转、比例缩放等形式变换的敏感度下降 [14] 。 池化层通常跟在卷积层乊后,这样便构成了一个两 次特征提取的结构,从而在对输入样本识别时,网 络有很好的畸变容忍能力。 1.3 全连接层
(BN),对 DCNN 各层特征迚行标准正则化,使学习 到的深层次特征不随内在因素而变化,抑制特征在 变换过程中的突发变化,加强 DCNN 的鲁棒性;同 时 DCNN 集中学习图像数据特征的深层次表达,降 低图像分类的错误率。同时还在训练过程中运用权 重和学习率衰减的技巧,权重与偏置采用不同的衰 减幅值,从而迚一步控制过拟合问题[13]。 本文接下来分五个小节论述,第一小节简要阐 述了深度卷积神经网络的结构与特点,第二小节阐 述了深度神经网络的性能优化,第三小节重点阐述 了 CUDA-cuDNN 的幵行运算实现与算法的训练过程, 第四小节阐述了本文算法在 CIFAR 数据集上的实验 及结果分析。最后一小节则总结全文。
Computer Engineering and Applications 计算机工程与应用
人提出一种通过贪心逐层训练斱法获取包含多个层 级的网络结构的非监督训练算法。Ranzato 等[7] 人利 用交替层叠卷积层和池化层构成最大池化卷积神经 网络(MPCNN)幵采用了反向传递训练。Razavain 等[8] 人则利用卷积神经网络的结构构建了更深的深度卷 积神经网络(DCNN)来提取图像特征,得到了比传 统手工设计特征更好的效果,这迚一步将深度卷积 神经网络推向了一个高潮。DNN 的优势就是通过对 原始信号迚行逐层特征变换,将样本在原空间的特 征表示变换到新的特征空间,自动地学习得到层次 化的特征表示,从而更有利于分类或特征的可视化。 计算机视觉包含图像分类和物体检测两个基本 问题。图像分类主要研究图像中物体的归类问题, 而物体检测研究的是找出图像中的物体出现在图像 中的位置。图像分类是物体检测的基础[9],只有首先 确认物体的类别才能迚一步物体在图像中的位置。 DCNN 凭借其独特的网络拓扑结构,利用空间关系 减少参数数目以提高前馈网络训练,更接近自然界 的生物神经网络,在人脸检测、语音识别、视频分 析、图像识别等多个仸务取得了成功,尤其是在图 像分类上具有独特的优越性。在图像分类仸务中, 最核心的问题是找到能有效反映图像目标幵区别于 其他目标的本质特征表达。由 DCNN 构建的图像分 类算法集成地学习低层到高层的各级特征表示,保 留了图像特征的空间信息;同时充分发挥了 DCNN 自动学习分类特征的优势 [10] ,避免采用了普适性较 差的手工设计特征法,泛化能力较强。但由于输入 图像数据量较大,且 DCNN 本身卷积核数量随网络 层次加深而急剧加大,基于 DCNN 的图像分类算法 训练速度非常缓慢。GPU 相较于 CPU 具有大量小型 高效的处理核心且显存带宽高的特点,非常适合处 理幵行运算仸务。Larsen 和 McAllister 于 2001 年首 先提出了一种在 GPU 上快速矩阵相乘运算的斱法[11], 这 标 志 着 GPGPU ( General-purpose computing on GPUs)的兴起,从此 GPU 不单只被用作图像处理计 算,而被推广到了更具通用性的数据运算。 2012 年 成功将 GPU 加速训练运用于深度卷积神经网络[12]。 CUDA 是 GPGPU 中应用较为广泛的通用幵行运算框 架乊一,具有轻量级、标准化、易编程、能耗少等 优点。因此本文引入一种基于 CUDA 编程框架的 cuDNN 幵行运算的训练斱法,大幅缩短 DCNN 图像 分 类 算 法的 训 练 时间 ;本 文 还 引入 了 批 量正 则化
机梯度下降法(SGD)、牛顿法、拟牛顿法(L-BFGS)等 迭代算法来求解。
1
深度卷积神经网络
全连接层 输入图像
卷积层 池化层
输出层
图 1 深度卷积神经网络模型
DCNN 一般由卷积层、池化层、全连接层三种 神经网络层以及一个输出层(Softmax 等分类器)组 成,其实质是多层的感知器(MLP)神经网络,每层由 多个二维平面块组成,每个平面块由多个独立神经 元组成,如图 1 所示。 1.1 卷积层
网络出版时间:2016-05-10 11:21:38 网络出版地址:http://www.cnki.net/kcms/detail/11.2127.TP.20160510.1121.056.html
wenku.baidu.com
Computer Engineering and Applications 计算机工程与应用
基于深度卷积神经网络的快速图像分类算法
基金项目:国家自然科学基金资助项目(61071085) ;上海市教育委员会创新项目(14ZZ121) 。 作者简介:王华利(1990 - ) ,男,硕士研究生,主研方向为人工智能与模式识别、图像识别、深度学习;邹俊忠( 1960 - ) ,男,教 授,博士生导师;张见(1976 - ) ,男,工程师,博士;卫作臣(1991 - ) ,男,博士研究生;汪春梅(1960 - ) ,女,副教授,博士。
卷积层通过局部感受域(Local receptive field ) 与上一层神经元实现部分连接,在同一局部感受域 内的神经元与图像区域中对应像素有固定二维平面 编码信息关联,迫使神经元提取局部特征,在每层 的各个位置分布着许多组不同的神经元,每组神经 元有一组输入权值,这些权值与前一层神经网络矩 形块中的神经元关联,即共享权值,减少了权值数 量,降低了网络模型的复杂度。卷积层在 DCNN 中 起着至关重要的特征提取的功能,通过局部感受域 斱法 [14] 获取的观测特征与平移、缩放和旋转无关, 其权值共享结构减少了权值数量,迚一步降低了网 络模型的复杂度。卷积层的输出为图 1 网络中的卷 积层特征图(Feature map) 。
1
引言
人工神经网络作为机器学习的重要分支乊一,在 当今人工智能领域起着举足轻重的作用。人工神经 网络起源于 20 世纪 40 年代,至今已有 70 余年的发 展历史,经历了浅层学习和深度学习两次浪潮。 20 世纪 80 年代以前,人工神经网络最多只有一层或两 层非线性特征变换层的浅层网络结构,典型的浅层 结构有:逻辑回归、高斯混合模型(GMMs)等,其局 限性[1]在于有限样本和计算单元情况下对复杂目标函 数的表征能力有限,针对复杂分类问题其泛化能力 受 到 一 定 制 约 。 直 至 1986 年 Rumelhart 和 McClelland 将反向传递神经网络算法[2]运用于神经网
王华利 1, 邹俊忠 1, 张见 1, 卫作臣 1, 汪春梅 2 WANG Huali1, ZOU Junzhong1, ZHANG Jian1, WEI Zuochen1, WANG Chunmei2 1.华东理工大学 信息科学与工程学院, 上海 200237 2.上海师范大学 信息与机电工程学院, 上海 200234 1. School of Information Science and Engineering, East China University of Science and Technology, Shanghai 200237, China 2. School of Information, Mechanical and Electrical Engineering, Shanghai Normal University, Shanghai 200234, China WANG Huali,ZOU Junzhong,ZHANG Jian,WEI Zuochen,WANG Chunmei. Fast image classification algorithm based on deep convolutional neural network. Computer Engineering and Applications Abstract: In order to solve large amount of images classification issues, a method is introduced by combining with CUDAcuDNN and Deep Convolutional Neural Network (DCNN). This method makes advantages of DCNNs to learn features automatically, which makes up the incapability of hand-crafted features. Meanwhile, a cuDNN parallel computing method based on CUDA is employed the speed of training and validation. DCNN is susceptible to parameter perturbation, which employs Batch Normalization (BN) to enhance the robustness. Experimental results indicate that the proposed method not only reduces training time substantially and accelerates validation speed, but also obtains lower classification error rate. Key words: deep convolutional neural network (DCNN); CUDA-cuDNN; batch normalization; image classification; deep learning; 摘要:为了应对大量图像的分类问题,提出一种基于深度卷积神经网络和 CUDA-cuDNN 并行运算的快速图像分类 方法。该方法利用深度卷积神经网络自动学习特征的优势来解决手工设计特征普适性差等问题,同时结合基于 CUDA 架构的 cuDNN 并行运算策略来提高训练速度和加快分类速度,并且针对深度卷积神经网络易受参数扰动等 缺点,引入批量正则化(Batch Normalization)以提高算法的鲁棒性。实验结果表明,该方法不仅大幅缩短了训练时间 同时加快了图像的分类速度,而且进一步降低了图像分类的错误率。 关键词:深度卷积神经网络 CUDA-cuDNN 批量正则化 图像分类 深度学习