APP下载

深度信念网络研究现状与展望

2021-03-04王功明乔俊飞关丽娜贾庆山

自动化学报 2021年1期
关键词:权值信念神经元

王功明 乔俊飞 关丽娜贾庆山

人工神经网络是计算机模拟人类大脑处理信息的一种运算模式,即通过训练输入和输出数据,使网络得到关于输入和输出的非线性映射关系,从而在未来的任务中进行自主计算.因此,人工神经网络是计算机科学、认知科学、脑科学和数学的交叉学科,其在模式识别、智能控制、多种信号处理、优化设计等领域得到较大的发展,并已在信息产业中得到了成功的应用[1−5].20 世纪八十年代末期,用于人工神经网络的反向传播算法(Back-propagation,BP) 的发明,给机器学习带来了希望,掀起了基于统计模型的机器学习热潮.这个时候的人工神经网络虽然也被称作多层感知器(Multi-layer perceptron,MLP),但实际上是一种只含有一个隐含层的浅层人工神经网络模型.进入21 世纪以后,随着互联网的高速发展,对大数据的智能化分析和预测提出了巨大需求.由于浅层网络往往采用梯度类学习算法,人为经验因素较多,缺乏自主学习过程且对初始参数的设定依赖性较强[6−8],这限制了神经网络的特征自动提取能力,使得其在处理大规模不确定性数据时往往误差较大.生物神经系统学研究结果表明,人类的智能主要取决于大脑皮层,而大脑皮层是一个大规模互连的深层生物神经网络[9−11],主要认知方式是无监督自主学习与推理.探求大脑的组织结构和运行机制,从模仿人脑深层学习机制的角度出发,寻求新的信息处理方法是当前人工智能领域发展的优先方向.然而,由于理论分析的难度,加上训练方法需要很多经验和技巧,所以这个时期深层人工神经网络相对较为沉寂.

2006 年,加拿大多伦多大学教授、机器学习领域泰斗― Geoffrey Hinton 和他的学生Ruslan Salakhutdinov 在顶尖学术刊物《Science》上发表了一篇文章,开启了深度学习(Deep learning,DL)在学术界和工业界的浪潮[12−14].主要思想是利用“逐层初始化(Layer-wise pre-training)”来完成自主学习与推理过程,从而有效克服深层结构的训练困难.近几年来,深度学习凭借其模拟人脑分层学习和自主推理的认知机理逐渐成为研究热点[15],同时也带动了人工神经网络领域的进一步发展.由于深度学习能够在大量数据任务中快速稳定地计算,这推动了云计算、大数据科学的发展,如今已经在自然语义理解、模式识别问题、机器人学和数据挖掘等方面得到了较好的应用[16−19],甚至在机器情感分析方面也开始被研究,使得该领域朝着图灵机的实现又迈进了一大步.2016 年,利用深度学习技术训练过的阿尔法围棋(AlphaGo) 击败人类围棋冠军,引起了学术界和科技界的巨大轰动,并激起了人们对深度学习研究的再一次热潮.

目前,深度信念网络(Deep belief network,DBN) 是深度学习的主要实现方法之一.DBN 是具有若干潜变量层的生成模型.潜变量通常是二值的,而可见单元可以是二值或实数[20−21].尽管构造连接比较稀疏的DBN 是可能的,但在一般的模型中,每层的每个单元连接到每个相邻层中的每个单元,而层内没有连接.DBN 可以通过若干个受限玻尔兹曼机(Restricted Boltzmann machine,RBM)的顺序堆叠来构造,其学习过程分为两个阶段,即首先对RBM 进行逐层无监督预训练,再用反向传播算法对整个网络进行有监督的调优.DBN 的这种分阶段训练方法使其在学习深层结构上取得了一定的成功,并在图像处理、模式识别、系统建模和预测等任务中得到了关注和研究[20,22−27].

近年来,众多学者在现有DBN 结构和学习算法的基础上进行了拓展与改进,并提出了多种类型的DBN 变种模型.目前,比较常见的DBN 变种模型主要有稀疏DBN[28−29]、自组织DBN[26]、增量式DBN[27]、递归DBN[30].与传统的DBN 相比,改进型的DBN 分别在各自的聚焦点上取得了部分性能上的提升.但是,在结构自主确定方面,DBN 仍然存在一些难以解决的瓶颈问题,相关的研究工作还处于刚刚起步状态,在理论、技术以及应用层面上还有很大的提升空间,在未来一段时间内仍将是深度学习研究中比较热门的研究方向之一.

1 深度信念网络基本模型与概述

深度信念网络是为了简化逻辑斯蒂信念网络的推理困难而提出的一种深度模型,也是目前深度学习最主要的实现方式之一.DBN 可以通过受限玻尔兹曼机的顺序堆叠来构造,其学习过程分为两个阶段,首先是对RBM 进行逐层无监督预训练,然后再用反向传播算法对整个网络进行有监督的调优.本节重点介绍DBN 的无监督学习.RBM 和DBN 的结构分别如图1 和图2 所示.

