基于多目标优化的稀疏受限玻尔兹曼机的手写体识别方法与流程

文档序号:13005574阅读:273来源:国知局
基于多目标优化的稀疏受限玻尔兹曼机的手写体识别方法与流程

本发明属于深度学习和进化计算相结合的技术领域,涉及一种基于稀疏受限玻尔兹曼机的手写体识别方法,具体涉及一种基于多目标优化的稀疏受限玻尔兹曼机的手写体识别方法,可用于图像识别领域和深度神经网络的特征降维。



背景技术:

神经网络的发展使得图像识别领域取得惊人进展,从而推动人工智能和人机交互的踏步前进。1986年hinton在mitpress的第一卷发表的《learningandrelearninginboltzmannmachines》,该文献提出玻尔兹曼机(bm),bm是一种根植于统计力学的随机神经网络,其具有强大的无监督学习能力,能够学习数据中复杂的规则。但是玻尔兹曼机结构复杂,训练的时间非常长。smolensky在1986年专著《informationprocessingindynamicalsystems:foundationsofharmonytheory》中引入一种限制玻尔兹曼机(rbm),rbm具有很好的性质,在一些问题上取得了较好的效果。2006年,hinton在neuralcomputation的18卷第7期发表的《afastlearningalgorithmfordeepbeliefnets》,该文献提出一个深度信念网络(dbn)被视为由若干个限制玻尔兹曼机(rbm)堆叠在一起,并给出该模型的一个高效学习算法。这个算法成为了其后至今深度学习的主要框架之一。

手写体识别是多年来的研究热点问题。随着经济的迅速发展,手写体识别系统还会有更大的应用空间,这就要求手写体识别的误差率达到一个更低水平。研究者提出了许多方法解决手写体识别问题,按照使用的特征不同,这些方法可以分为两类:基于几何结构特征方法和基于统计特征方法。基于统计特征方法是利用点密度、特征区域等统计特征进行手写体识别,其优点是易训练且可降低书写随意性的干扰,但是由于其单一向的局限性导致手写体识别的误差率较高。由rbm组成的神经网络这种基于统计特征方法在手写体识别问题取得了较低的误差率,但是如果只是单纯地利用rbm提取特征则会产生冗余,识别效果就会降低,所以许产生了许多rbm的优化方法。目前rbm的优化方法可分为基于扩增数据集的优化算法和基于稀疏规则项的优化方法两类,其中,基于稀疏规则项的优化方法的原理是通过在优化函数中加入稀疏规则项,从而将先验知识人为的加入优化过程中,获得稀疏受限玻尔兹曼机(srbm)优良的特征如低秩、稀疏、平滑等,从而获得较低的识别误差率。例如2014年,姬楠楠等人在patternrecongnit第47卷第9期发表文章《asparse-responsedeepbeliefnetworkbasedonratedistortiontheory》,公开了一种基于率失真理论的稀疏受限玻尔兹曼的手写体识别方法,该文献基于率失真理论提出sr-rbm,其原理是在原来传统受限玻尔兹曼机的基础上增加了一范数稀疏规则项,实现特征的自动选择,从而降低识别误差率。但是,该方法需要人为定义稀疏规则项在优化函数中所占的权重,该方法中权重参数的存在会影响手写体识别的识别效果和误差率。



技术实现要素:

本发明的目的在于克服上述现有技术存在的缺陷,提出了一种基于多目标优化的稀疏受限玻尔兹曼机的手写体识别方法,用于解决现有技术中存在的识别误差率高的技术问题。

为实现上述目的,本发明采取的技术方案包括如下步骤:

(1)获取归一化训练集v和测试集t:

将手写体数据库的一部分作为训练集,一部分作为测试集,并对训练集和测试集进行归一化,得到归一化训练集v和测试集t;

(2)设定稀疏受限玻尔兹曼机的优化迭代停止次数s,优化计数器的值c,并初始化c=1;

(3)对稀疏受限玻尔兹曼机进行优化:

