基于权值动量的rbm加速学习算法研究-李飞.pdf
《基于权值动量的rbm加速学习算法研究-李飞.pdf》由会员分享,可在线阅读,更多相关《基于权值动量的rbm加速学习算法研究-李飞.pdf(18页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第43卷第7期 自动化学报V0143No72017年7月 ACTA AUTOMATICA SINICA July,2017基于权值动量的RBM加速学习算法研究李飞 高晓光 万开方-摘要动量算法理论上可以加速受限玻尔兹曼机(Restricted Boltzmann machine,RBM)网络的训练速度本文通过对现有动量算法进行仿真研究,发现现有动量算法在受限玻尔兹曼机网络训练中加速效果较差,且在训练后期逐渐失去了加速性能针对以上问题,本文首先基于Gibbs采样收敛性定理对现有动量算法进行了理论分析,证明了现有动量算法的加速效果是以牺牲网络权值为代价的;然后,本文进一步对网络权值进行研究,发现网
2、络权值中包含大量真实梯度的方向信息,这些方向信息可以用来对网络进行训练;基于此,本文提出了基于网络权值的权值动量算法,最后给出了仿真实验实验结果表明,本文提出的动量算法具有更好的加速效果,并且在训练后期仍然能够保持较好的加速性能,可以很好地弥补现有动量算法的不足关键词深度学习,受限玻尔兹曼机,动量算法,权值动量引用格式李飞,高晓光,万开方基于权值动量的RBM加速学习算法研究自动化学报,2017,4a(7):1142-1159DOI 1016383jaas2017c160325Research on RBM Accelerating Learning Algorithm with Weight
3、MomentumLI Feil GAO XiaoGuan91 WAN KaiFan91Abstract Momentum algorithms can accelerate the training speed of restricted Boltzmann machine theoreticallyThrough a simulation study on existing momentum algorithmsj it is found that existing momentum algorithms for trainingrestricted Boltzmann machine ha
4、ve a poor accelerating effect and they began to lose acceleration performanceIn thelatter part of training processFocusing on this problem,firstly,this paper gives a theoretical analysis of the algorithmsbased on Gibbs sampling convergence theoremIt is proved that the acceleration effect of existing
5、 momentum algorithmsis at the expense of enlarging network weightsThena further investigation on network weights shows that the networkweights contain a lot of information of the true gradient direction which can be used to train the networkAccording tothis,a weight momentum algorithm is proposed ba
6、sed on the weight of the networkFinally,simulation results demon-strate that the proposed algorithm has a better acceleration effect and has the accelerating ability even in the end of thetraining processTherefore the proposed algorithm can well make up for the weaknesses of existing momentum algori
7、thmsKey words Deep learning,restricted Boltzmann machine(RBM),momentum algorithm,weight momentumCitation Li Fei,Gao Xiao-Guang,Wan Kai-FangResearch on RBM accelerating learning algorithm with weightmomentumActa Automatica Sinica,2017,43(7):1142-1159自2006年Hinton等【1 J提出第一个深度网络开始,经过十年的发展,深度学习已逐渐成为机器学习研
8、究领域的前沿热点深度置信网络【2J、深度卷积神经网纠引、深度自动编码机4】等深度网络也广泛应用于机器学习的各个领域,如图像识别5】、语音分析66、文本分析7、游戏8-9】、控制10、环境保护11相对于传统的机器学习网络,深度网络取得了更好的效果,极大地推动了技术发展水平(Stateof-theart)12尤其在大数据背景下,针对海量无标签数据收稿日期20160411 录用日期20160930Manuscript received April 112016:accepted September 30,2016国家自然科学基金(61305133,61573285)资助Supported bv Na
9、tional Natural Science Foundation of China(61305133,61573285)本文责任编委魏庆来Recommended by Associate Editor WEI Qing-Lai1西北工业大学电子信息学院西安7101291School of Electronics and Information,Northwestern Polytechnical UniversityXi 7an 710129的学习,深度网络具有明显的优势【13j受限玻尔兹曼机(Restricted Boltzmann ma-chine,RBM)14】是深度学习领域中的一个重
10、要模型,也是构成诸多深度网络的基本单元之一它具有两层结构,在无监督学习下,隐层单元可以对输入层单元进行抽象,提取输入层数据的抽象特征当多个RBM或RBM与其他基本单元以堆栈的方式构成深度网络时,RBM隐层单元提取到的抽象特征可以作为其他单元的输入,继续进行特征提取通过这种方式,深度网络可以提取到抽象度非常高的数据特征当采用逐层贪婪(Greedy layerwise)【2 J方法对深度网络进行训练时,各个基本单元是逐一被训练的因此,RBM训练的优劣将直接影响整个深度网络的性能2002年,Hinton提出了对比散度(Contrastivedivergence,CD)算法用以训练RBM网络,通过一条
11、Gibbs采样链来近似目标梯度,取得了良好万方数据7期 李飞等:基于权值动量的RBM加速学习算法研究的训练效果,是目前RBM训练的标准算法为克服CD算法采样初值较差的缺点,2008年,Tieleman以CD算法为基础,提出了持续对比散度(Persistent contrastive divergence,PCD)算法-16J,它以上次采样迭代的采样值作为下次采样迭代的初值继续迭代,加快了Gibbs采样链的收敛速度为了加速PCD算法,Tieleman等又于2009年提出了加速持续对比散度(Fast persistent contrastive divergence,FPCD)算法【17J,引入了
12、额外的加速参数提高采样速度为提高Gibbs采样链的混合率,Desjardins等f2010)isJ、Cho等(2011)【19J、Brakel等(2011)20】分别提出应用并行回火算法(Paralleltempering,PT)来训练RBMPT算法在不同温度下并行化多条Gibbs采样链,不同温度下的Gibbs采样以一定的交换概率进行交换,相对于一条Gibbs采样链,PT算法具有更高的采样混合率针对复杂分布,尤其是多模分布,PT算法的训练效果要明显优于CD算法121J动量算法作为梯度加速项可以与以上算法结合加速RBM网络的训练效果1964年,Polyak22 J提出了经典动量方法(Classi
13、cal momentum,CM),它通过一个速度V来积累梯度,在梯度下降算法中可以加快收敛速度,该算法在整个机器学习领域已经取得了广泛的成功2010年,Fischer等【23J发现经典动量算法在RBM网络训练中效果较差,甚至在一些实验中根本无法起到加速效果2012年,Hinton在文献24中推荐使用动量算法来加速RBM网络的训练速度,但并没有给出相应的实验结果2013年,Sutskever等25为训练深度网络,提出了基于Nesterov加速梯度算法的Nesterov动量(Nesterovmomentum,NM)算法该算法在一定程度上克服了经典动量算法的不稳定性和方向误差,在深度自动编码机和深度
14、递归神经网络等深层网络中取得了良好的效果2015年,Zarea等26将该动量算法应用到受限玻尔兹曼机训练中,从仿真结果来看,效果并不是很明显基于以上描述,本文将在后续章节分别对下列问题进行研究:第1节,现有动量算法在训练RBM网络的过程中存在哪些问题;第2节,造成这些问题的原因是什么;第3节,如何弥补现有动量算法的这些不足;最后,第4节,仿真实验部分给出了具体的仿真结果和详细分析1背景知识本节对本文所需背景知识进行简要介绍,给出了受限玻尔兹曼机模型及其训练算法、传统动量算法的简要描述11受限玻尔兹曼机受限玻尔兹曼机是一个马尔科夫随机场模型【21】,它具有两层结构,如图1所示下层为输入层,包含m
15、个输入单元Vt,用来表示输入数据,每个输入单元包含一个实值偏置量ai;上层为隐层,包含n个隐层单元h一,表示受限玻尔兹曼机提取到的输人数据的特征,每个隐层单元包含一个实值偏置b,受限玻尔兹曼机具有层内无连接,层问全连接的特点即同层内各节点之间没有连线,每个节点与相邻层所有节点全连接,连线上有实值权重矩阵伽汾这一性质保证了各层之间的条件独立性吃 吃图1 RBM结构Fig1 Configuration of RBM本文研究二值RBM,即随机变量(V日)取值(V,h)o,1)由二值受限玻尔兹曼机定义的联合分布满足Gibbs分布P(v,)=去e一功”,M,其中p为网络参数口=nt,bj,叫o),Ee(
16、u,h)为网络的能量函数:历为配分函数:zo=讪e-Ee(”M输入层节点”的概率分布P(u)为:P(u)=瓦1e一胁”M由受限玻尔兹曼机各层之间的条件独立性可知,当给定输入层数据时,输出层节点取值满足如下条件概率:P(hk=1Iv、=11+exp(-b3一wijvi)si黜id bj+蚴忱)相应地,当输出层数据确定后,输入层节点取值的条件概率为P2 1|?2 d_;exp玎南aw h21+ lt一: tj)b幻。触一吼m汹一魄叼伽。芦。H一=埘p马万方数据1144 自 动 化 学 报 43卷sigm。id(8t+妻i=1谢巧九,)给定一组训练样本S=v1,V2,口“,训练RBM意味着调整参数臼
17、,以拟合给定的训练样本,使得该参数下由相应RBM表示的概率分布尽可能地与训练数据的经验分布相符合本文应用最大似然估计的方法对网络参数进行估计,这样,训练RBM的目标就是最大化网络的似然函数:Lo,。=n竺。P(v2)为简化计算,将其改写为对数形式:1n Lo,。=扛n 1 In P(v)进一步推导对数似然函数的参数梯度 掣=一脚)掣+即掣=Vi一P(u)掣=一车脚,掣+即号=P(h产lI口)一尸(口)P(九汹Iu)掣=一莓脚,掣+ 即掣=P(h3=1Iv)v+P(v)P(hj:,咖i (4)得到对数似然函数的参数梯度后,可以由梯度上升法求解其最大值但由于数据分布P(v)未知,且包含配分函数乙,
18、因此,无法给出梯度的解析解现有训练算法主要是基于采样的方法,首先构造以P(v)为平稳分布的马尔科夫链,获得满足P(v)分布的样本,然后通过蒙特卡洛迭代来近似梯度:Va产口:m一口:2Vbj=P(h广1妒)一P(h广1Iv()V叫巧=P(h严1 Iv(o)u:叭一P(h严i lv(2):(5)其中,u:o为样本值,钞!。为通过采样获得的满足P(v)分布的样本最后,参数更新方程如下:ai=ai+卵Voi统=bi+rlVbiWij=Wij+?7VWij (6)现有RBM训练算法,包括对比散度(Contrastivedivergence,CD)算法、并行回火(PT)算法,都是以Gibbs采样为基础的,
19、都是通过多步Gibbs采样获得一定精度的目标样本,然后分别通过其他后续操作获得最终的目标梯度CD算法是RBM训练的主流算法,下面首先给出CD算法【2l】:算法1Contrastive divergenceInputRBM(,甄,巩),trainingbatch SOutputwij,aj and bi for i=1,咒,J=1,一,Tn1:Init V叫订=V=Vbi=0 for i=1,n,J=1,m2:For all the VS do3:u(o)卜V4:for t=0,一,k一1 do5: for i=1,n do sample磷一p(htIv(。)6:for J=1,m do sam
20、ple秽rup(口jlh(。)7:for i=1,一,n,J=1,m do8:Vw巧=p(鼠=1i口(o)秽一p(甄=l眇2)口;2)9:Va产口:叭一口!。)10:Vbj=p(日=1Iv(o)一p(玛=0iv(约)11:wij=wij上,Vwij12:a=ai+即Voi13:bj=bj一-?TVbj14:End for其中,a为可见层偏置向量,b为隐层偏置向量,W为网络权值矩阵,叼为学习率1,2动量算法经典动量方法(Classical momentum,CM)22】如图2(a)所示,在梯度下降算法中,其中u为累计速度,Vg(Ot)为目标函数在当前点的梯度,它通过累计速度与当前梯度的差值来调整
21、目标梯度,从而加快收敛速度RBM模型是基于梯度上升法进行训练的,因此经典动量方法在RBM模型下的参数更新公式为式(7),其中肛为累计速度参数,卵为学习室Vt+l=#vt+vvg(ot)口t+1 2 0t+Vt+1Nesterov动量(Nesterov momentum,NM)25万方数据7期 李飞等:基于权值动量的RBM加速学习算法研究如图2(b)所示与CM不同的是,NM不是计算目标函数在当前点的梯度,而是首先由当前时刻的累计速度对目标函数的参数进行调节,计算吼+仇的梯度,然后才对目标梯度进行调节,在RBM模型下的NM参数更新公式如式(8),其中p为累计速度参数,叼为学习率vt+1=肛仇+叼v
22、9(0t+p仇)0t+1=0t+V计1 (8)图2动量示意图Fig2 Momentum diagram2问题描述由第51节中给出的网络模型和训练策略,得到CD算法和传统动量算法在MNIST数据集上的训练效果对比图其中CD表示原始CD算法,CM表示加入经典动量项的CD算法,NM表示加入Nesterov动量项的CD算法图3和图4给出了三种算法的仿真对比图,由仿真结果可以看出,CM算法和NM算法可以加快RBM训练过程的收敛速度,但仍存在以下问题:1)加速效果不明显如图3所示,CM算法和NM算法的收敛曲线与CD算法的收敛曲线问隔较小,考虑每次迭代额外增加的计算量的前提下,这两种动量方法并没有达到预想的
23、效果图3重构误差对比图Fig3 Compassion of reconstruction errors2)训练后期加速失效随着迭代的进行,CM算法和NM算法的误差曲线逐渐与CD算法重合如图4所示,CM算法与NM算法与CD算法的重构误差的差值逐渐收敛到0,这说明在训练后期,CM算法和NM算法逐渐失去了加速效果图4重构误差差值对比图Fig4 Compassion of the difference ofthe reconstruction errors3问题分析RBM网络的训练算法都是基于Gibbs采样的,Gibbs采样链的收敛性质,即采样混合率,是影响训练算法性能的本质因素因此,本节首先基于Gi
24、bbs采样收敛性理论对以上算法和问题进行分析31基于Gibbs采样收敛性的理论分析311 Gibbs采样链收敛性定理由于在RBM网络中,可见层偏置向量a和隐层偏置向量b都是极小值,相对于网络权值W可以忽略不计因此,本文在研究网络参数的时候,只对网络权值W进行研究下面首先给出Gibbs采样收敛性定理:定理1 RBM网络下,Gibbs采样链的混合率随网络权值量级的增大而逐渐降低21,27_2引证明RBM网络基于式(2)和(3)进行Gibbs迭代,以此完成参数更新当网络权值W的量级逐渐增大时,即lWI_+。,可推理出如下结果:765432,O遥删删嗤蜒删叫一或或机+11嘶胁毗毗。错甜一一0k山1万方
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 动量 rbm 加速 学习 算法 研究 李飞
限制150内