图1 RBM 结构图Fig.1 Structure of RBM

图2 DBN 结构图Fig.2 Structure of DBN

给定模型参数θ=(wR,bv,bh),那么可视层和隐含层的联合概率分布P(v,h;θ) 用能量函数E(v,h;θ) 定义为

对于一个伯努利(可视层) 分布-伯努利(隐含层) 分布的RBM,能量函数定义为

其中,是RBM 的连接权值,bvi和bhj分别表示可视层节点和隐含层节点的偏置.那么条件概率分布可表示为

式中,σ(·) 是一个Sigmoid 函数.

由于可视层和隐含层是伯努利的二值状态,所以判断它们二值概率取值的标准常通过设定一个阈值来实现[31].

通过计算对数似然函数logP(v;θ) 的梯度,可以得到RBM 权值更新公式为

式中,τ和η分别表示RBM 的迭代次数和学习率,Edata(vihj) 和Emodel(vihj) 分别表示训练集中观测数据的期望和模型所确定分布上的期望[32].特别地,RBM 有一个有趣的性质,即当利用基于最大似然的学习规则训练时,连接两个神经元的特定权重的更新仅取决于这两个神经元在不同分布下收集的统计信息:Pmodel(v) 和网络的其余部分参与塑造这些统计信息,但是权值参数可以在完全不知道网络其余部分或这些统计信息如何产生的情况下更新.这意味着学习规则是“局部”的,这使得RBM 的学习似乎在某种程度上是符合生物学机理.我们可以设想每个神经元都是RBM 中随机变量的情况,那么连接两个随机变量的轴突和树突只能通过观察与它们物理上实际接触细胞的激发模式来学习.特别地,经常发生某种强烈的脉冲激励时的两个神经元之间的连接会被加强,这就是Hebb 学习规则的核心思想.Hebb 学习规则给出了生理学与心理学之间的内在联系,该规则至今仍被许多神经网络学习算法所使用.

作为一种深层网络模型,DBN 兼具生成模型和判别模型的双重属性.因为DBN 的预训练过程主要用来表达数据的高阶相关性或者描述数据的联合统计分布,具有生成模型的特点;DBN 有监督调优过程通常用来分类数据的内在模式或者描述数据的后验分布,具有判别模型的特点.这里的“生成”是指从隐含层到输入数据的的重构过程,而“判别”是指从输入数据到隐含层的归约过程.同时,作为一种生成模型,生成式对抗网络(Generative adversarial network,GAN) 近年来同样受到很大的关注并进行了广泛的应用[32−33].GAN 实质上属于一种基于深度学习的混合模型,其通过框架中生成模型和判别模型的互相博弈学习产生相当好的输出.从数据生成角度看,GAN 的数据生成过程是在有监督信号的反馈作用下完成的.而DBN 作为一种生成模型时,其监督信号是数据本身,即通过对原始数据的重构完成网络的训练,从而具有生成能力.具体应用中,DBN 常作为GAN 的生成模型,与判别模型进行对抗学习[32].

DBN 学习模型的优点是通过组合许多RBM,把上一层RBM 的特征激励作为下一层的训练数据,可以高效地对隐含层进行学习.递归神经网络(Recurrent neural networks,RNN),它的深度甚至可以达到和输入数据序列的长度一致.在无监督学习模式下,RNN 被用来根据先前的数据样本预测未来的数据序列,并且学习过程中没有用到类别信息.然而,RNN 在近几年才得以广泛使用,部分原因是由于在训练中遇到的梯度弥散或梯度爆炸问题,它很难通过训练来捕捉长时相关性.随着在Hessianfree 优化研究方面的进展,在一定程度上解决了这个问题,该方法使用了近似二阶信息或随机曲率估计.另外,RNN 没有基于无监督预训练的参数初始化过程,这也是其与DBN 在训练原理上的最大区别.

卷积神经网络(Convolutional neural networks,CNN) 是另一种具有判别性能的深度学习网络,它的每个模块都是由卷积层(Convolutional layer) 和池化层(Pooling layer) 组成.卷积层共享权值,池化层对卷积层的输出进行降采样,减少了下一层的数据量.研究发现,CNN 的应用主要集中于计算机视觉或者图像识别领域,并且效果较为出色[34].而DBN 的应用则广泛分布于计算机视觉和数据建模及预测等领域.另一种与DBN 相似的深度结构基本学习模型是自编码器(Auto encoder),自编码器主要用于完成数据转换的学习任务,在本质上是一种无监督学习的非线性特征提取模型.自编码器与DBN 也有着重要的区别,这种区别的核心在于:自编码器希望通过非线性变换找到输入数据的特征表示,它是某种确定论性的模型;而DBN 的训练则是围绕概率分布进行的,它通过输入数据的概率分布(能量函数) 来提取高层表示,是某种概率论性的模型.