将归一化训练集v作为稀疏受限玻尔兹曼机的输入,利用对比散度算法,对稀疏受限玻尔兹曼机进行优化,得到稀疏受限玻尔兹曼机的优化参数:权重参数w、可视单元v的偏置a和隐单元h的偏置b,并令c=c+1;

(4)从步骤(3)产生的b中随机选取m个参数,组成数据集ds;

(5)利用多目标进化算法对数据集ds进行优化,得到优化数据集ds';

(6)对稀疏受限玻尔兹曼机隐单元h的偏置b进行更新:

利用优化数据集ds'替换稀疏受限玻尔兹曼机隐单元h的偏置b中对应的参数,得到稀疏受限玻尔兹曼机隐单元h的偏置b';

(7)获取归一化训练集v的输出o:

将归一化训练集v输入到权重参数w、可视单元v的偏置a和隐单元h的偏置b'的稀疏受限玻尔兹曼机中,得到归一化训练集v的输出为o;

(8)利用归一化训练集v的输出o对softmax分类器进行训练:

将训练集v的输出o输入到softmax分类器中进行训练,得到权重w0和偏置b0的softmax分类器中,得到训练好的softmax分类器;

(9)判断优化计数器的值c是否达到优化迭代停止次数s,若是,执行步骤(10),否则,执行步骤(3);

(10)对归一化测试集t进行预测分类:

(10a)将归一化测试集t输入到权重参数w、可视单元v的偏置a和隐单元h的偏置b'的稀疏受限玻尔兹曼机中,得到测试集t的输出ot;

(10b)将测试集t的输出ot输入到训练好的softmax分类器中,得到测试集t的分类标签,实现对手写体的识别。

本发明与现有技术相比,具有如下优点:

本发明利用多目标优化算法优化稀疏受限玻尔兹曼机,充分利用多目标解决互相冲突的目标函数的能力,克服了现有技术中权重参数影响识别误差率的问题,有效地降低了识别误差率。

附图说明

图1是本发明的实现流程图;

图2是本发明采用的稀疏受限玻尔兹曼机的结构示意图;

图3是仿真所用的手写数字mnist数据集中的样例图;

图4是基于率失真理论的稀疏受限玻尔兹曼机对mnist训练集进行识别的仿真结果图;

图5是本发明对mnist训练集进行识别的仿真结果图。

具体实施方式

下面结合附图和具体实施例,对本发明作进一步的描述。

参照图1,一种基于多目标优化的稀疏受限玻尔兹曼机的手写体识别方法,包括如下步骤:

步骤1)获取归一化训练集v和测试集t:

将手写体数据库的一部分作为训练集,一部分作为测试集,并对训练集和测试集进行归一化,得到归一化训练集v和测试集t;

对训练集、测试集进行归一化预处理操作:归一化操作指将选定后的每张训练集图片的像素值由0到255批处理操作,归一化到0到1,得到归一化后的训练集和测试集;原始的数据集图片中每个点的像素值均为0到255的整数值,这些整数值代表不同级别的灰度值,归一化的操作就是将这些0到255的整数值变成0至1范围内的小数值,此时的手写数字训练集为归一化训练集;

步骤2)设定稀疏受限玻尔兹曼机的优化迭代停止次数s,优化计数器的值c,并初始化c=1;

稀疏受限玻尔兹曼机的结构如图2所示,其包括两层结构:可视单元和隐单元。v0和h0分别代表第0个可视单元、第0个隐单元。只有可视单元和隐单元之间存在连接,隐单元层内或者可视单元层内无连接。根据归一化训练集图像大小均为28*28的灰度图像,所以本发明的方法的可视单元v的数量784,可视单元的偏置记做a;隐单元h的个数本发明设置为196个,隐单元的偏置记做b;学习率ε设置为0.3,动量项设置为[0.5,0.4,0.3,0.2,0.1];动量项的意义使本次参数值修改的方向不完全由当前样本下优化函数的梯度决定,而是采用上一次参数值修改方向与本次梯度方向的组合,可以避免算法过早地收敛到局部最优点;为了减少网络的训练时间,本发明将大批量的数据分为小批次,每次批处理数据大小为100;识别的误差率会随着优化次数的增加而降低,但随着优化次数的增加误差率达到最小值;如果继续增加可能发生过拟合,从而增加误差率,本发明设定的优化迭代次数为150次;

