版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、电子科技大学UNIVERSITY OF ELECTRONIC SCIENCE AND TECHNOLOGY OF CHINA专业学位硕士学位论文MASTER THESIS FOR PROFESSIONAL DEGREE论文题目基于深度学习的字符识别专业学位类别工程硕士学号 201322020730作者姓名张超群指导教师李鸿升副教授分类号密级UDC注学位论文基于深度学习的字符识别(题名和副题名)张超群(作者姓名)指导教师李鸿升副教授电子科技大学成都申请学位级别(姓名、职称、单位名称)硕士 专业学位类别工程硕士工程领域名称电子与通信工程提交论文日期2016.3.31 论文答辩日学位授予单位和日期电
2、子科技大学2016年6月答辩委员会主评阅 注1:注明国际十进分类法UDC的类号Character Recognition Based on Deep LearningA Master Thesis Submitted toUniversity of Electr onic Science and Tech no logy of ChinaMajor:Master of EngineeringAuthor:Chaoqun ZhangSupervisor:Hongsheng LiSchool:School of Electornic Engineering of UESTC独创性声明本人声明所呈交
3、的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地方 外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为 获得电子科技大学或其它教育机构的学位或证书而使用过的材料。与 我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。作者签名:日期: 年 月 日论文使用授权本学位论文作者完全了解电子科技大学有关保使用学位论文的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘, 允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文的全 部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描 等复制手段保存、
4、汇编学位论文。(保密的学位论文在解密后应遵守此规定)作者签名:导师签名:日期:iABSTRACT深度学习属于机器学习领域的一种方法,是一种特殊的机器学习算法。近年 来在图像分类,目标检测,图像分割,语音识别等领域取得了突破性的进展。深 度学习中的一种重要网络结构是卷积神经网络,卷积神经网络是一种仿生网络, 即模仿生物神经网络,它具有传统检测分类算法无法达到的优秀特性。字符识别 问题在近年来也有着广泛的应用,中文手写体字符识别在字符识别领域属于比较 困难和复杂的识别问题。本文针对中文手写体字符识别问题,采用深度学习算法训练深度卷积神经网 络结构以及其改进结构,具体内容如下:1、结合中文手写体字符
5、自身的特点,设计深度卷积神经网络,卷积神经网络的输入数据是中文手写体字符图像,输出是训练分类结果。通过前向传播训练, 反向传播算法以及梯度下降算法对网络参数进行更新,逐步迭代优化,最终确定 深度卷积神经网络模型的参数。在对比实验中,设计不同的深度卷积神经网络结 构对其进行训练与分析,以便研究不同卷积神经网络结构对手写体中文字符识别 的影响。2、在传统深度卷积神经网络的基础上对其网络结构进行改进,将不同的深度 卷积神经网络模型进行融合,设计多列深度神经网络结构,针对中文手写体字符 识别问题,提出了 Softmax回归模型输出概率均值融合算法,并应用于多列深度神经网络结构当中,该均值融合算法降低了
6、构成多列深度神经网络结构中的每一个 卷积神经网络结构的错误率,进而提高了整个网络结构的正确率。3、在传统深度卷积神经网络的基础上对其训练算法进行改进,将网络训练中 的卷积层输出特征数据分成“小批”样本,对每个“小批”样本进行批正则化处 理算法后再输入到卷积神经网络的下一层。同时结合GoogLeNet深度卷积神经网 络结构,针对手写体中文字符识别问题,提出了一种批正则化处理与GoogLeNet 网络结构相结合的网络结构,从卷积神经网络的训练算法以及结构两方面对其进 行改进,提高整个网络的识别率。关键词:深度学习,卷积神经网络,中文手写体字符识别,多列深度神经网络, 批正则化处理ABSTRACTD
7、eep learning is a special algorithm of machine learning. Deep learning has made a series of breakthrough progresses in the field of image classification, object detection, image segmentation, speech recognition, etc. Covolutional Neural Network(CNN) is a significant network structure of deep learnin
8、g. CNN is a kind of bionic network, namely it imitates biological neural networks, and it has some excellent properties that other detection oclassification algorithms cant achieve. Character recognition also has wide applications in recent years. Chinese character recognition is a kind of tough and
9、 complicated issue in the field of character recognition.This article adopts deep convolutional neural networks and its variants for Chinese handwritten character recognition, details are as follows:L Design deep covolutional neural networks, combined with the features of Chinese handwritten charact
10、ers The input of the network is Chinese handwritten character images, the output is classification result. The network parameters are updated through forward propagation training, back propagation training and gradient descent algorithm. In the comparative experiments, train and analyze different co
11、volutional neural network structures so that we can study the influence of them on Chinese character recognition.2. Improve the structure of traditional deep convolutional neural networks by fusioning different deep convolutional neural network models, the improved network is called Multi-column dee
12、p neural network. This article proposed a probability average fusion algorithm of the output of Softmax regression model for Chinese handwritten character recognition、then the algorithm is applied to Multi-column deep neural network. The average fusion algorithm reduces the error rate of each covolu
13、tinal neural network of the Multi-column deep neural network, and then improved the accuracy of the whole network.3. Improve the training algorithm of traditional deep neural networks by decomposing the output features of covolutional layers into batches. Take batch normalization for each batch and
14、then input them to next layer. This article proposes a network stmcture of GoogLeNet deep neural network combined with batch normalization algorithm for Chinese character recognition issue. The accuracy of traditional neural network was improved both by network structure and training algorithm.Keywo
15、rds: Deep Learning. Convolutional Neural Networks, Handwritten Chinese Character Recognition、Multi-Column Deep Neural Networks, Batch Nonnalizatio nin绪论研究背景及意义深度学习研究现状字符识别研究现状本文主要工作及组织结构神经网络基础介绍及中文手写体字符图像预处理 引言基本神经网络简介2.2.1基本神经元简介2.2.2神经网络模型前向传播2.2.3反向传播算法以及梯度下降法离线中文手写体字符数据集介绍2.3.1 CASIA中文手写体字符数据集23
16、2离线中文手写体字符数据集采集离线中文手写体字符的预处理2.4.12.4.22.4.3网络初始化权重与预处理间关系 尺度变换 均值减除 数据集扩增2.4.4本章小结基于多列深度神经网络的中文手写体字符识别引言深度卷积神经网络的基本结构3.2.13.2.23.2.3卷积层特征提取 池化层特征提取 改进的激活函数ReLU 全连接层构建3.2.43.2.5 Dropout M3.2.6 Softmax 回归多列深度神经网络的构建1013131415151717181920202020212224252730第一章LI1.21.31.4第二章2.12.22.32.42.5第三章33.23.3V331深
17、度卷积神经网络结构设计303.3.2深度卷积神经网络模型融合32333多列深度神经网络结构设计343.4实验结果与对比分析36 363.4.2不同带权重层深度卷积神经网络实验结果373.4.3深度卷积神经网络可视化结果383.4.4多列深度卷积神经网络实验结果403.5本章小结40第四章基于批正则化处理的中文手写体字符识别424.1引言424.2批正则化处理简介424.2.1批正则化处理引入424.2.2消除内部协变量迁移444.3批正则化处理算法464.3.1正则化处理算法464.3.2 “小批”样本批正则化处理算法474.3.3神经网络的批正则化处理算法494.4 GoogLeNet深度网
18、络结构介绍524.4.1 Inception 网络模型534.4.2 GoogLeNet网络模型构建554.5正则化处理与GoogLeNet相结合的网络构建554.6实验结果与对比分析584.7本章小结59605.1本文工作总结605.2后续工作展望60第五章总结与展望致谢62参考文献63第一章绪论第一章绪论1研究背景及意义深度学习是机器学习领域的一种很重要的方法,在图像识别,语音识别中都 有着相当广泛的应用。当世界上第一台可编程计算机出现的时候,人们很好奇它 是否可以变得更智能,更接近人类的大脑。现如今,深度学Al(Deep Learning, DL) 已经成为一个蓬勃发展的领域,许多实际应
19、用以及活跃的研究课题也应运而生。2016年3月,也就是前不久,一个被很多人的热议的话题是围棋“人机大战”,谷歌的人工智能计算机“阿法狗”与韩国围棋九段选手李世石比赛,最终阿法狗以4:1的大比分嬴得了这场比赛,围棋比赛在棋类比赛中属于很困难复杂的问题,纵使人类说我们还有诗和远方,可是这使人不得不承认计算机深度学习的发展迅猛 之态令人震惊早期的机器学习处理和解决的问题都是对于人类来说比较困难的问题而对于 计算机来说相对容易的事情,例如解决较难的形式复杂的数学问题。早在1997年,IBM的深蓝” (Deep Blue)博弈系统击败了国际象棋世界冠军Garry Kasparov111,国际象棋的规则比
20、较简单,包括64个位置和32个棋子,且这些棋子需按严格的 限制方法移动,因此比较容易通过计算机进行计算建模。随着科技的发展,人们逐渐意识到,机器学习真正要面临的问题并不是解决 单纯的数学和公式问题,机器学习真正的挑战是解决人类本身很容易执行的问题, 但是这些问题很难通过计算机从形式上表述出来。例如语音识别或者人脸识别, 这些识别人类可以轻松直观的做到,人类希望深度学习可以让计算机也“智能” 的表达解决此类问题。人类看似简单的日常生活中包含了大量的对世界的感知与 认识,这些抽象的感知多数具有主观性以及直观性,很难通过计算机表达出来。 机器学习如果实现接近人类的智能行为,计算机需要提前学习这些感知
21、,因此机 器学习需要面临的一个关键的问题是如何学习这些先验知识,以及如何进行有效 的特征表达。早期许多机器学习项目的解决方法是为机器学习提取有用的特征集合,然后 将这些特征集合放到简单的机器学习算法中进行训练学习,然而,实际问题中许 多有效特征是很难提取的,例如,需要通过算法检测识别图像中的汽车,汽车有 轮胎,因此希望将轮胎作为一个特征,然而很难从像素的角度出发准确的描述轮 胎到底什么样,虽然轮子的几何形状是简单的圆形,可是实际轮胎图像受很多因 素的影响,比如光照影响,轮胎阴影影响,汽车挡泥板的影响,以及前景目标的 第一章绪论遮挡等等。因为不可能将世界上所有的轮胎以及不同状态的轮胎特征图像均收
22、录 到数据库里,因此需要用已有轮胎的样本特征“表达”轮胎的各种图像信息。上文轮胎的例子引入了一个机器学习中至关重要的问题,学习如何准确的表 达数据,对数据自身进行表达进而提取有效的特征,这种方法称为表达学习,表 达学习也称为深度学习。深度学习算法的一个典型例子是自编码网络,自编码网 络包括编码网络以及解码网络,编码网络将原始输入数据转换成一种新的数据表 达形式,解码网络将这种新的表达形式还原成原来的形式,可以看出,自编码网 络其实是对训练样本“自身”的学习。在训练过程中,当输入数据经过编码器和 解码器的时候,自编码网络不仅需要尽可能保留更多的输入数据信息,同时还需 使得新的数据表达形式比原始数
23、据有更多良好的特性。深度学习在现实中遇到的一个很大的困难是需要训练的观测数据会受多方面 因素的影响,例如在夜间采集红色汽车的图片,车身的颜色就很接近黑色,不同 的视角采集的汽车轮廓的形状也有所不同,因此,需要区分各种因素的影响并且 需要去除那些我们不需要的因素。当然,从原始数据中提取高阶抽象的特征是很 困难的,许多影响因素比如语音识别中的讲话者的口音,只有达到接近人类的复 杂的理解能力才可以区分。因此,如何准确的有效的表达特征成为深度学习中一 个重要的研究课题。针对特征表达学习的问题,深度学习算法将原始数据表达为另一种对计算机 来说更加简单的形式。以光学图像识别分类为例,原始图像的输入数据是一
24、组像 素值的集合,从原始一组像素值到目标识别的函数映射是非常复杂的,几乎是不 可能完成是事情,因此这些数值的集合并不利于计算机的“理解”。为了解决这个 问题,深度学习将上述复杂的映射转换为一系列嵌套的简单映射,每一个简单映 射看做深度学习中的一层网络。原始输入数据是需要被观测的数据,在深度学习 网络中称为可见层(visible layer),可见层后随之连接一系列隐藏层(hidden layers) 网络,隐藏层网络层逐层级联迭代,每一层网络的输出作为下一层网络的输入, 逐步提取原始可见层输入的抽象特征。隐藏层网络中传递的数据并不是原始被观 测的输入数据,而是在训练过程中逐步对输入特征提取选择
25、,最后保留对分类有 用的特征信息。最终训练结束后,深度学习神经网络将原始输入图像“重构”为 一种新的特征表示,每一层的输出均可看做对输入的一种新的表达,并且这种表 达有利于计算机的分析计算。在深度学习网络的最后,隐藏层的输出与网络末端 的分类器进行级联,对整个输入的训练样本进行分类。可以看出,深度学习方法 中的一个很重要的特点是如何有效的对输入特征进行提取与重新表达,另一个特 点是它将计算机的计算步骤分解成多步嵌套式计算。综上所述,深度学习属于机器学习领域的一部分,机器学习方法是唯一的一 种可以使得构建的机器学习系统适用于复杂的真实世界环境的途径。深度学习是 一种特定的机器学习算法,通过将对世
26、界的感知表达为一种嵌套层次的概念表示, 每一层概念表示均是比较简单的特征表达与提取,逐层迭代,层层嵌套,最终这 些特征表达将比较复杂抽象的特征转换为比较简单的易于计算机表达的特征,深 度学习在很多领域展现出巨大的实用性以及高度的灵活性。1.2深度学习研究现状深度学习算法中一个重要的网络结构是卷积神经网络(Convolutional Neural Networks, CNN)结构,它属于人工神经网络的一种,近年来成为图像分类叫 目 标检测,图像分割叫语音识别方面的热门内容。卷积神经网络是一种仿生网 络,即模仿生物神经网络,它具有传统检测分类算法无法达到的优秀特性,与传 统检测分类算法不同的是,卷
27、积神经网络具有权值共享的网络结构,这种结构的 网络模型更加简洁,权值的总数大大减少。本文所述的离线中文手写体字符数据 是图像数据,图像数据是多维的,在传统检测识别算法中,对多维数据处理时首 先要对复杂的多维特性进行特征提取,在特征提取之后还要对提取的特征进行数 据重建,传统算法的复杂性比较高,而在卷积神经网络中,类似于图像这种多维 数据可以作为网络的直接输入,避免了传统算法的复杂性。纽约大学教授LeCun等人在1989年首次提出了 LeNet-51这种卷积神经网络 结构,这也是最早被提岀的的卷积神经网络结构,可以说在深度学习历史上具有 里程碑的意义,LeNet-5网络为接下来的深度学习卷积神经
28、网络结构奠定了基础。 深度卷积神经网络结构通常由卷积特征提取层叠加而成,每层卷积层后面接对比 度归一化层或者最大池化层,在叠加的卷积层后面通常接一个或者多个全连接层。 类似这种模式的卷积神经网络结构被广泛的应用于图像检测分类领域,并且在很 多图像数据集上取得了很好的效果,比如MNIST手写体阿拉伯数字集,CIFAR自 然图像集,以及著名的基于ImageNet数据集的分类比赛用刃,对于大型数据集如 ImageNet,通常通过提高深度卷积神经网络的网络层个数问或者单层网络的尺寸& 来对数据集进行训练,为了防止参数过多导致的过拟合问题,还可以在全连接层 后面引入Dropout层卩习。深度神经网络可以
29、看做图像检测识别分类研究中的一个里程碑式的突破,它 在现有基础上提高了很多复杂识别问题的识别率。Bissacco】等人针对自然场景中 的字符识别提出了 HoG输入深度神经网络,并且在2013年的ICDAR字符识别比 赛中达到了最好的识别性能。Sermanet等人卩引针对图像分类,标定和检测问题提出了深度神经网络整合框架,并且在13年的ImageNet比赛中取得了第一名的成 绩。Wang等人2】为了解决视频跟踪的泛化图像特征提取,训练出一种堆叠的自编 码网络,并且在较难条件下的视频序列中取得了很好的效果。Girshick等人在2014 年针对目标识别检测问题提出了邻域卷积神经网络(Regions
30、 with Convolutional Neural Networks, RCNN)【问,邻域卷积神经网络将所有的目标识别检测问题分为两 个子步骤,首先对未知类别的目标的局部运用颜色等低阶特性进行初步检测,然 后运用卷积神经网络分类器对这些位置的类别进行检测识别。以上这些深度神经 网络取得的可喜的进展可以归功于以下几点:(1)高性能的计算机技术(例如CPU 和GPU集成处理);(2)神经网络灵活的结构(例如Lin等人M提出的网络结构); 更大的训练数据集的可用性;(4)有效的深度神经网络学习算法,例如模型正则化 方法口。在深度学习中传统卷积神经网络的基础上,很多人对传统卷积神经网络进行 了改进
31、。2012年,Krizhevsky等人阳通过提高卷积神经网络的深度以及采用多重 训练优化方法提高了深度卷积神经网络的性能。2014年,K. Simonyan等人冋提出 了 VGGNet深度卷积神经网络结构,VGGNet网络共有13层(指卷积特征提取层以 及全连接层)。2015年,谷歌公司提出了 GoogLeNet网络结构,GoogLeNet网络 结构共有22层,同样是从提高卷积神经网络的深度来改进网络的性能。网络层数 的增加,意味着模型更加庞大,训练计算更加复杂困难。可以看出,上述这些网 络之所以可以从提高深度卷积神经网络模型的深度来提高深度卷积神经网络的性 能,和计算机的发展是分不开的。1.
32、3字符识别研究现状近年来,字符识别越来越受到大家的关注,遍及生活的方方面面。对于手写 体字符识别而言,由于手写体字符识别还受书写者的影响,每个人的笔触不同, 形状也不同,因此手写体字符识别存在较大的困难。早期针对手写体字符识别, 许多研究者提出了不同的分类方法,比如K近邻分类方法04,svm分类方法引, 以及Boosting分类方法列。对于本文介绍的中文手写体字符识别而言,尽管在过去的40年1沟,研究者已 经做了很多的工作并且取得了不错的成就,但是中文手写体字符识别仍然存在许 多问题。首先,中文字符的个数非常庞大,因此存在很多相近的中文字符为识别 带来困难,其次,中文手写体字符还引入了人为因素
33、,比如很多人写草书,人类 用肉眼都很难分辨,如果希望计算机进行分辨的话面临的困难更大。过去的几十年中,许多研究者都致力于中文手写体字符识别分类的研究必J忙 主要分类方法采用特定域的处理技术比如差异特征提取|纲以及改进的二次判别函 数等,这些分类方法在字符分类中都取得了很好的效果。在传统改进的二次判 别函数分类的框架下,中文手写体字符数据集的预处理和特征提取方法在字符识 别中同样起到了至关重要的作用,这些技术主要包括非线性正则化方法I,基于 旋转平移加噪的数据集扩增“叫8方向梯度人工标注特征法阳等类似的方法。以 上这些基于特定域的分类方法在传统中文字符识别中起到了很重要的作用。随着深度学习的广泛
34、应用,深度卷积神经网络逐渐开始通过自动特征学习1 方法运用到手写体英文字符识别当中,深度神经网络同样在手写体阿拉伯数字数 据集MNIST1371以及中文手写体字符数据集上取得了很好的识别效果。中文手写体 字符识别中的一个很重要的数据集是CASIA-HWDB数据集|30*381, CASIA-HWDB 数据集包括在线中文字符集以及离线中文字符集。在手写体字符识别领域,深度卷积神经网络也展示出了出色的表现。其中, Ciresan等人提出的多列深度神经网络“轴在许多实际应用中取得了显著的成就, 并且在手写体数据集上卩刃达到了很多人类水准的良好性能。Graham首次提出了一 种卷积神经网络的变体Dee
35、pCNet1411网络结构,并且在2013年的ICDAR中文手写 体字符识别比赛中取得冠军。除了中文字符识别之外,深度卷积神经网络在其他 亚洲字符识别中也取得了良好的效果,比如韩国的韩语字符识别I以及印度的梵 文识别1.4本文主要工作及组织结构本文针对中文手写体字符识别的问题,重点研究了深度学习中的深度卷积神 经网络结构对中文手写体字符识别的影响。首先介绍了深度卷积神经网络中的训 练算法,包括前向传播,反向传播以及梯度下降法。随后研究了不同层数的卷积 神经网络结构对中文手写体字符识别的影响。然后引入多列深度神经网络结构, 提出了 Softmax回归模型输出概率均值融合算法,与多列深度神经网络结
36、构相结合,从改进网络结构方面提高字符识别率。最后针对中文手写体字符识别问题, 提出批正则化处理与GoogLeNet网络结构相结合的算法,从深度卷积神经网络训 练算法以及结构两方面对其进行改进,取得了良好的效果。F面分别介绍各章内容:第一章绪论。首先介绍了深度学习的研究背景及意义,随后介绍了深度学习 的研究现状,包括卷积神经网络的“鼻祖” LeNet-5网络结构以及在此基础之上深度卷积神经网络的发展,然后介绍了字符识别的研究现状,主要介绍中文手写体 字符识别的发展现状,最后列出本文主要工作及组织结构。第二章神经网络基础介绍以及汉字预处理。是本文的基础性介绍,深度学习 网络结构的基础是神经网络。本
37、章介绍了神经网络的基本构成以及神经网络训练 的相关算法,包括前向传播训练,反向传播算法以梯度下降法。然后介绍了本文 所用的数据集CAS1A-HWDB手写体中文字符数据集,最后介绍了本文对中文手写 体数据集的预处理,包括尺度变换,均值减除以及数据集扩增。第三章基于多列深度神经网络的中文手写体字符识别,首先设计深度卷积神 经网络,然后对不同层数的深度神经网络结构进行比较。最后在传统深度卷积神 经网络的基础上,引入了多列深度神经网络结构,针对中文手写体字符识别,提 出了 Softmax回归模型输出概率均值融合算法,与多列深度神经网络结构相结合,从网络结构上改进了传统深度卷积神经网络。第四章基于批正则
38、化处理的中文手写体字符识别,引入批正则化处理算法, 同时引入GoogLeNet深度卷积网络结构,结合中文手写体字符识别问题,提出了 基于批正则化处理算法的GoogLeNet网络结构,对传统深度卷积神经网络结构的 训练算法以及网络结构两方面同时进行改进。第五章总结与展望,先对本文基于深度学习的字符识别相关工作进行了总结, 接着对后续可以深入研究的工作进行了计划和展望。5第二章神经网络基础介绍及中文手写体字符图像预处理第二章神经网络基础介绍及中文手写体字符图像预处理2.1引言深度学习在近年来来的图像检测与识别中起到了至关重要的作用,深度学习 的基础是人工神经网络,本章对深度学习中的基本神经网络构成
39、与相关算法以及 本文实验中所用的数据集CASIA离线中文手写体字符集进行介绍。在2.2节中介 绍了基本神经网络结构以及神经网络训练相关算法,包括神经元简介,神经网络 前向传播算法以及反向传播算法和梯度下降法;在2.3节中介绍了离线中文手写体 数据集CASIA-HWDB数据集;2.4节中介绍了离线中文手写体字符的预处理。本 章内容是后续内容的基础介绍。2.2基本神经网络简介2. 2.1基本神经元简介以监督学习为例,假设(0分)是训练样本集,神经网络算法可以提供一种 复杂的非线性模型缢b(x),该非线性模型具有基本参数权重“,偏置项方,可以 根据该线性模型来拟合给定数据O“神经元”是最简单的神经网
40、络,也是神经网络的基本单元,其结构如下图所示。图21示出了神经网络的基本单元神经元,这个“神经元”的输入是石,兀,兀以及截距其输出是非线性拟合模型仏,=兀+方),神经网 络中的输出中的函数f RR被称作“激活函数”,激活函数有不同形式,传统的神经网络激活函数包括比如sigmoid函数/(z) = 或者双曲正切函数 l + exp(-z)f (z) = tanh(z) = _。其中,sigmoid激活函数是从生物神经学角度出发,用来e +厂模拟生物神经元感应外界刺激,当刺激达到一定的程度会对其作出反应的现象。 双曲正切激活函数是sigmoid激活函数的一种变体。如果选择双曲正切函数作为激 活函数
41、,那么它的输出取值范围是-1,1,它的导数是/(z) = l-(/(z)2o如果选择 sigmoid作为激活函数,那么它的的输出取值范围是0,1,导数是/(z) = /(z)(l-(/(z) o图22示出了 sigmoid激活函数和双曲正切激活函数的图像。(a)(b)图22传统神经网络激活函数示意图(a)sigmoid激活函数示意图;(b)双曲正切激活函示意图从图2-2中的传统激活函数曲线可以看出,构成神经网络模型的基本单元“神 经元”的输入与输出之间的关系实际上是一个逻辑回归。本小节介绍了传统的神经网络中的神经元激活函数,本文实验中使用的是在 传统激活函数基础上改进的改进的ReLU激活函数,
42、具体在3.2.3节中详细介绍。2. 2. 2神经网络模型前向传播在2.2.1节中介绍了神经网络的基本单元“神经元”,本节介绍将“神经元” 逐层连接,底层(靠近输入端)“神经元”的输出作为顶层“神经元啲输入,构成的 简单神经网络模型,如图23所示。图2-3示出了由神经网络的基本单元神经元构成的简单神经网络模型,如图 2-3所示,最左边一列的节点单元构成输入层,最右边一列的节点单元构成输出层, 中间一列的所有节点构成隐藏层,由于隐藏层位于输入层和输出层的中间,因此 无法从训练样本中观测出它的值,图25示出的简单神经网络模型中有三个输入单 元三个隐藏单元以及一个出输出单元,其中输入层和隐藏层中标记为
43、+1 的圆圈称为偏置节点,偏置单元不计算在输入单元以及隐藏单元中。如果用q表示神经网络模型的总层数,那么图2-3所示的简单神经网络模型中 耳=3,如果将第/层记做厶,那么厶表示输入层,鱼表示输出层。该神经网络的 参数为(0,/” = (“,,,沪万),令孑)表示第/层第i节点的输出值(即激活函数的激活值)。当/ = 1时,q表示第/个输入特征兀。当参数集合炉已给定时,便可以用上述算法通过非线性模型hli b(x)计算整个神经网络的输出,具体到如图2-3 示出的简单神经网络模型时,计算每层输出结果的具体步骤由式(21)给出。q=/(必 +必 +必 +勺)(2-1)2)= /(屮旺+ )兀+ +方
44、)磔)=/*(必 +吆X +吆 +曙)=牢=/0W + 咖2) * 咖 2) * 妒)在式(21)中,地表示第/层第丿个节点与第/+1层第7节点之间相连接的权 重参数,严)表示第/+1层第/节点的偏置参数,因而在图2-3所示简单神经网络 模型中,0w疋3,沪2鼻胪3。需要注意的是,没有其他单元连接指向偏置节点, 即偏置节点的输入为0,因为偏置节点总是输出为+1。同时,第/层的节点数用 表示。式(21)的计算步骤称为前向传播,是神经网络中的一种重要计算方法。2. 2.3反向传播算法以及梯度下降法在2.2.2节中介绍了前向传播算法,可以计算深度神经网络模型中每一层的输 出激活值4),以及整个深度神
45、经网络的的输出值入,此时整个深度神经网络 模型的参数还需进优化迭代更新,本节介绍如何使用反向传播算法以及梯度下降 法更新优化网络参数。首先需要计算网络的代价函数,假设神经网络训练样本集为 (X),,(卅),严),共包括7个带标签的训练样本,其中x可以看做输入变 量值,y是x所属类别标签,也就是类别的真实值。通过前向传播计算出的网络输 出值hx)是该神经网络模型对输入样本x的预测值,神经网络模型训练的最终目 的是使预测值hu,b(x)尽最大可能逼近真实值,因此,需要计算两者之间的差距, 即损失代价函数,以单个样本匕刃为例,代价函数可以由x,y) = -1| h b(x)-y |:表示,这是一个方
46、差代价函数,对于个数为加的训练2样本集(X/(卅),严)而言,其损失代价函数如式(22)所示:丿()=三5?(炉,处丿)+范2(呼)21 m 1魯T)y)(2-2)19式中,/表示深度神经网络的层级,耳表示第/层中节点单元的个数(不包含偏 置项罗)。如式(22)所示,该整体代价函数分为两个部分,第一部分是均方差项, 第二部分是权重衰减项,该权重衰减项可以减少权重的幅度,有效防止过度拟合。1=*式(22)示出的整体代价函数表示神经网络预测值与训练样本真实值的差值, 这个差值越小说明神经网络模型的预测能力越好,最终深度神经网络求解目标是 针对权重以及偏置项b求整体代价函数J(W,b)的最小值,求解
47、时首先面临一个 参数初始化的问题,通常将每一个权重参数W阳以及偏置项严)初始化为一个接近 0的随机值,然后对整个网络采用类似梯度下降法的最优化方法。梯度下降法是 一种求解整个网络的比较常用的最优化方法,它对权重以及偏置项的更新如下式 所示:呼“命丿(炉“)(2-3)式中,a表示学习速率,由式(23)可以看出,梯度下降法的关键是求解参数 的偏导数,本节接下来介绍的反向传播算法就是一种有效的求解函数偏导数的一 种方法。以单个样本仕,刃为例,先求出单个样例的损失代价函数J(Wyby)对权重 以及偏置项的偏导数,然后可以推导出整体代价函数J(W,b)的偏导数,整体代价 函数的偏导数如式(24)所示科
48、W 呵活耐門+畛 (24)帚側心活命炒W)反向传播算法的具体思想是,首先,通过前向传播计算出每层网络的激活输 出值,以及对该神经网络模型对输入样本X的预测值屁丿,对于每个网络层的输 出节点计算输出残差,某层网络的输出残差值表示这层网络的输出对才)与真实值 的差距,Z层网络的残差用Q表示,假设整个深度神经网络共有巾层,耳层即是 输出层,耳层的残差由下式计算/)=命一绻金)=-(必一)/席)(2-5)式(25)表示了整个网络终输出层的残差,对于第/ =耳匕耳2,坷3,2层等隐藏层,该层中的第i个节点的残差方法计算方式如下式所示:(2-6)即广(叨) 产1)式中,是通过基于节点(第/ + 1层节点)
49、残差的加权平均值计算出来的,这些节点的输入是卩。得到以上两个残差之后,可以计算损失代价函数对权重以及偏置项的偏导数, 如式(27)所示:命丿(用,沪*铲)(2-7)式(25)以及式(26)给出了深度神经网络残差的计算方式,式(27)给出了通过 残差计算偏导数的公式,算法2给出了反向传播算法的细节:算法2.1反向传播算法开始:1. 对深度神经网络进行前向传播计算,对于1 = 2,3,.,叫,通过前向传播公式, 计算出每层的激活值q2. 对于输出层耳层每个输出单元i,根据式(25)计算其残差纺)3. 对于1 =叫-,叫-2-3,.,2层,根据是(2-6)1+算其第i个节点的残差罗)4. 根据式(2
50、7)计算最终的偏导数值以及丿(亿处丿)y,h- x,y) =命 J(w,b- x,y) = a沦何“,)=角 J(W. b- x.y) =结束算法2给出了反向传播算法的具体步骤,需要注意的是,在步骤2以及步骤 3当中需要为当前网络层中的每一个分量i计算.厂(才),假设/(打是传统的激活函 数sigmoid函数,并且由前向传播算法求得该层的激活值是”),则由221节中介 绍的求导数的方法可知f ) = q)(l-叩)o如上所述,反向传播算法是梯度下降法中一种有效的求偏导数的方法,算法2.2给出梯度下降法的具体步骤,在算法2.2的伪代码当中,整体表示一个矩 阵,这个矩阵的维度与权重矩阵炉的维度相同
51、,沪)表示一个向量,这个向量 的维度与偏执向量刃)的维度相同。算法2.2梯度下降算法 输人训练样本集开始:地设置成全零矩阵,1. 对于所有网络层/,初始化权重参数以及偏置项参数,矿设置成全零向量。2. for i =do神经网络第1层节点值是输入值4. 根据算法2.1反向传播算法计算权重以及偏置项的偏导数乂旳丿(炉,方;兀刃以 及丄+无肿)5. 更新权重参数:)於)=対)一彳丄0)6. end for结束梯度下降算法以及反向传播算法可以最小化损失代价函数丿(#),然后优化 迭代进而求解深度神经网络的参数。2.3离线中文手写体字符数据集介绍2.3.1 CASIA中文手写体字符数据集中科院自动化研
52、究所(Institute of Automation of Chinese Academy of Science,CASIA)模式识别国家重点实验室(National Laboratory of Pattern Recognition, NLPR)创建了离线以及在线中文手写体字符数据集。其中,离线手中文手写体数据集简 称CASIAHWDB,在线中文手写体字符数据集简称CASIA-OLHWDBo这些手写 体汉字样本由1020名书写者使用阿诺托(Anoto)电子笔书写在点阵纸上面,进而通 过计算机采集在线以及离线手写体数据。这些中文手写体字符样本既包括独立汉 字也包括连续的手写文本,如图24所示。
53、.代M n右打” 玄闪年-糾放庙 X 5 切汽的舫 廉矗右T紐的M 总、请阿煉妨莎如* k it的隹5 住测*问必.改的良宠比肚 话杆丽砂旳呵越异绎俸匸廿务冷总砧的,池(a)问轻!(b)图2-4 CASIA离线中文手写体字符样例(a)独立中文手写体字符样例;(b)连续文本手写体字符样例中科院自动化研究所从2007年开始采集中文汉字集,直到2010年完成了数 据集的分割以及注释。该数据集包括6个离线手写体字符数据集子集以及6个在 线手写体字符数据集子集,在每类中文字符数据集中,3个是独立汉字数据集 (DB1.0-1.2),另3个是连续手写文本字符集(DB2.022)。在每类离线或在线手写体 字符
54、数据集中,独立汉字集包括7356类(7185类中文字符以及171类符号)约3.9 亿个中文字符样本,连续手写文本集包括5090页约1.35亿中文字符样本。以上所 有的数据都进行了字符层面的分割以及标注,并且每类数据集均被分成标准训练 集以及测试集覘。本文中釆用的数据集为离线中文手写体独立字符数据集CASIA-HWDB1.1,该 数据集包括3755类常用中文手写体字符集,首先将该数据集中的字符图像提取成图片格式,然后对每个字符进行预处理,为接下来的训练以及测试做准备工作。2. 3. 2离线中文手写体字符数据集采集对于中文离线手写体字符集CASIA HWDB数据集的采集,首先对书写者书 写的全部中
55、文手写体汉字进行扫描得到字符灰度图像,然后用标注工具对字符图 像进行分割以及类别标识,标注后,每幅数据集图像的背景像素被标识为255,前 景像素被分成255个灰度级(0到254)。离线手写体独立汉字集包括三个子集CAS1A-HWDBI.0-1.2,表21列出了这 三个数据集的采集信息。表21离线中文独立手写体字符数据集采集统计信息数据集书写者个数HWDB字符个数所有字符符号中文汉字/种类HWDB 1.04201680258711221609136/3866HWDB 1.13001172907511581121749/3755HWDB 1.2300104197050981990989/3319总计102038951351732613721874/7185其中,HWDB1.0包括3866个汉字以及171个字母及符号,在3866个中文汉字中,3740个汉字属于GB2312-80甲级中文字符(该甲级字符共包括3755个中文字符)。HWDB1包括3755个GB2312-80甲级中文字符以及171个字母及符号。HWDB1.2包括3319个中文字符以及171个字母及符号。HWDB1.2中的中文字符集(包括3319类)与HWDB 1.0中的中文字符集是不相交的,HWDB 1.0与HWDB 1.2 共包括7185类(7185=3866+3319沖文字符,这7185类囊括GB
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 社交网络行业发展规模预测
- 护士为病人进行高压氧治疗
- 混合痔的孕期患者护理建议
- 朱红版护理美学:领导力培养
- 新人教版七年级生物下册第一章《被子植物的一生》简案
- 护理查房:患者跌倒预防与护理
- 护理健康教育与健康促进策略
- 2026年乡镇街道应急预案编制导则GB T 46793.2实施指南
- 2026年有机封装基板可接受性判定准则符合性自检报告
- 2026年生态伙伴分级分类管理:供应商 渠道商 产品商协同机制
- DL-T5796-2019水电工程边坡安全监测技术规范
- 药物外渗处理与预防
- 轻型货车离合器设计
- 起重机安全滑触线改造维修施工方案
- 新概念英语第四册
- GB/T 16938-2008紧固件螺栓、螺钉、螺柱和螺母通用技术条件
- GB/T 15812.1-2005非血管内导管第1部分:一般性能试验方法
- 2023年毕节地区毕节市广播电视台(融媒体中心)招聘笔试题库及答案解析
- 毕业证明书申请表(模板)
- 第5章护际关系伦理第6章课件讲义
- 特种设备安全培训课件
评论
0/150
提交评论