另外,DBN 具有较多的超参数,可分为两类:一类是训练参数(如学习率和动量项);另一类是定义网络结构的参数(如网络层数和每层神经元数).前者的自动调优属于超参数优化(Hyperparameter optimization,HO) 的范畴,而后者的自动调优一般称为神经网络架构搜索(Neural architecture search,NAS).严格地讲,NAS 属于DBN 结构设计的方法之一,目前DBN 结构设计大多数通过提前赋值来完成,即在网络训练过程中结构不变,只有训练参数在不断调整.本文即将介绍的两种变结构设计策略(自组织结构和增量式结构) 对固定结构来讲是一种突破,但是与NAS 又存在区别,主要体现在:NAS 先定义搜索空间,然后通过搜索策略找出候选网络结构,对它们进行评估,根据反馈进行下一轮的搜索;而变结构策略只要是以某种触发机制或误差导向来实时调整结构规模.

2 深度信念网络结构分析与性能比较

2.1 固定结构深度信念网络

目前最为常见的DBN 应用形式是定结构模型,即在训练过程中DBN 结构固定不变.尽管现在与其他无监督或生成学习算法相比,固定结构的DBN大多已经失去了青睐并很少使用,但它们在深度学习历史中的重要作用仍应该得到承认[20].定结构DBN 在处理实际复杂数据时,无监督预训练和反向传播调优算法均具有提升和改进的空间,主要表现在预训练耗时和调优精度两方面.同时,定结构DBN 主要是通过足够的经验和充足的数据来确定其结构,且其结构一旦确定将不再调整,这导致定结构DBN 无法满足待处理数据的多样性变化要求.

众所周知,DBN 具有很强的计算和信息处理能力,但是它对于模式识别、感知以及在复杂环境中作决策等问题的处理能力却远不如人.神经生理学研究结果表明,人的智能主要取决于大脑皮层,而大脑皮层是一个大规模互连的生物深度神经网络.在处理不同信息时,生物深度神经网络会启用不同的神经元连接结构,也就是说,其采用的是一种变结构的信息处理机制[35].而在实际过程中,定结构DBN 只是通过改变权值参数来适应任务的变化,但如何构造一种DBN 使其结构在动态调整的同时不断调整权值参数,是今后DBN 发展的趋势,也是一个开放且尚未解决的问题[36].

2.2 稀疏深度信念网络

研究发现,现有的DBN 模型在学习过程中内部神经元之间的权值连接均是一种密集表述[37−38].然而,在深度学习算法中,一个主要的目的是独立地表述数据的差异[36],密集表述容易导致网络不稳定,因为任何输入上的扰动都会引起中间隐含层特征表述向量发生变化,甚至是巨变[38].稀疏表述就是用较少的基本信号的线性组合来表述大部分或者全部的原始信号.利用稀疏表述对DBN 进行稀疏连接训练,可以有效地降低输入扰动对中间隐含层特征表述向量的影响[39].无监督学习过程中的稀疏表述原理如图3 所示.

图3 稀疏表述原理图Fig.3 Sparse representation scheme

Lee 等[40]通过在RBM 训练过程中引入一个正则化惩罚项来降低密集表述的程度.具体来讲,首先设置一个隐含层神经元的期望激活强度值,然后惩罚隐含层神经元实际激活强度与期望激活强度之间的偏差.给定m组训练数据集其实现稀疏表述的优化问题为

其中,λ是正则化常数,µ是控制着第j个隐含层神经元稀疏度的期望激活强度值,通过这种提前给定期望激活阈值的方法可以实现一定意义上的稀疏表述.

为了使所有隐含层神经元能够以一定的概率或者波动性逼近期望激活强度值,Keyvanrad 等[41]通过引入正态函数的集中分布思想来控制网络的稀疏度.根据这种思想,对应于稀疏表述优化问题的正则化项可表示为

其中,σ是控制稀疏强度波动性的方差.

同时,应该注意到参数的设置对网络学习效果的影响是显著的[38],如果设置不当,要实现较高精度的建模并学习到正确的特征信息往往比较困难.因此上述稀疏表述方法虽然在网络性能的鲁棒性方面取得一定程度的效果,但对无监督学习的迭代次数和神经元数量等有一定依赖.

2.3 自组织深度信念网络

目前DBN 在应用中存在一个重要问题,即针对不同的问题,DBN 需要提前设置网络深度,然后利用经验法比较各种不同深度的精度和训练效果.这极大地制约了网络解决问题时的效率,使DBN 的进一步推广与应用受到很大限制.实际上,著名深度学习专家Bengio 在2009 年提出了一个与此类似的问题[36],该问题原文描述为:“Is there a depth that is mostly sufficient for the computations necessary to approach human-level performance of AI tasks?”.意思是,是否存在一个合适深度的DBN,可以用来尽可能像人类解决问题那样去解决大多数的AI 问题呢? 由于该问题比较笼统,涉及的学科范围太广,很难通过一个有效的数学方法来解决该问题,难以设计出包含较多的特征并具有代表性的实验对其进行验证,因此该问题在短时间内难以得到彻底的解决.目前,针对此问题的初步试探性解决方法有结构自组织策略和凑试法.本节只介绍结构自组织策略.