步骤3)对稀疏受限玻尔兹曼机进行优化:

将归一化训练集v作为稀疏受限玻尔兹曼机的输入,利用对比散度算法,对稀疏受限玻尔兹曼机进行优化,得到稀疏受限玻尔兹曼机的优化参数:权重参数w、可视单元v的偏置a和隐单元h的偏置b,并令c=c+1;

训练函数表示如下:

本发明基于率失真理论,将输入数据的分布和稀疏受限玻尔兹曼机训练产生的平衡分布之间的kl差异作为优化函数;

一般来讲,可以利用梯度下降法来计算优化函数的梯度,但是,计算kl差异的梯度的计算是非常耗时的,因为达到平衡分布需要很长时间。但是,受限玻尔兹曼机可以看做一个隐马尔科夫随机场,所以可以利用对比散度算法来计算kl差异的梯度的近似值,然后对稀疏受限玻尔兹曼机的参数集进行优化,具体计算如下:

其中,参数集包括权重w,可视单元的偏置a,隐单元的偏置b;wij代表第i可视单元和第j隐单元之间的权重,ai代表第i可视单元的偏置,bj代表第j隐单元的偏置;ε表示学习率,其值为0.3;代表重构数据的期望,利用一次吉布斯采样得到;

步骤4)从步骤3)产生的b中随机选取m个参数,组成数据集ds;

因为现实中的数据集往往很大,如果对所有的参数进行优化,其训练时间是非常漫长的。因为隐单元的偏置直接控制学习特征的稀疏性,所以为了减少训练时间同时又不影响到训练结果的情况下,本发明随机选取一部分隐单元的偏置进行优化,这里ds的大小是100;

步骤5)利用多目标进化算法对数据集ds进行优化,得到优化数据集ds';其实现步骤为:

步骤5a)对目标函数进行分解,得到多个子问题:

所述的目标函数,其表达式为:

其中,m代表数据集ds的规模,m为50;将输入数据的分布p0和由稀疏受限玻尔兹曼机训练产生的平衡分布之间的kl差异作为第一个目标函数f1,将一范数||p(h(l)|v(l))||1作为第二个目标函数f2;将目标函数利用切比雪夫方法进行分解,并找出每个子问题最邻近的c个子问题集nc;根据经验,c的值一般选为20;

步骤5b)根据随机数函数随机生成m个个体,得到包含m个个体的第t代种群it,初始化t=1;

随机生成m个个体,其方法为:

x'=rand(0,1)

d=x-x'

其中rand(0,1)是随机生成范围[0,1]内的数,x代表数据集ds中的个体,d代表种群中的个体,种群大小m为50;

步骤5c)计算种群it中每个个体的适应度值,并从中选取适应度值最小的n个个体作为种群的最优解集合ep;

利用步骤5a)得到的子问题的计算个体的适应度值,根据经验,最优解集合ep的大小设定为30;

步骤5d)设定种群最大进化代数为g;

根据经验,最大循环次数g选为200时效果最好,所以g的值设定为200;

步骤5e)对种群it中的个体进行交叉,得到第t+1代种群it+1:

其中步骤5e)中对种群中个体进行交叉,交叉策略为:

vi,g=br1,t+f*(br2,t-br3,t)+f*(br4,t-br5,t)

br1,t...,br5,t是从第t代种群中随机挑选的个体;vi,g代表生成的第g代种群中的第i个个体,f是随机生成的扩展因子;

步骤5f)计算种群it+1中的每个个体适应度值,从种群it+1中选取适应度值最小的n个个体替换种群最优解集合ep中的所有个体,并令t=t+1;

最优解集合ep记录的就是当前种群中适应度值最小的n个个体,根据经验,设定n=30;

