(完整版)深度学习的基本理论与方法课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《(完整版)深度学习的基本理论与方法课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 完整版 深度 学习 基本理论 方法 课件
- 资源描述:
-
1、深度学习的基本理论与方法成科扬2013年10月30日目 录 概述 动机 深度学习简介 深度学习的训练过程 深度学习的具体模型及方法 深度学习的性能比较 深度学习的应用 展望 参考文献 相关程序软件及链接概 述 深度学习:一种基于无监督特征学习和特征层次结构的学习方法 可能的的名称:深度学习 特征学习 无监督特征学习动 机 良好的特征表达,对最终算法的准确性起了非常关键的作用;良好的特征表达,对最终算法的准确性起了非常关键的作用;识别系统主要的计算和测试工作耗时主要集中在特征提取部分;识别系统主要的计算和测试工作耗时主要集中在特征提取部分;特征的样式目前一般都是人工设计的,靠人工提取特征。特征的
2、样式目前一般都是人工设计的,靠人工提取特征。Low-level sensingPre-processingFeature extract.Feature selectionInference:prediction,recognition传统的模式识别方法:传统的模式识别方法:动 机为什么要自动学习特征 实验:LP-Multiple Kernel Learning Gehler and Nowozin,On Feature Combination for Multiclass Object Classification,ICCV09 采用39 个不同的特征 PHOG,SIFT,V1S+,Regi
3、on Cov.Etc.在普通特征上MKL表现有限结论:特征更重要动 机为什么要自动学习特征 机器学习中,获得好的特征是识别成功的关键 目前存在大量人工设计的特征,不同研究对象特征不同,特征具有多样性,如:SIFT,HOG,LBP等 手工选取特征费时费力,需要启发式专业知识,很大程度上靠经验和运气 是否能自动地学习特征?中层特征 中层信号:动 机为什么要自动学习特征“Tokens”from Vision by D.Marr:连续平行连接拐角 物体部件:他们对于人工而言是十分困难的,那么如何学习呢?动 机为什么要自动学习特征一般而言,特征越多,给出信息就越多,识别准确性会得到提升;一般而言,特征越
4、多,给出信息就越多,识别准确性会得到提升;但特征多,计算复杂度增加,探索的空间大,可以用来训练的数据在但特征多,计算复杂度增加,探索的空间大,可以用来训练的数据在每个特征上就会稀疏。每个特征上就会稀疏。结论:不一定特征越多越好!需要有多少个特征,需要学结论:不一定特征越多越好!需要有多少个特征,需要学习确定。习确定。动动 机机为什么采用层次网络结构为什么采用层次网络结构 人脑视觉机理人脑视觉机理 1981年的诺贝尔医学奖获得者 David Hubel和TorstenWiesel发现了视觉系统的信息处理机制 发现了一种被称为“方向选择性细胞的神经元细胞,当瞳孔发现了眼前的物体的边缘,而且这个边缘
5、指向某个方向时,这种神经元细胞就会活跃动动 机机为什么采用层次网络结构为什么采用层次网络结构 人脑视觉机理人脑视觉机理 人的视觉系统的信息处理是分级的 高层的特征是低层特征的组合,从低层到高层的特征表示越来越抽象,越来越能表现语义或者意图 抽象层面越高,存在的可能猜测就越少,就越利于分类动动 机机为什么采用层次网络结构为什么采用层次网络结构 视觉的层次性 属性学习,类别作为属性的一种组合映射 Lampert et al.CVPR09类别标签属性图像特征动动 机机为什么采用层次网络结构为什么采用层次网络结构 特征表示的粒度 具有结构性(或者语义)的高层特征对于分类更有意义动动 机机为什么采用层次
6、网络结构为什么采用层次网络结构 初级(浅层)特征表示高层特征或图像,往往是由一些基本结构(浅层特征)组成的动动 机机为什么采用层次网络结构为什么采用层次网络结构 结构性特征表示动动 机机为什么采用层次网络结构为什么采用层次网络结构 浅层学习的局限浅层学习的局限人工神经网络(BP算法)虽被称作多层感知机,但实际是种只含有一层隐层节点的浅层模型SVM、Boosting、最大熵方法(如LR,Logistic Regression)带有一层隐层节点(如SVM、Boosting),或没有隐层节点(如LR)的浅层模型局限性:有限样本和计算单元情况下对复杂函数的表示能力有限,针对复杂分类问题其泛化能力受限。
7、深度学习 20062006年,加拿大多伦多大学教授、机器学习领域年,加拿大多伦多大学教授、机器学习领域的泰斗的泰斗Geoffrey HintonGeoffrey Hinton在在科学科学上发表论文提上发表论文提出深度学习主要观点:出深度学习主要观点:1 1)多隐层的人工神经网络具有优异的特征学习能力)多隐层的人工神经网络具有优异的特征学习能力,学习得到的特征对数据有更本质的刻画,从而,学习得到的特征对数据有更本质的刻画,从而有利于可视化或分类;有利于可视化或分类;2 2)深度神经网络在训练上的难度,可以通过)深度神经网络在训练上的难度,可以通过“逐层逐层初始化初始化”(layer-wise p
8、re-traininglayer-wise pre-training)来有效)来有效克服,逐层初始化可通过无监督学习实现的。克服,逐层初始化可通过无监督学习实现的。深度学习 本质:通过构建多隐层的模型和海量训练数据(可为无标签数据),来学习更有用的特征,从而最终提升分类或预测的准确性。“深度模型”是手段,“特征学习”是目的。与浅层学习区别:1)强调了模型结构的深度,通常有5-10多层的隐层节点;2)明确突出了特征学习的重要性,通过逐层特征变换,将样本在原空间的特征表示变换到一个新特征空间,从而使分类或预测更加容易。与人工规则构造特征的方法相比,利用大数据来学习特征,更能够刻画数据的丰富内在信息
9、。深度学习 好处:可通过学习一种深层非线性网络结构,实现复杂函数逼近,表征输入数据分布式表示。深度学习 vs.神经网络神经网络:深度学习:深度学习 vs.神经网络相同点:相同点:二者均采用分层结构,系统包括输入层、隐层(多层)、输出层组成的多层网络,只有相邻层节点之间有连接,同一层以及跨层节点之间相互无连接,每一层可以看作是一个logistic 回归模型。不同点:不同点:神经网络:采用BP算法调整参数,即采用迭代算法来训练整个网络。随机设定初值,计算当前网络的输出,然后根据当前输出和样本真实标签之间的差去改变前面各层的参数,直到收敛;深度学习:采用逐层训练机制。采用该机制的原因在于如果采用BP
10、机制,对于一个deep network(7层以上),残差传播到最前面的层将变得很小,出现所谓的gradient diffusion(梯度扩散)。深度学习 vs.神经网络 神经网络的局限性:1)比较容易过拟合,参数比较难调整,而且需要不少技巧;2)训练速度比较慢,在层次比较少(小于等于3)的情况下效果并不比其它方法更优;深度学习训练过程 不采用BP算法的原因(1)反馈调整时,梯度越来越稀疏,从顶层越往下,误差校正信号越来越小;(2)收敛易至局部最小,由于是采用随机值初始化,当初值是远离最优区域时易导致这一情况;(3)BP算法需要有标签数据来训练,但大部分数据是无标签的;深度学习训练过程 第一步:
11、采用自下而上的无监督学习1)逐层构建单层神经元。2)每层采用wake-sleep算法进行调优。每次仅调整一层,逐层调整。这个过程可以看作是一个feature learning的过程,是和传统神经网络区别最大的部分。深度学习训练过程 wake-sleep算法:1 1)wakewake阶段:阶段:认知过程,通过下层的输入特征(认知过程,通过下层的输入特征(InputInput)和向上的认知()和向上的认知(EncoderEncoder)权重产生每一层的抽象表示()权重产生每一层的抽象表示(CodeCode),再通过当前的),再通过当前的生成(生成(DecoderDecoder)权重产生一个重建信息
12、()权重产生一个重建信息(ReconstructionReconstruction),),计算输入特征和重建信息残差,使用梯度下降修改层间的下行计算输入特征和重建信息残差,使用梯度下降修改层间的下行生成(生成(DecoderDecoder)权重。也就是)权重。也就是“如果现实跟我想象的不一样,如果现实跟我想象的不一样,改变我的生成权重使得我想象的东西变得与现实一样改变我的生成权重使得我想象的东西变得与现实一样”。2 2)sleepsleep阶段:阶段:生成过程,通过上层概念(生成过程,通过上层概念(CodeCode)和向下的生成()和向下的生成(DecoderDecoder)权)权重,生成下层
13、的状态,再利用认知(重,生成下层的状态,再利用认知(EncoderEncoder)权重产生一个抽)权重产生一个抽象景象。利用初始上层概念和新建抽象景象的残差,利用梯度象景象。利用初始上层概念和新建抽象景象的残差,利用梯度下降修改层间向上的认知(下降修改层间向上的认知(EncoderEncoder)权重。也就是)权重。也就是“如果梦中如果梦中的景象不是我脑中的相应概念,改变我的认知权重使得这种景的景象不是我脑中的相应概念,改变我的认知权重使得这种景象在我看来就是这个概念象在我看来就是这个概念”。深度学习训练过程EncoderDecoderInput ImageClass labele.g.Fea
14、turesEncoderDecoderFeaturesEncoderDecoderAutoEncoder:深度学习训练过程 第二步:自顶向下的监督学习第二步:自顶向下的监督学习 这一步是在第一步学习获得各层参数进的基础这一步是在第一步学习获得各层参数进的基础上,在最顶的编码层添加一个分类器(例如罗杰上,在最顶的编码层添加一个分类器(例如罗杰斯特回归、斯特回归、SVMSVM等),而后通过带标签数据的监督等),而后通过带标签数据的监督学习,利用梯度下降法去微调整个网络参数。学习,利用梯度下降法去微调整个网络参数。深度学习的第一步实质上是一个网络参数初始深度学习的第一步实质上是一个网络参数初始化过程
15、。区别于传统神经网络初值随机初始化,化过程。区别于传统神经网络初值随机初始化,深度学习模型是通过无监督学习输入数据的结构深度学习模型是通过无监督学习输入数据的结构得到的,因而这个初值更接近全局最优,从而能得到的,因而这个初值更接近全局最优,从而能够取得更好的效果。够取得更好的效果。深度学习的具体模型及方法 自动编码器(AutoEncoder)稀疏自动编码器(Sparse AutoEncoder)降噪自动编码器(Denoising AutoEncoders)深度学习的具体模型及方法EncoderDecoderInput(Image/Features)Output Featurese.g.Feed
16、-back/generative/top-downpathFeed-forward/bottom-up path自动编码器(AutoEncoder)深度学习的具体模型及方法(Wx)(WTz)(Binary)Input x(Binary)Features ze.g.自动编码器(AutoEncoder)Encoder filters WSigmoid function(.)Decoder filters WTSigmoid function(.)深度学习的具体模型及方法 稀疏自动编码器(Sparse AutoEncoder)限制每次得到的表达code尽量稀疏限制每次得到的表达code尽量稀疏深度学
17、习的具体模型及方法 稀疏自动编码器(Sparse AutoEncoder)FiltersFeaturesSparse CodingInput Patch深度学习的具体模型及方法(Wx)DzInput Patch xSparse Features ze.g.Encoder filters WSigmoid function(.)Decoder filters DL1 SparsityTraining 稀疏自动编码器(Sparse AutoEncoder)深度学习的具体模型及方法 稀疏自动编码器(Sparse AutoEncoder)1 1)TrainingTraining阶段阶段:给定一系列的样
18、本图片x1,x 2,,我们需要学习得到一组基1,2,,也就是字典。可使用K-SVD方法交替迭代调整a k,k,直至收敛,从而可以获得一组可以良好表示这一系列x的字典。深度学习的具体模型及方法 稀疏自动编码器(Sparse AutoEncoder)2 2)CodingCoding阶段阶段:给定一个新的图片x,由上面得到的字典,利用OMP算法求解一个LASSO问题得到稀疏向量a。这个稀疏向量就是这个输入向量x的一个稀疏表达。深度学习的具体模型及方法 稀疏自动编码器(Sparse AutoEncoder)深度学习的具体模型及方法 降噪自动编码器(Denoising AutoEncoders)在自动编
19、码器的基础上,对训练数据加入噪声,自动编码器必须学习去去除这种噪声而获得真正的没有被噪声污染过的输入。因此,这就迫使编码器去学习输入信号的更加鲁棒的表达,这也是它的泛化能力比一般编码器强的原因。深度学习的具体模型及方法 Autoencoder(most Deep Learning methods)RBMs/DBMs Lee/Salakhutdinov Denoising autoencoders Ranzato Predictive sparse decomposition Ranzato Decoder-only Sparse coding Yu Deconvolutional Nets Y
20、u Encoder-only Neural nets(supervised)Ranzato深度学习的具体模型及方法 限制波尔兹曼机(Restricted Boltzmann Machine)定义:假设有一个二部图,同层节点之间没有链接,一层是可视层,即输入数据层(v),一层是隐藏层(h),如果假设所有的节点都是随机二值(0,1值)变量节点,同时假设全概率分布p(v,h)满足Boltzmann 分布,我们称这个模型是Restricted BoltzmannMachine(RBM)。深度学习的具体模型及方法 限制波尔兹曼机(Restricted Boltzmann Machine)限制波尔兹曼机(
21、RBM)是一种深度学习模型。深度学习的具体模型及方法 限制波尔兹曼机(Restricted Boltzmann Machine)定义联合组态(jointconfiguration)能量:这样某个组态的联合概率分布可以通过Boltzmann 分布和这个组态的能量来确定:深度学习的具体模型及方法 限制波尔兹曼机(Restricted Boltzmann Machine)给定隐层h的基础上,可视层的概率确定:(可视层节点之间是条件独立的)给定可视层v的基础上,隐层的概率确定:深度学习的具体模型及方法 限制波尔兹曼机(Restricted Boltzmann Machine)待求问题待求问题:给定一个
22、满足独立同分布的样本集:D=v v(1),v v(2),v v(N),需要学习模型参数=W,a,b。求解求解:最大似然估计:我们需要选择一个参数,让我们当前的观测样本的概率最大 对最大对数似然函数求导,即可得到L最大时对应的参数W:p 若隐藏层层数增加,可得到Deep Boltzmann Machine(DBM)深度学习的具体模型及方法 Deep Boltzmann Machine(DBM)深度学习的具体模型及方法 深信度网络(Deep Belief Networks)Deep Belief Networks是在靠近可视层的部分使用贝叶斯信念网络(即有向图模型),而在最远离可视层的部分使用Re
23、stricted Boltzmann Machine的模型。深度学习的具体模型及方法 深信度网络(Deep Belief Networks)深度学习的具体模型及方法 卷积波尔兹曼机(Convolutional RBM)CRBM是为识别二维图像信息而特殊设计的一个多层感知器。概念示范:输入图像通过与m个可训练的滤波器和可加偏置进行卷积,在C1层产生m个特征映射图,然后特征映射图中每组的n个像素再进行求和,加权值,加偏置,通过一个Sigmoid函数得到m个S2层的特征映射图。这些映射图再进过滤波得到C3层。这个层级结构再和S2一样产生S4。最终,这些像素值被光栅化,并连接成一个向量输入到传统的神经
24、网络,得到输出。深度学习的具体模型及方法 卷积波尔兹曼机(Convolutional RBM)权值共享减少参数的方法:减少参数的方法:每个神经元无需对全局图像做感受,只需感受局部区域(Feature Map),在高层会将这些感受不同局部的神经元综合起来获得全局信息。每个神经元参数设为相同,即权值共享,也即每个神经元用同一个卷积核去卷积图像。深度学习的具体模型及方法 卷积波尔兹曼机(Convolutional RBM)隐层神经元数量的确定p神经元数量与输入图像大小、滤波器大小和滤波器的滑动步长有关。例如,输入图像是1000 x1000像素,滤波器大小是10 x10,假设滤波器间没有重叠,即步长为
25、10,这样隐层的神经元个数就是(1000 x1000)/(10 x10)=10000个深度学习的具体模型及方法 卷积波尔兹曼机(Convolutional RBM)多滤波器情形不同的颜色表示不同种类的滤波器p每层隐层神经元的个数按滤波器种类的数量翻倍p每层隐层参数个数仅与滤波器大小、滤波器种类的多少有关例如:隐含层的每个神经元都连接10 x10像素图像区域,同时有100种卷积核(滤波器)。则参数总个数为:(10 x10+1)x100=10100个深度学习的具体模型及方法 卷积波尔兹曼机(Convolutional RBM)p卷积过程卷积过程:用一个可训练的滤波器:用一个可训练的滤波器fxfx去
展开阅读全文