Qiao 等[26]提出了一种基于神经元激活强度和误差下降率最小化的结构自组织方法.首先,在无监督预训练阶段将隐含层神经元的激活强度作为神经元的“贡献度”,并根据“贡献度”的大小对神经元进行增加或删减.其次,在有监督调优阶段,将训练误差的下降率作为隐含层的删减标准,当训练误差下降率首次出现递减时删掉一个隐含层,否则增加隐含层.激活强度SI可表示为

其中,α是正常数,oi·l是第l个隐含层的第i个神经元的输出,i=1,2,3,···,Nl,Nl是第l个隐含层的神经元个数,si·l表示第l个隐含层的第i个神经元的输入权值之和,可通过如下公式计算得到

其中,rij是i个神经元的第j个输入量,wij是第j个输入神经元和第i个神经元之间的连接权值,ni是第i个神经元的输入神经元个数,si·l所表示的权值连接过程如图4 所示.DBN 的结构自组织策略原理如图5 所示.

在传统浅层神经网络的结构设计方面,研究人员注重结构自组织设计方法[42−43],即根据神经元激活强度的大小来增加或者删减结构.尽管结构自组织设计方法在浅层神经网络中得到了成功的应用并取得了较好的效果,但关于DBN 结构自组织方法的研究却非常有限.本节介绍的基于传统自组织方法的变结构DBN 模型在学习精度上有所提高,但是在学习效率方面提高不明显,相关研究还需要进一步加强.

图4 计算激活强度的权值连接过程Fig.4 Weights connecting process of computing spiking intensity

2.4 增量式深度信念网络

与传统浅层神经网络的结构自组织相比,DBN结构自组织策略一直没有得到学术界的广泛关注,主要原因有:1) 自组织方法将神经元的激活强度作为增加和删减结构的评判标准,而DBN 往往拥有多个隐含层且每个隐含层含有较多的神经元,这导致DBN 自组织设计过程复杂且计算量庞大[26];2) 预训练好的初始DBN 可被视为一种知识源域(Source domain),其中的知识可被视为一种可重复利用的经验[44],但是结构自组织方法未能在知识源域到目标域(Target domain) 之间实现知识的转移.因此,在DBN 结构自组织过程中需要不间断地对目标域内若干个新增子结构进行参数初始化,从而导致自组织方法在DBN 结构设计中应用成本较高,甚至难以实现.

通过上述分析可知,DBN 结构自组织方法遇到的主要障碍是计算量巨大,而如何在知识源域与目标域之间实现知识的有效转移成为关键.迁移学习(Transfer learning,TL) 是一种旨在实现知识转移的学习方法且具有较强的鲁棒性[45−47].常用的迁移学习方法是:首先训练一个模型并将其作为知识源域,然后再利用特定的方法将知识源域中可重复利用的知识转移到目标域中来加速新结构的学习过程[48−49],从而提高复杂模型的训练效率.近些年来,基于迁移学习的神经网络复合训练方法大批涌现并取得了较好的效果[50−51].

图5 结构自组织策略原理图Fig.5 Self-organizing structure strategy scheme

为了解决上述问题,Wang 等[27]提出了一种基于迁移学习策略的增量式深度信念网络(TLGDBN) 模型.相较于浅层神经网络的结构自组织方法,不同之处在于TL-GDBN 没有利用神经元的激活强度作为结构增长或删减的依据.首先,初始化一个单隐含层DBN 并对其进行预训练(Pretraining),然后固定预训练好的初始DBN 并将其作为知识源域.其次,在初始DBN 的基础上不断增加固定规模的隐含层和神经元并将其作为目标域,同时建立基于迁移学习的知识转移规则来加速目标域的训练过程.第三,根据TL-GDBN 的预训练的重构误差设置结构增长的停止准则及其阈值,从而获得最优的结构.

基于迁移学习的增量式深度信念网络(TLGDBN) 的结构增长过程仅在预训练阶段进行.每一步的结构增长包括神经元和隐含层两部分.数据被分为三部分:训练数据(Training data)、验证数据(Validating data) 和测试数据(Testing data).训练数据用来预训练初始DBN 并获得知识源域,验证数据用来结合迁移学习实现TL-GDBN 结构的增量式变化,测试数据用来测试TL-GDBN.预训练结束后TL-GDBN 结构将不再变化.

知识在迁移学习规则下持续地被转移到新增结构中,TL-GDBN 的一步结构增长过程如下:

步骤1.结构初始化和预训练.首先初始化一个单隐含层的DBN 结构,然后利用对比散度(Contrastive divergence,CD) 算法和训练数据进行预训练.假设初始化DBN 的输入和其隐含层神经元的个数分别为m和n,那么预训练后学习到的知识(权值参数矩阵)Rm×n将被保存在知识源域中.

