基于动态样本选择策略的bp神经网络手写体识别系统的制作方法

文档序号:10656060阅读:299来源:国知局
基于动态样本选择策略的bp神经网络手写体识别系统的制作方法
【专利摘要】本发明提供一种基于动态样本选择策略的BP神经网络手写体识别系统,首先随机初始化各层网络神经元权值;其次采用梯度下降法来优化网络权重,在第一轮迭代中,使用所有样本来计算总梯度,再使用总梯度来更新各层权值,并根据样本是否远离决策边界来判断是否该作为下一轮迭代的训练样本;重复使用上一轮选好的训练样本来计算总梯度、更新各层权值、并选择下一轮迭代的样本直到达到最小停止误差或最大迭代次数;最后使用得到的神经网络对未知手写字体样本进行识别。相较于传统的分类技术,本发明的动态样本选择策略利用样本离决策边界的距离来动态选择样本,实现训练样本数的一步步减小,算法能有效地解决BP网络在大数据集上训练时间过长的问题。
【专利说明】
基于动态样本选择策略的BP神经网络手写体识别系统
技术领域
[0001] 本发明设及模式识别领域,尤其是设及一种基于动态样本选择策略的BP神经网络 手写体识别的方法与系统。
【背景技术】
[0002] 光学字符识别技术(Optical Qiaracter Recognition, OCR)是计算机自动、高速 地辨别纸上的文字,并将其转化为可编辑文本的一项实用技术。而手写数字识别则是光学 字符识别技术的一个重要分支,它的研究对象是如何利用计算机自动辨认人手写在纸张上 的阿拉伯数字。手写数字识别的主要难点在于:第一,某些数字之间字形相差不大,使得准 确区分运些数字相当困难;第二,数字虽然只有十种,而且笔划简单,但同一数字写法千差 万别,全世界各个国家各个地区的人都用,其书写上带有明显的区域特性,很难完全做到兼 顾世界各种写法的极高识别率的通用性数字识别系统;第=,手写体字符由于书写者的因 素,使其字符图像的随意性很大,例如笔画的粗细、字体的大小、手写体的倾斜度、字符笔画 的局部扭曲变形等都直接影响到字符的正确识别。
[0003] 传统的手写字体识别有很多实现方法,比如统计模式法、句法结构方法、逻辑特征 法、模糊模式方法和神经网络算法等。上述几种方法各有优缺点:结构法比较直观,能较好 反映事物的结构特性,但问题是基元的提取很不容易,各基元的关系也比较复杂,抗干扰性 能也较差;统计法利用计算机来抽取特征,比较方便,抗干扰性能较好,但其缺点是没有充 分利用模式的结构特性。它们对于自由书写的手写字体难W取得令人满意的识别结果。而 若采用人工神经网络方法来实现手写字体识别,可处理一些环境信息十分复杂,背景知识 不清楚,推理规则不明确的问题,允许样品有较大的缺损、崎变,自适应性能好,具有较高的 分辨率。因此,当前神经网络技术与多种方法的综合是解决手写字体识别的重要方向之一。
[0004] 由于BP(Back Propagation)神经网络,即误差反向传播神经网络的非线性映射能 力强、泛化能力和容错能力高,所W多采用BP神经网络技术用于手写字体识别研究当中。但 又因为传统的BP神经网络在训练过程中将所有训练样本都参与训练,使得其在大数据集上 需要极多的训练时间,运也限制了BP神经网络在大数据集上的应用。若要采用该方法来识 别自由手写字体,则需要一个很大的样本集供其训练网络权重,才能最终达到一个较高的 正确率。比如:学术研究中多采用MNIST手写数字数据库作为样本数据来源,其一共约有 70000幅手写数字图片,采用传统的BP神经网络对其进行识别所用的训练时间需要约 136235.63秒(37.84小时),运个时间在日常应用中是难W接受的。所W,加快BP神经网络在 大数据集上的训练速度就成了亟待解决的问题,构造一个能快速完成训练的神经网络能大 大改善手写字体识别的实用性。
[0005] 目前在加快神经网络训练速度方面,已经有一些基于算法层面的处理方法,如基 于Levenberg-Marquardt算法的LMBP网络等。然而,运些处理方法都是在算法层面上的改 进。也就是说,改进后的神经网络只是在算法的运行速度上得到提升并没有设及到样本的 选择。然而,实际在大数据集上的训练过程中,我们发现不同样本对网络权重的改变量是不 相等的:在决策边界附近的样本对决策边界的影响要远大于远离决策边界的样本。因此,如 果只关注与那些分布在决策边界附近的少数样本,我们便可W大大减少需要用来训练的样 本,从而对BP神经网络训练时间有较明显的降低,同时还能够获得与原始BP神经网络相当 的分类精确度。