步骤5g)判断t是否达到最大的进化代数g,如果没有,则执行步骤5e),如果达到终止条件,则从最优解集合ep中选择一个解作为优化的的ds,记做ds';

利用angle-based方法从kneeareas中选择一个解作为最优解,需要在获得的pareto前端插入线,将解和其临近的解连接起来,选择其中角度最大的解作为目标函数的最优解;

步骤6)对稀疏受限玻尔兹曼机隐单元h的偏置b进行更新:利用优化数据集ds'替换稀疏受限玻尔兹曼机隐单元h的偏置b中对应的参数,得到稀疏受限玻尔兹曼机隐单元h的偏置b';

利用优化数据集ds'替换步骤4)中从稀疏受限玻尔兹曼机中隐单元h的偏置b中随机选取m个参数;

步骤7)获取归一化训练集v的输出o:

将归一化训练集v输入到权重参数w、可视单元v的偏置a和隐单元h的偏置b'的稀疏受限玻尔兹曼机中,得到归一化训练集v的输出为o;

将归一化训练集v输入稀疏受限玻尔兹曼机中,根据前馈计算得到输出o;

步骤8)利用归一化训练集v的输出o对softmax分类器进行训练:

将训练集v的输出o输入到softmax分类器中进行训练,得到权重w0和偏置b0的softmax分类器中,得到训练好的softmax分类器;

步骤9)判断优化计数器的值c是否达到优化迭代停止次数s,若是,执行步骤(10),否则,执行步骤(3);

步骤10)对归一化测试集t进行预测分类:

步骤10a)将归一化测试集t输入到权重参数w、可视单元v的偏置a和隐单元h的偏置b'的稀疏受限玻尔兹曼机中,得到测试集t的输出ot;

步骤10b)将测试集t的输出ot输入到训练好的softmax分类器中,得到测试集t的分类标签,实现对手写体的识别;

在softmax分类器中,本发明解决的手写体识别问题,其实就是多分类问题,类标y可以取u个不同的值,在mnist数据集识别任务中u=10。

以下通过仿真实验,对本发明的技术效果作进一步说明:

1、仿真条件和内容:

本发明和现有技术对mnist训练集进行识别的仿真都是在matlabr2011a中编程实现,仿真选用的数据集为mnist数据集,该数据集是由google实验室的corinnacortes和纽约大学柯朗研究所的yannlecun建立的一个手写数字数据库。mnist数据集的样例如图3所示,图像是28*28的手写体数字的灰度图像。mnist数据集包括两部分,一部分为测试集,一部分为训练集。本发明仿真所用的训练集是选取了mnist训练集的一部分,分别选定了100,500,1000,5000个训练样本。仿真所用的测试集是从mnist测试集中选取训练样本个数的20%作为测试集。

利用基于率失真理论的稀疏受限玻尔兹曼机的方法和本发明,对mnist训练集进行仿真识别,其结果如图4和图5所示。

2.仿真结果分析:

利用基于率失真理论的稀疏受限玻尔兹曼机的方法在权重参数为0.02、0.04和0.06及本发明,对mnist训练集进行仿真识别,识别误差率结果对比如表一所示。

表一

从表一可见,利用本发明的方法得到的识别误差率明显低于基于率失真理论的稀疏受限玻尔兹曼机的方法,验证了本发明对于手写体识别的优良识别效果。在基于率失真理论的稀疏受限玻尔兹曼机的方法中选取了不同权重参数以验证其识别误差率,从表一可见,不同的权重参数效果差异明显。本发明不需要选择权重参数,从而降低了手写体识别误差率。

参照图4,从中可见,其识别结果图轮廓不完整,边缘不清晰。

参照图5,从中可见,其识别结果图轮廓完整,边缘清晰。

从图4和图5对比可见,本发明的方法得到的识别结果图的轮廓更加完整且边缘更加清晰,从而降低了手写体识别误差率。表明本发明可以解决手写体识别等图像识别问题。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1