步骤2.增加神经元.增加两倍于初始DBN 隐含层神经元数量的神经元,新的权值参数矩阵变为∈Rm×3n.

步骤3.增加隐含层.增加与初始DBN 具有相同数量神经元的隐含层,对应的新增权值参数矩阵为R3n×n.

步骤4.计算预训练过程的重构误差,并将重构误差作为预训练过程误差.

步骤5.设置结构增长的停止准则.利用验证数据计算重构误差,并将重构误差的连续若干步的减小量作为结构增长的停止准则.同时设置停止准则的阈值,当训练过程中的重构误差满足阈值条件时,TL-GDBN 结构停止增长并进入步骤6;否则,跳转到步骤2.

步骤6.固定当前TL-GDBN 的最优结构,预训练过程结束.

TL-GDBN 的一步结构增长过程原理如图6 所示.结构增长过程一旦结束,TL-GDBN 的结构和对应的初始权值参数即被确定.

实验结果发现,TL-GDBN 的稀疏度随着结构的不断扩大而表现出先增大后稳定的趋势.这种趋势表明在结构增长过程中TL-GDBN 的密集表述越来越弱,网络各隐含层提取到的特征向量受输入波动影响的程度也越来越弱,即网络鲁棒性较强.

然而,关于如何进行知识迁移仍然是一个难点,究其原因主要在于:在迁移学习中,学习器必须执行两个或更多个不同的任务,但是我们假设能够解释P1变化的许多因素和学习P2需要抓住的变化相关.例如,我们可能在第一种情景中学习了一组数据分布特性,然后在第二种场景中学习了另一组数据分布特性.如果第一种情景P1中具有非常多的数据,那么这有助于学习到能够使得从P2抽取的非常少的样本中快速泛化表示.一般来讲,当不同情景或任务存在有用特征时,并且这些特征对应多个情景出现的潜在因素,迁移学习可以发挥事半功倍的效果.然而,有时不同任务之间共享的不是输入的数据分布特性,而是输出的目标数据分布特征.这种情况下,使用迁移学习往往会得到不尽人意的学习效果.

2.5 递归深度信念网络

从学习策略上看,传统DBN 模型是一种前馈网络,堆叠的RBM 只能保存暂时的信息(达到能量平衡后的稳态信息),故现有的DBN 模型对时间序列的建模与预测精度相对较低[52−55].Ichimura等[30]提出一种递归深度信念网络(RNN-DBN),其在结构上是由若干个递归受限玻尔兹曼机(RNNRBM)[56]堆叠组成.而RNN-RBM 则是在递归时间RBM (RTRBM) 的基础上发展起来的[52],是一种基于能量的时域序列密度估计模型.RTRBM 结构如图7 所示.

图6 TL-GDBN 的一步增长过程Fig.6 Illustration of one-growing step

图7 RTRBM 的结构图Fig.7 RTRBM structure

图7 中每一个框代表一个RBM,h是隐含层,v是可视层,双向箭头表示h和v生成的条件概率,即:

其中,A(t)=表示所有t时刻之前的(v,h) 集合.此外对于RTRBM,可以理解为每个时刻可以由上一时刻的状态h(t−1)对该时刻产生影响(通过Whh和Whv),然后通过RBM 得到一个(h(t),v(t)) 稳态.由于每一个参数都和上一时刻的参数有关,可以认为只有偏置项是受隐含层影响的,即:

从结构和学习过程中可以看出,RTRBM 的隐含层描述的是可视层的条件概率分布,只能保存暂时的信息(达到稳态的信息).将RTRBM 中的隐含层用递归网络代替时,就可以得到RNN-RBM,其结构由图8 所示.上面每个框代表一个RBM,而下面的框则表示一个按时间展开了的RNN.这样设计的好处是把隐含层分离了,h只用于表示当前RBM的稳态状态,u表示RNN 里的隐含层节点.通过顺序堆叠RNN-RBM 可以得到RNN-DBN,其结构如图9 所示.

图8 RNN-RBM 的结构图Fig.8 RNN-RBM structure

尽管RNN-DBN 在结构和学习算法上取得了成功,但是其稳定性和收敛性却成为一个新的复杂问题[57−59].例如,在取得较高建模精度的同时如何分析RNN-DBN 递归算法的稳定性和收敛性等问题仍需要继续深入研究.

以上所述几种DBN 结构均在各自的关注点上取得到了进步,但距离网络性能的整体提升还有差距.稀疏DBN 是在定结构基础上为了提升网络输出鲁棒性能(稳定性) 而提出的,其适用于处理复杂数据并探索无监督学习过程的稀疏连接原理.自组织DBN 和增量式DBN 是在定结构基础上提出的变结构衍生模型,它们的主要目的是探索如何利用变结构机制来提升网络的学习效率.需要指出的是,增量式DBN 利用了知识迁移策略,适用于标签数据不足且知识源域与目标域的数据分布特性相似的场景,而自组织DBN 则是利用了神经元的激活度,对应用场景没有特别的要求.递归DBN 是一种带有反馈连接的深层结构,主要应用在时间序列建模和预测.

