- 1、本文档共85页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
機器人的学习研究进展:深度学习及应用
Deep learning与Neural Network异同 而为了克服神经网络训练中的问题,DL采用了与神经网络很不同的训练机制。 传统神经网络中,采用的是反向传播(BP)的方式进行。即采用迭代的算法来训练整个网络,随机设定初值,计算当前网络的输出,然后根据当前计算的输出值和实际的标记值之间的差去改变前面各层的参数,直到收敛(整体是一个梯度下降法)。 deep learning整体上是一个layer-wise的训练机制。这样做的原因是因为,如果采用back propagation的机制,对于一个deep network(7层以上),残差传播到最前面的层已经变得太小,出现所谓的gradient diffusion(梯度扩散)。这个问题在后面有所讨论。 1.8 Deep learning训练过程 1.8.1 传统神经网络的训练方法为什么不能用在深度神经网络 1.8.2 deep learning训练过程 1.8.1 传统神经网络的训练方法为什么不能用在深度神经网络 BP算法作为传统训练多层网络的典型算法,实际上对仅含几层网络,该训练方法就已经很不理想。 深度结构(涉及多个非线性处理单元层)非凸目标代价函数中普遍存在的局部最小是训练困难的主要来源。 1.8.1 传统神经网络的训练方法为什么不能用在深度神经网络 BP算法存在的问题: (1)梯度越来越稀疏:从顶层越往下,误差校正信号越来越小; (2)收敛到局部最小值:尤其是从远离最优区域开始的时候(随机值初始化会导致这种情况的发生); (3)一般,我们只能用有标签的数据来训练:但大部分的数据是没标签的,而大脑可以从没有标签的数据中学习; 1.8.2 deep learning训练过程 如果对所有层同时训练,时间复杂度会太高;如果每次训练一层,偏差就会逐层传递。这会面临跟上面监督学习中相反的问题,会严重欠拟合(因为深度网络的神经元和参数太多了)。 1.8.2 deep learning训练过程 2006年,hinton提出了在非监督数据上建立多层神经网络的一个有效方法,简单的说,分为两步,一是每次训练一层网络,二是调优,使原始表示x向上生成的高级表示r和该高级表示r向下生成的x尽可能一致。方法是: 1)首先逐层构建单层神经元,这样每次都是训练一个单层网络。 2)当所有层训练完后,Hinton使用wake-sleep算法进行调优。 1.8.2 deep learning训练过程 将除最顶层的其它层间的权重变为双向的,这样最顶层仍然是一个单层神经网络,而其它层则变为了图模型。向上的权重用于“认知”,向下的权重用于“生成”。 然后使用Wake-Sleep算法调整所有的权重。让认知和生成达成一致,也就是保证生成的最顶层表示能够尽可能正确的复原底层的结点。 比如顶层的一个结点表示人脸,那么所有人脸的图像应该激活这个结点,并且这个结果向下生成的图像应该能够表现为一个大概的人脸图像。 1.8.2 deep learning训练过程 Wake-Sleep算法分为醒(wake)和睡(sleep)两个部分。 1)wake阶段:认知过程(从现实到概念),通过外界的特征和向上的权重(认知权重)产生每一层的抽象表示(结点状态),并且使用梯度下降修改层间的下行权重(生成权重)。 如:“如果现实跟我想象的不一样,改变我的权重使得我想象的东西就是这样的”。 1.8.2 deep learning训练过程 2)sleep阶段:生成过程(从概念到现实),通过顶层表示(醒时学得的概念)和向下权重(生成权重),生成底层的状态,同时修改层间向上的权重。 如:“如果梦中的景象不是我脑中的相应概念,改变我的向上的权重(认知权重)使得这种景象在我看来就是这个概念”。 deep learning具体训练过程 1)使用自下上升非监督学习(就是从底层开始,一层一层的往顶层训练) 2)自顶向下的监督学习(就是通过带标签的数据去训练,误差自顶向下传输,对网络进行微调) 1)使用自下上升非监督学习 采用无标定数据(有标定数据也可)分层训练各层参数,这一步可以看作是一个无监督训练过程,是和传统神经网络区别最大的部分(这个过程可以看作是feature learning过程): 具体的,先用无标定数据训练第一层,训练时先学习第一层的参数(这一层可以看作是得到一个使得输出和输入差别最小的三层神经网络的隐层),由于模型capacity的限制以及稀疏性约束,使得得到的模型能够学习到数据本身的结构,从而得到比输入更具有表示能力的特征;在学习得到第n-1层后,将n-1层的输出作为第n层的输入,训练第n层,由此分别得到各层的参数; 2)自顶向下的监督学习 基于第一步得到的各层参数进一步调整整个多层模型的参数,这一步是一个有监督
文档评论(0)