【发明内容】

[0006] 针对现有基于BP神经网络的手写字体识别技术在处理大数据集时训练时间过长、 实用性不高的问题,本发明的解决方案是提供了一种基于动态样本选择策略的神经网络技 术来实现手写字体识别,采用BP神经网络来训练网络权重,采用梯度下降法来优化算法模 型。将动态样本选择策略与BP神经网络相结合,从而提出一种基于动态BP神经网络的手写 字体识别系统。该系统能够有效地识别手写数字。
[0007] 本发明解决其技术问题所采用的技术方案:首先系统根据手写字体的特征来确定 所采用网络的结构和识别的策略,随机初始化各层网络神经元权值;其次系统采用梯度下 降法来优化网络权重,设置梯度下降法学习步长、充量因子、最小停止误差和最大迭代次 数;在第一轮迭代中,使用所有的样本来计算总梯度,再使用总梯度来更新各层权值,并根 据样本是否远离决策边界来判断是否该作为下一轮迭代的训练样本;重复使用上一轮选好 的训练样本来计算总梯度、更新各层权值、并选择下一轮迭代的样本直到达到最小停止误 差或最大迭代次数再停止;最后使用所得到的神经网络对未知手写字体样本进行识别。
[0008] 本发明所采用的技术方案还可W进一步完善。所述的确定神经网络结构的方法是 根据具体数据的先验信息来人工确定的,可W采用经验与实践相结合的方法来确定更合适 的网络结构,如网络层数、隐层神经元个数、节点激活函数类型等。采集的训练集样本除了 从相关学术网站上下载手写字体数据外,还可W通过手写板或摄像头采集现实中的手写字 体样本,两者综合一起训练可W有效提高识别正确率。所述的动态样本选择策略采用的是 判别样本是否离决策边界较近来进行动态选择,能够有效地一步步减小训练样本的数量。
[0009] 本发明有益的效果是:利用样本离决策边界的距离来动态选择样本,实现训练样 本数的一步步减小;通过将动态样本选择策略与BP神经网络结合在一起应用于手写字体识 另IJ,提出基于动态样本选择策略的BP神经网络手写字体识别系统,能够动态地再选择训练 样本,实现将样本动态选择与分类器训练过程结合在一起;采用梯度下降法来训练BP神经 网络模型并在每步迭代之后对样本进行重采样,实现对训练样本动态采样;通过将动态采 样与模型训练相结合,实现了算法能有效地解决BP网络在大数据集上训练时间过长的问 题。
【附图说明】
[0010] 图1是本发明的基于动态样本选择策略的BP神经网络手写体识别的系统框架。
【具体实施方式】
[0011] 下面结合附图和实施例对本发明作进一步介绍:本发明的方法共分为=大步骤。
[0012] 第一步:数据采集与初始化网络。
[0013] 系统主要采用MNIST手写数字数据库作为训练的样本集,并分出一小部分未经训 练的样本来验证网络识别正确率,并运用PCA和LDA两种方法对高维手写字体数据进行降 维,转换成向量形式,W作为最后的训练样本和验证集。
[0014] 系统根据大数据集的规模来确定所采用网络的结构,随机初始化各层网络神经元 权值。网络结构的初始化包括网络各层节点数,网络所采用的活化函数类型;网络参数初始 化包括各个神经元权值初始化,训练样本的训练目标的确定,样本动态选择阔值。对网络结 构和网络参数的初始化包括W下几个步骤。
[0015] 1)初始化神经网络结构:根据大数据集的规模,包括样本维度、样本数目来确定神 经网络的结构,其中包括神经网络层数、每层神经元个数。隐层节点数鶴,由人工根据经验 进行设置;神经网络权值懇随机初始化为-1到1之间的随机数;对于特定问题,可W通过人 工经验的方法来确定网络结构。网络点的激活函数采用Sigmoid函数。
[0016] 2)设置网络模型训练参数:梯度下降法的学习率P设为0.05、充量因子
,样本动态选择阔 的 20%。
[0017] 第二步:网络的训练。
[0018] 由于我们采用1对1分解技术来识别0到9运十个数字,可W将原来的一个多类识别 问题转化为45个二类识别问题,所W-共需要训练45个BP网络(分类器),每个分类器识别 两个不同的数字。其训练方法如下。
[0019] 系统采用梯度下降法来优化网络模型,设置梯度下降法学习率、充量因子和最大 迭代次数;在第一轮迭代中,随机挑选20%的样本来计算总梯度,再使用总梯度来更新各层 权值,并根据样本的网络输出值与正确值间的差是否大于所设置的阔值来选择作为下一轮 迭代的训练样本;重复使用上一轮选好的训练样本来计算总梯度、更新各层权值、并选择下 一轮迭代的样本直到达到最大迭代次数或误差达到最小停止误差为止。网络模型优化包括 W下几个步骤。
[0020] 1)计算网络的误差平方和I,:
其中,f为样本总数,? J分别为样本趕的训练目标和网络的实际输出值; 样本与决策边界的判别距离可表示为:
其中,表示的是第立个样本的网络输出值,S表示的是相应样本的真值。
[0021] 2)计算网络在样本集S上的梯
其中紫为连接隐层第i个神经元 与输出层第j个神经元的权值。为了求得我们可W通过链式积分法则得到:
其中,综謀g为上一轮训练后输出层的第k个神经元的输出值。对于隐层到输出层来说,
其中,Il为一个样本训练后隐层的第j个神经元的输出值,I驚絳每I为输出层的第 神经元的活化函数导数值。所Pi,从隐房到输出房的巧值审新规则为:
由于我们采用的是BP神经网络,其通过梯度下降法更新输入层到隐层之间的权重与更 新隐层到输出层之间的权重的方法相同,所W输入层到隐层的权值更新规则为:
其中,为样本对应的梯度值。在第次迭代W后,从隐层到输出层之间的充量 袭鞋和麵通过W下公式计算.
因此,一轮训练完盾 ]总梯度&滅\;为: 从输入层到隐层之 其中,¥^巧和鳴游…礙分别是第巧日第J-I轮训练之后对应网络从隐层到输出层之 间的权值; 同理可得:在第J轮训练W后,从输入层到隐层之间的充量%裝#轉通过W下公式计 算:
更新网络权值:根据上面所得到的从隐层到输出层之间的权值梯度織和充量 菱錢錢寺潑,可得其权值踩;;直第雜训练之后更新为:
其中,Il为充量因子; 同理可得:从输入层到隐层之间的权值在第J轮训练之后更新为。
[0022] 3)重新选择训练样本集S:对于整个样本i...........样本的判别距离为
P:%lk。按照如下步骤重新选择训练样本:
End End
其中,样本的判别距 第2步中计算得到。
[0023] 4)如果迭代次I ,,跳转至第2步继续训练网络模型;反之,则执行第5 步。
[0024] 第=步:对未知样本进行分类预测。
[00巧1 诵讨笛^击的对网络摇巧讲斤优化之后,系统将可^对未知样本进行分类。网络 权值
,其中表示输入层与隐层之间的权值;巧丢。为 隐层与输出层之间的权值;分别表示隐层神经元和输出层神经元的偏移量。网 络隐层输出f为, 网络输出层
由于采用1对1分解技术且采用的活化函数的值域为(0,1),所W可预先设置每个分类 器的分类结果为0类和1类,根据Z是否大于0.5进行分类,再把结果转换为预先定义好的该 分类器所针对分类的两个不同数字。
[0026] 上文中,参照附图描述了本发明的【具体实施方式】。但是本领域的普通技术人员能 够理解,在不偏离本发明的精神和范围的情况下,还可W对本发明的【具体实施方式】作各种 变更和替换。运些变更和替换都落在本发明权利要求书所限定的范围内。
[0027] 实验结果 为了验证我们所提方法的有效性,我们将未经改进的原始BP神经网络和改进过的动态 BP神经网络在MNIST数据库上进行对比实验;MNIST数据库拥有0到9十个数字约60000幅的 手写数字图片作为训练集,并有10000幅手写数字图片作为验证集。运些图片都是标准灰度 位图,分辨率为28X28;实验在Inter Xeon CPU 2.20GHz 16GB RAM运行Windows 7 64位系 统mat lab 2013a平台进行验证。
[0028] 对比算法的参数设置如下:所设及到的原始BP神经网络和动态BP神经网络采用相 同的网络结构和参数W方便比较;网络结构为:输入层784个节点、隐层7个节点、输出层1个 节点,记为[784-7-1];网络的参数为:学习率P设为0.05、充量因3
、最大迭代 次数
[0029] 实验结果如表1所示。从实验结果来看,基于动态样本选择策略的BP神经网络训练 速度相较于原始BP网络大大加快,而手写字体识别率则大致相当。运验证了所提方法在大 数据集训练速度方面的优势,体现了所提方法的有效性,可W提高神经网络技术用于手写 字体识别问题的实用性。 「AAOAl 丰 1 1JATT杂片 4* 口 出口八杂片 4* 口

【主权项】
1. 一种基于动态样本选择策略的BP神经网络手写体识别系统,其具体步骤是: 1) 、系统根据手写字体的特征来确定所采用网络的结构和识别的策略,随机初始化各 层网络神经元权值; 2) 、系统采用梯度下降法来优化网络权重,设置梯度下降法学习步长、充量因子、最小 停止误差和最大迭代次数;在第一轮迭代中,使用所有的样本来计算总梯度,再使用总梯度 来更新各层权值,并根据样本是否远离决策边界来判断是否该作为下一轮迭代的训练样 本;重复使用上一轮选好的训练样本来计算总梯度、更新各层权值、并选择下一轮迭代的样 本直到达到最小停止误差或最大迭代次数再停止; 3) 、使用所得到的神经网络对未知手写字体样本进行识别。2. 根据权利要求1所述的基于动态样本选择策略的BP神经网络手写体识别系统,其特 征在于:所述的BP神经网络包括网络层数和每层神经元节点个数;所述的神经元权值指的 是各层神经元节点相互连接的权值。3. 根据权利要求1所述的基于动态样本选择策略的BP神经网络手写体识别系统,其特 征在于:所述的采用梯度下降法来迭代优化网络模型指的是对网络目标函数进行求负梯 度;然后,根据所求的负梯度,对各层神经元节点权值进行更新。4. 根据权利要求1所述的基于动态样本选择策略的BP神经网络手写体识别系统,其特 征在于:所述的动态样本选择指的是在每一轮迭代训练完成后,选择那些距离决策边界较 近的样本作为下一轮训练的样本;所述的距离决策边界较近指的是样本的网络输出值与正 确值之间的差大于预先设置的阈值。5. 根据权利要求1所述的基于动态样本选择策略的BP神经网络手写体识别系统,其特 征在于:所述的手写字体识别采用1对1分解技术,若需要分类的字数为N个,一共训练N*(N-1)/2个神经网络,每个网络分类2个不同汉字。6. 根据权利要求1所述的基于动态样本选择策略的BP神经网络手写体识别系统,其特 征在于:所述的对未知手写字体样本进行识别包括根据所得的网络权值求出未知样本的网 络输出,根据Ν*(Ν-1)/2个神经网络各自的识别结果进行投票,票数最多的数字即为最终的 识别结果。
【文档编号】G06N3/08GK106022273SQ201610346450
【公开日】2016年10月12日
【申请日】2016年5月24日
【发明人】李冬冬, 凤伟, 王喆, 范奇, 曹真
【申请人】华东理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1