图9 RNN-DBN 的结构图Fig.9 RNN-DBN structure

2.6 深度信念网络结构性能比较

以上介绍的4 种DBN 学习结构均从各自的出发点解决了不同的学习问题,并提高了相应的网络性能.稀疏DBN 通过引入稀疏表述提高了网络的输出鲁棒性.自组织DBN 是基于神经元激活强度和误差下降率最小化的思想构建的一种结构增加-删减网络,提高了学习精度.增量式DBN 是一种基于迁移学习策略的增长型网络,其在学习效率和精度方面均得到提高.递归DBN 是通过引入反馈环构建的一种学习网络,其在时间序列预测方面效果较好.表1 给出了具有不同结构的DBN 在Mackey-Glass 时间序列建模和预测上20 次独立实验的性能对比结果.

表1 不同DBN 结构的性能对比Table 1 Performance comparison of different DBN structures

3 深度信念网络学习算法

3.1 无监督预训练方法

DBN 无监督预训练的目的是通过逐层训练每一个RBM 来确定整个网络的初始权值.研究表明,利用这种无监督的算法来初始化DBN 的权值通常会得到比随机初始化权值更好的训练结果[60].目前常用的无监督预训练方法主要是对比散度算法[22].近些年来,众多学者将加速预训练过程和提高学习精度的思想引入CD 算法中,并提出了基于自适应学习率的CD 算法[15]和半监督CD 算法[61].

3.1.1 自适应学习率对比散度

尽管DBN 已经在多个领域实现较好的应用,但是在理论和学习算法方面仍存在许多难以解决的问题,其中面临的最大挑战就是其预训练阶段耗时长的问题[36].Lopes 等通过合理地选取学习参数提高了RBM 的收敛速度[62],但是该方法在提高DBN整体学习速度方面效果不佳.经过近几年的研究,一种基于图像处理单元(Graphic processing unit,GPU)的硬件加速器被应用到DBN 算法运算中,并取得了显著的加速收敛效果[63−65],该方法的主要问题是硬件设备成本和维护费用太高,不经济并且也没有从算法的角度提高收敛速度.随着大数据时代的到来,处理数据的信息量会呈指数级增长,传统DBN 无法快速收敛甚至会难以完成学习任务,因此如何既快速又经济地完成对大量数据的充分学习是DBN 今后发展的一个方向[22].

乔俊飞和王功明等[15,66]根据RBM 训练过程连续两次迭代后的参数更新方向的异同设计了一种自适应学习率方法,并由此构造了基于自适应学习率的DBN (ALRDBN) 模型.学习率自适应更新机制为:

其中,D和d表示学习率增大系数和减小系数.学习率自适应变化的原理是当连续两次迭代后的参数更新方向(变化量的正负) 相同时,学习率会加大,相反则减小.

3.1.2 半监督对比散度

在深度学习的背景下,无监督学习可以为如何表示空间聚集样本提供有用线索.在输入空间紧密聚集的样本应该被映射到类似的表示.在许多情况下,新空间上的线性分类器可以达到较好的泛化效果[67−68].这种方法的一个经典变种是使用主成分分析作为分类前(在投影后的数据上分类) 的预处理步骤.而半监督学习通常指的是学习一个表示h=f(x),其学习表示的目的是使相同类中的样本有类似的表示.

尽管DBN 的无监督预训练在挖掘数据本质特性方面具有优势,并且可以采用有监督学习方式对权值进行调优,但是它本质上是一种无监督学习方法,因此在分类、识别以及预测等应用领域效果欠佳.在分类方面,Larochelle 等[69]将监督信息引入到RBM 中,并提出了一种称为判别式受限玻尔兹曼机(Discriminative RBM).在预测方面,单一的无监督预训练无法提取监督信息与训练样本之间更为抽象和具体的关联特征.为了兼顾数据特征提取能力和关联特征提取能力,Wang 等[61]提出了一种RBM 半监督学习算法,通过隐含层共享和权值绑定将认知模型和生成模型融合到一起.

针对半监督的学习原理,可以构建这样一个模型,其中生成模型P(x) 或P(x;y) 与判别模型P(y/x) 共享参数,而不用分离无监督和有监督部分.此模型只需权衡有监督模型准则-logP(y/x) 和无监督或生成模型准则(如-logP(x) 或-logP(x;y)).生成模型准则表达了对有监督学习问题解的特殊形式的先验知识[70],即P(x) 的结构通过某种共享参数的方式连接到P(y/x).通过控制在总准则中的生成准则,可以获得比纯生成或纯判别训练准则更好的权衡[70−71].半监督RBM 的结构原理如图10 所示.

图10 半监督RBM 结构Fig.10 Structure of semi-supervised RBM

半监督RBM 的能量函数定义如下:

其中,ψ=(wR,p,bv,bh,cu),λ1为权衡系数,用于控制模型中无监督学习和有监督学习的比重.根据标准CD 算法不难得出半监督RBM 的参数学习过程,即半监督对比散度算法,此处不再赘述,由此可得到基于半监督学习的DBN (SDBN) 模型.

3.2 有监督调优方法

DBN 有监督调优的目的是根据无监督预训练得到的权值调整网络的生成权值(靶向知识).目前,常用的有监督调优方法是BP 算法和基于偏最小二乘回归(Partial least square regression,PLSR) 的调优方法[25].

3.2.1 梯度下降算法

有监督学习的目的就是对由无监督学习得到的权值进行调优.目前最常用的DBN 的调优方法是BP 算法.以图2 中输出层和最后一个隐含层之间的权值wout为例,假设y和d分别是DBN 实际输出和期望输出,那么计算输出误差对wout的梯度,然后沿着该方向反向进行调整:

其中,τ为迭代次数,η为学习率.

经过调优后可得到输出层和最后一个隐含层之间的更新权值wout.利用这种方法从顶层输出层到底层输入层依次调优可以得到整个DBN 网络的权值W=(wout,wl,wl−1,···,w2,w1).

3.2.2 偏最小二乘回归算法

大量研究表明,传统基于BP 算法的有监督调优方法存在诸多缺陷,尤其是当DBN 含有多个隐含层时问题尤为突出,例如梯度消失和局部极小值等[25,27].为了消除或避开复杂的梯度计算过程导致的上述问题,Qiao 等[25]利用逐层偏最小二乘回归方法代替BP 算法对整个DBN 模型进行有监督的调优(Fine-tuning).基于PLSR 逐层调优方法的原理如图11 所示.

PLSR 是一种多对多的回归建模方法,由于其同时考虑了自变量和因变量的信息,所以PLSR 也是一种有监督的学习模型.特别当两组变量的个数很多且都存在多重相关性,而观测数据的数量(样本量) 又较少时,用PLSR 建立的模型具有传统的经典回归分析等方法所没有的优点.基于PLSR 的DBN 有监督调优是从顶层输出层(标签数据层) 开始,每两层建立一个PLSR 回归模型,直到第一个隐含层和最底层输入层为止.基于PLSR 的逐层调优过的过程如下:

步骤1.提取由无监督训练获得的隐含层特征向量(hl,hl−1,···,h1).

图11 基于PLSR 的DBN 调优Fig.11 PLSR-based fine-tuning of DBN

步骤2.将期望输出y和最后一个隐含层特征分别视为因变量和自变量,并建立PLSR 模型,可以得到输出权值wout.

步骤3.从hl−1和hl−2到h1和vin每两层之间建立PLSR 模型,并最终得到基于PLSR 调优的优化权值参数矩阵W=(wout,wl,wl−1,···,w2,w1).

基于PLSR 的调优方法之所以能够成功,主要原因可以归结为以下两点:1) PLSR 只需要每个隐含层的特征向量,不需要求取梯度信号,因此避开了BP 算法在求取梯度信号时遇到的问题[70−71];2) 无监督预训练得到的权值正是用于提取每个隐含层特征向量的必要参数.

3.3 深度信念网络算法性能比较

以上介绍的4 种DBN 学习算法均从各自的出发点解决了不同的学习问题,并在一定程度上提高了网络性能.具体来讲,基于自适应学习率的DBN模型是通过设计一种动态变化的学习率来适应参数学习的更新速度,从而实现学习算法的加速收敛.基于半监督学习的深度信念网络模型则通过将有监督信息引入到无监督学习过程中构造一种新型的半监督学习算法,从而实现网络学习精度的提升.梯度下降算法是一种经典而又传统的有监督学习算法,其在浅层神经网络中的学习效果较好.基于偏最小二乘的逐层调优算法则是利用各隐含层所提取的特征向量建立多个回归模型,从而获取最优参数.

同时,以上所述算法也存在缺点,自适应学习率算法在处理中低维复杂数据时具有较好的效果,当处理高位复杂数据集时基于自适应学习率的学习加速效果变得不再明显.半监督学习算法则多数作判别模型,主要用于模式分类.而偏最小二乘算法尽管取得到较好的学习效果,但由于需要构造若干个偏最小二乘回归模型,所以在稳定性分析方面需要对接每个模型的输入与输出,且保证他们具有稳定的有界性,从而导致理论分析变得复杂.表2 给出了不同DBN 算法在Lorenz 时间序列建模和预测上20次独立实验的性能对比结果.

表2 不同DBN 算法的性能对比Table 2 Performance comparison of different DBN algorithms

在DBN 学习框架的搭建方面,研究人员开始注重不同学习算法的混合模型.这种混合模型中,最具创新意义的是一种基于DBN 预训练技术的回声状态网络(Echo state network,ESN) 学习模型(DBESN)[72].这种混合模型DBESN 首先利用DBN 的预训练技术对高维复杂数据进行降维和关键特征提取,然后将所提取到的有效特征向量作为ESN 模型的输入进行再训练.大量实验结果证明,DBESN 具有较强的时间序列预测能力,开启了混合模型研究的先河.为了克服单一数据表述方法在学习能力上的不足,Deng 等[73]提出了一种用于数据分类的分层融合深度模糊神经网络(FDFNN).通过融合包括模糊学习和神经元学习在内的多种数据表述方法获得的知识,FDFNN 能够构造一个用于模式分类的最终的数据表述.

4 结论与展望

在深度信念网络中,利用无监督预训练的方式首先初始化权值,然后在具有待处理数据先验知识的初始化权值的基础上进行有监督调优,克服了传统深层神经网络训练难的问题.本文在给定深度信念网络简化模型的基础上,分析了多种深度信念网络的网络结构、无监督预训练方法和有监督调优方法及其网络性能,回顾并总结了深度信念网络的研究现状.

尽管针对深度信念网络的研究在理论和工程上均已取得了丰硕的成果,但就其后续发展而言还有很长的路要走.结合研究现状,现对深度信念网络的研究提出以下展望.

1) 深度信念网络的无监督学习理论研究及生物学解释.人脑研究表明,大脑的认知过程主要靠对外部信息无监督学习的知识积累[74−77],这一过程也可以理解成若干连续小样本无监督学习之和.借鉴对大脑的研究成果可进一步模拟大脑的无监督知识积累过程,设计新的无监督学习算法,部分实现大脑的功能;借鉴统计学及信息论的相关知识,研究深度信念网络在多次运行性能上的随机性,可从统计学特性上解释深度信念网络的鲁棒性理论.

2) 深度信念网络结构设计研究.目前的深度信念网络结构多数是在足够经验和充足数据的基础上通过凑试法来确定,且结构一旦确定将不再调整,这导致固定结构的深度信念网络无法满足待处理数据的多样性变化要求.同时,单个神经元的增长和修剪算法也难以实现结构的快速有效设计.另一方面,神经生理学研究结果表明,人类大脑的智能主要取决于大脑皮层,而大脑皮层是一个大规模互连的生物深度神经网络.在处理不同信息时,生物深度神经网络会启用不同的神经元以及相应的特殊连接结构[78−80].也就是说,其采用的是一种变结构的信息处理机制,这一点从著名的Hebb 学习规则中也能看出.因此研究深度信念网络智能化实时在线结构设计方法将是一个无法躲避且非常重要的研究方向,也必将诞生众多标志性成果.

3) 研究深度信念网络的超参数自适应设置问题.与传统的浅层神经网络相比,深度信念网络结构庞大,除了需要学习的权值参数之外还存在大量的超参数[81].在训练深度信念网络之前,超参数设置不当会直接影响网络学习的效果.例如,学习率设置过大或者过小,会相应地造成算法陷入局部最优或者过早收敛.尽管本文介绍了一种基于连续两次迭代更新方向的自适应学习率设计方法,但是从深度信念网络的长远发展看,这远不是终点.因此,从超参数的自适应设置角度切入研究可以获得事半功倍的效果,也可完善深度信念网络的学习理论.

4) 深度信念网络在复杂过程控制中的应用研究,如连续搅拌反应器(Continuous stirred tank reactor,CSTR) 系统和污水处理过程(Wastewater treatment processing,WWTP) 行业.目前,深度信念网络乃至深度学习技术主要应用于模式分类、图像处理以及预测等单一的问题,并取得了不错的效果,反观在过程控制领域中的应用研究却较少.以深度信念网络为代表的深度学习方法停留在模式识别已有十年之久,将其作为非线性系统预测模型与过程控制相结合正是深度学习未来要面向多领域发展的多个方向之一.Lenz 等[82]针对切割水果的机器人手臂控制问题,尝试性地提出了一种利用深度卷积网络(深度学习) 直接从数据中学习控制器的新方法,并取得到令人欣喜的效果.针对复杂过程控制系统的非线性、强耦合、时变、时滞及不确定等特点,设计合适的深度信念网络模型,将其作为待控制系统的预测模型与滚动优化控制理论相结合,构造基于深度信念网络的模型预测控制方法将是一个极具前景的研究方向.

附表1 文中用到的主要数学符号Schedule 1 Main mathematical notations in this paper

猜你喜欢

权值信念神经元
一种融合时间权值和用户行为序列的电影推荐模型
为了信念
CONTENTS
发光的信念
信念
跃动的神经元——波兰Brain Embassy联合办公
基于权值动量的RBM加速学习算法研究
基于多维度特征权值动态更新的用户推荐模型研究
基于二次型单神经元PID的MPPT控制
ERK1/2介导姜黄素抑制STS诱导神经元毒性损伤的作用