精华内容
下载资源
问答
  • 深度学习基础--不同网络种类--双向深度网络(bi-directionaldeep networks, BDDN)
    千次阅读
    2018-11-08 13:18:00

    深度神经网络可以分为3类:

      1)前馈深度网络(feed-forwarddeep networks, FFDN)
      2)反馈深度网络(feed-back deep networks, FBDN)
      3)双向深度网络(bi-directionaldeep networks, BDDN)

    双向深度网络(bi-directionaldeep networks, BDDN)

      结构上:双向网络的结构结合了编码器和解码器2类单层网络结构,通过叠加多个编码器层和解码器层构成(每层可能是单独的编码过程或解码过程,也可能既包含编码过程也包含解码过程)。
      训练上:双向网络的学习则结合了前馈网络和反馈网络的训练方法。
      通常包括单层网络的预训练和逐层反向迭代误差2个部分。其中单层网络的预训练是对输入信号编码和解码的重建过程,这与反馈网络训练方法类似;而基于反向迭代误差的权值微调与前馈网络训练方法类似。
      a)单层网络的预训练多采用贪心算法:每层使用输入信号IL与权值w计算生成信号IL+1传递到下一层,信号IL+1再与相同的权值w计算生成重构信号I’L 映射回输入层,通过不断缩小IL与I’L间的误差,训练每层网络。
      b)网络结构中各层网络结构都经过预训练之后,再通过反向迭代误差对整个网络结构进行权值微调。

    不同的双向深度网络

    1)深度玻尔兹曼机(deep Boltzmann machines, DBM)

      它由多层受限玻尔兹曼机(restricted Boltzmann machine, RBM )叠加构成。网络中所有节点间的连线都是双向的。
      a)玻尔兹曼机(Boltzmann machine, BM)是一种随机的递归神经网络。BM是基于能量的无向图概率模型。玻尔兹曼机由二值神经元构成,每个神经元只取0或1两种状态,状态1代表该神经元处于激活状态,0表示该神经元处于抑制状态。然而,即使使用模拟退火算法,这个网络的学习过程也十分慢。
      b)Hinton等提出的受限玻尔兹曼机去掉了玻尔兹曼机同层之间的连接,从而大大提高了学习效率。受限玻尔兹曼机分为可见层v以及隐层h,共两层,可见层和隐层的节点通过权值w相连接,2层节点之间是全连接,同层节点间互不相连。

    BM的训练算法

      BM的典型训练算法有变分近似法、随机近似法(stochastic approximation procedure,SAP)、对比散度算法(contrastivedivergence,CD)、持续对比散度算法(persistent contrastive divergence,PCD)、快速持续对比散度算法(fastpersistent contrastive divergence,FPCD)和回火MCMC算法等。

    RBM的原理

      RBMD的一层是可视层v(即输入层),一层是隐层h,每层内的节点之间设有连接。
      在已知v时,全部的隐藏节点之间都是条件独立的(因为这个模型是二部图),即p(h|v) = p(h1|v1) … p(hn|v)。
      同样的,在已知隐层h的情况下,可视节点又都是条件独立的,又因为全部的h和v满足玻尔兹曼分布,所以当输入v的时候,通过p(h|v)可得到隐层h,得到h之后,通过p(v|h)又可以重构可视层v。
      通过调整参数,使得从隐层计算得到的可视层与原来的可视层有相同的分布。这样的话,得到的隐层就是可视层的另外一种表达,即可视层的特征表示。

    RBM的训练方法

      首先随机初始化可见层,然后在可见层与隐层之间交替进行吉布斯采样:用条件分布概率P(h|v)计算隐层;再根据隐层节点,同样用条件分布概率P(v|h)来计算可见层;重复这一采样过程直到可见层和隐层达到平稳分布。
      后来Hinton提出了一种快速算法,称作对比离差(contrastive divergence, CD)学习算法。这种算法使用训练数据初始化可见层,只需迭代k次上述采样过程(即每次迭代包括从可见层更新隐层,以及从隐层更新可见层),就可获得对模型的估计。

    RBM的损失函数

      由于受限玻尔兹曼机是一种随机网络,而随机神经网络又是根植于统计力学的,所以受统计力学能量泛函的启发引入了能量函数。在随机神经网络中,能量函数是用来描述整个系统状态的测度。网络越有序或概率分布越集中,网络的能量就越小;反之,网络越无序或概率分布不集中,那么网络的能量就越大。所以当网络最稳定时,能量函数的值最小。

    DBM训练分为2个阶段

      即预训练阶段和微调阶段。
      a)在预训练阶段,采用无监督的逐层贪心训练方法来训练网络每层的参数,即先训练网络的第1个隐含层,然后接着训练第2,3,…个隐含层,最后用这些训练好的网络参数值作为整体网络参数的初始值。
      b)预训练之后,将训练好的每层受限玻尔兹曼机叠加形成深度玻尔兹曼机,利用有监督的学习对网络进行训练(一般采用反向传播算法)。

    2)深度信念网络(deep beliefnetworks, DBN)

    DBM与DBN的区别

      对于RBM若增加隐层的层数,可得到深度玻尔兹曼机(DBM,Deep Boltzmann Machine)。
      若在靠近可视层v的部分使用贝叶斯信念网,远离可视层的部分使用RBM,那么就可以得到一个深度信念网络(DBNs,Deep Belief Nets)。

    DBN的训练

      训练的过程中,所需要学习的即是联合概率分布。在机器学习领域中,其所表示的就是对象的生成模型。如果想要全局优化具有多隐层的深度信念网络是比较困难的。
      这个时候,可以运用贪婪算法,即逐层进行优化,每次只训练相邻两层的模型参数,通过逐层学习来获得全局的网络参数。这种训练方法(非监督逐层贪婪训练)已经被Hinton证明是有效的,并称其为相对收敛(contrastive divergence)。

    DBN的结构及其变种

      采用二值可见单元和隐单元RBM作为结构单元的DBN,在MNIST等数据集上表现出很好的性能。
      近几年,具有连续值单元的RBM,如mcRBM、mPoT模型和spike—and-slab RBM等已经成功应用。
      Spike—and—slab RBM中spike表示以0为中心的离散概率分布,slab表示在连续域上的稠密均匀分布,可以用吉布斯采样对spike—and—slab RBM进行有效推断,得到优越的学习性能。

    3)栈式自编码器(stacked auto-encoders, SAE)

    SAE与DBN的区别

      堆栈自编码网络的结构与DBN类似,由若干结构单元堆栈组成,不同之处在于其结构单元为自编码模型(auto—en—coder)而不是RBM。自编码模型是一个两层的神经网络,第一层称为编码层,第二层称为解码层。
      当然,SAE的结构单元除了自编码模型之外,还可以使用自编码模型的一些变形,如降噪自编码模型和收缩自编码模型等。

    4)MKMs

      受SVM算法中核函数的启发,在深度模型结构中加入核函数,构建一种基于核函数的深度学习模型。
      MKMs深度模型,如同深度信念网络(deep belief network,DBNs),反复迭代核PCA 来逼近高阶非线性函数,每一层核PCA 的输出作为下一层核PCA 的输入。作者模拟大型神经网络计算方法创建核函数族,并将其应用在训练多层深度学习模型中。

    L层MKMs深度模型的训练过程

      a)、去除输入特征中无信息含量的特征;
      b)、重复L次:A、计算有非线性核产生特征的主成分;B、去除无信息含量的主成分特征;
      c)、采用Mahalanobis距离进行最近邻分类。

      在参数训练阶段,采用核主成分分析法(kernelprincipal component analysis,KPCA)进行逐层贪婪无监督学习,并提取第k层数据特征中的前nk 主成分,此时第k+1层便获得第k层的低维空间特征。
      为进一步降低每层特征的维数,采用有监督的训练机制进行二次筛选:首先,根据离散化特征点边缘直方图,估计它与类标签之间的互信息,将nk 主成分进行排序;其次,对于不同的k 和w 采用KNN 聚类方法,每次选取排序最靠前的w验证集上的特征并计算其错误率,最终选择错误率最低的w个特征。

      该模型由于特征选取阶段无法并行计算,导致交叉验证阶段需耗费大量时间。据此,提出了一种改进方法,通过在隐藏层采用有监督的核偏最小二乘法(kernel partial least squares,KPLS)来优化此问题。

    5)DeSTIN

    历史

      目前较成熟的深度学习模型大多建立在空间层次结构上,很少对时效性(temporal)有所体现。相关研究表明,人类大脑的运行模式是将感受到的模式与记忆存储的模式进行匹配,并对下一时刻的模式进行预测,反复进行上述步骤,这个过程包含了时空信息。因此在深度结构中将时效性考虑在内,会更接近人脑的工作模式。

    理解

      DeSTIN 是一种基于贝叶斯推理理论、动态进行模式分类的深度学习架构,它是一种区分性的层次网络结构。
      在该深度模型中,数据间的时空相关性通过无监督方式来学习。
      网络的每一层的每个节点结构一致,且包含多个聚类中心,通过聚类和动态建模来模拟输入。每个节点通过贝叶斯信念推理输出该节点信念值,根据信念值提取整个DeSTIN网络的模式特征,最后一层网络输出特征可以输入分类器如SVM中进行模式分类。

      DeSTIN 模型的每一个节点都用来学习一个模式时序,底层节点通过对输入数据的时间与空间特征进行提取,改变其信念值,输入到下一层。由于每一个节点结构相同,训练时可采样并行计算,节约运算资源。
      该模型最重要的步骤就是信念值更新算法。信念值更新算法同时考虑了数据的时间与空间特征

    现状

      目前将时效性考虑在内的深度学习架构虽然不是很成熟,但也逐渐应用在不同领域,也是深度学习模型未来发展的一个新方向。

    更多相关内容
  • 面向可解释深度网络的单目深度估计 网络的可解释性:通过数据实验描述神经网络内部每一层甚至是每一个神经元所完成的功能。 0 Abstract   近期单目深度估计(MDE)取得了可喜的进展,我们有必要进一步了解网络的...

    Towards Interpretable Deep Networks for Monocular Depth Estimation

    面向可解释深度网络的单目深度估计

    网络的可解释性:通过数据实验描述神经网络内部每一层甚至是每一个神经元所完成的功能。

    0 Abstract

      近期单目深度估计(MDE)取得了可喜的进展,我们有必要进一步了解网络的内部解释性。现在的方法通过视觉线索来提供事后解释,这无法探索深度估计网络的内部表示。在本文中,我们发现网络的一些隐藏单元对深度范围具有选择性,这种行为可以作为内部表示的一种方式。本文采用隐藏单元的深度选择性来量化MDE的可解释性。此外,本文提出了中在不改变其原始框架的情况下训练可解释MDE深度网络的方法,该方法是为每一个隐藏单元分配一个深度范围以供选择。实验结果表明,本文方法可以增强MDE的可解释性通过大大提高MDE的深度选择性,同时不会损害甚至提高深度估计精度。我们的方法在不同层,不同模型和不同数据集上得到了验证。

    1 Introduction

      相比于立体图像,MDE对深度估计的要求和成本更低,对于3D场景的理解和自动驾驶的进一步使用至关重要,因此受到了人们的广泛关注。Eigen等人首先提出了深度估计的框架,后续许多研究提出了改进深度估计的方法,这使得深度估计的精度不断的提高,然而,只有少数研究关注了MDE网络的可解释性。由于深度估计可能与自动驾驶等下游任务密切相关,因此MDE模型缺乏可解释性可能会导致严重后果。
      总的来说,理解深层网络是非常有必要的,以前关于视觉深层网络的可解释性的研究主要集中在图像分类和图像生成。对于深度估计,Hu和Dijk等人虽然从像素和语义层面研究了输入图像中的视觉线索,分析了深度估计网络如何从单个图像中恢复出深度信息,但是他们依然讲深度估计网络作为黑匣子,从而减少了对MDE网络内部信息的探索。此外,他们的事后解释可能无法呈现可解释模型中的全部情况。虽然目前已存在一些可解释模型,如图像分类、目标检测和人员重识别,但是这些网络和MDE有很大区别,并不适用于MDE。
      研究表明,神经元单元通常提取不同语义概念层次的特征,从纹理和模式到对象和场景。为了学习可解释的神经网络,一种方法是对内部滤波器学习的表示进行分解,这使得滤波器更加专业化,收到这些作品的启发,我们观察到,在深层MDE网络中,一些隐藏单元在一定深度范围内是具有选择性的。为了量化这一结果,我们计算了每个单元的深度选择性,并从最具深度选择性到最不具深度选择性和其相反的两个方向依次减少了神经元的数量,我们发现从第一个方向去减少神经元的时候会导致深度估计的精度下降的更快,这表明了具备深度选择性的神经元更加重要。平且其深度选择性可以通过深度范围来解释。而MDE网络的可解释性可以通过这些神经元的深度选择性来量化。
      然后,现有的MDE模型中,大多数的单元都不具有深度选择性,为了更好的实现具有可解释性的MDE模型,我们提出了一种简单有效的可解释深度网络,通过最大化内部单元的选择性。我们的方法可以应用在现有的MDE网络而不添加任何的额外注释也不修改其原本框架。并且我们的MDE模型在提高网络可解释性的前提下可以不损害甚至提高网络深度估计的精度。总体贡献如下。

    • 1.基于内部神经元的深度选择性量化了MDE深度网络的可解释性。
    • 2.提出了一种新的方法来增强MDE网络的可解释性。
    • 3.提高网络可解释性的前提下可以不损害甚至提高网络深度估计的精度。

    2 Related work

      从图像中估计深度信息是场景理解的一个重要问题,最近提出了包括但不限于几何约束、多尺度网络框架和语义分割等方法来提升深度估计精度。然而这些研究很少关注网络的可解释性,通过修改输入图像Dijk等人研究了网络在预测深度时所利用的视觉线索。Hu等人研究了图像像素和深度信息的对应关系,虽然这些研究有助于理解MDE网络,但他们依然将网络视为黑匣子。
      许多研究旨在一种事后的方法来解释深度网络,这些方法可以分为显著性方法或归因方法,其中重要的像素在输入图像中被突出显示,以便网络在输入图像中被突出显示,虽然一些研究探讨了这种方法的可靠性,但这些方法不适用于MDE,因为MDE需要预测每个像素的深度值,使用突出显示的像素来确定所有像素的密集预测是不合理的。另一种是关于深度神经网络的可解释性的研究探索了单个神经元的属性或行为,当我们量化MDE网络的可解释性时,我们的工作应当属于这一类,MDE和图像分类任务的不同是我们区别于这些方法,此外,这些方法侧重于表示网络的可解释性而不是设计一个可解释的网络。
      一些研究设计了固有的可解释模型以缓解计算机视觉任务中模型可解释性的不足。Chen等人提出了一个可解释的对象识别模型,可以从中找到原型部分和原因,从而做出最终决定。Liao等人提出了一种方法,通过明确特征地图的匹配过程来增强人员再识别网络的可解释性。与我们的方法有相似概念的其他方法是学习更专门的过滤器。在其提出的可解释CNN中,每个过滤器代表一个特定的对象部分,而最近的一项研究通过减少过滤器类纠缠来训练可解释CNN,即每个过滤器只响应一个或几个类。在本文中,我们提出的可解释模型通过增加MDE模型内部单元的深度选择性来关注MDE任务,这与上述方法不同。

    3 Interpretability of Deep Networks for MDE

      在本章中我们介绍了如何计算神经元的深度选择性以及在不同深度范围内的平均响应来量化单元的可解释性。
      对于数据集D和其对应的深度图,我们记为(Xi,di),其中i为数据集D的样本数。对于深度网络l层的第k个神经元的激活图表示为Al,k(Xi),而将其通过双线性插值放大到深度图的分辨率记为A-l,k(Xi),深度图di进行离散化形成d-i,可以通过指示函数I(d-i=d)得到二进制掩码Mdi,在整个数据集上计算网络中第l层第k个神经元的平均响应公式Rdl,k如下,其中S为平均求和,圆圈点代表逐元素乘法。
    请添加图片描述
      基于平均响应,我们比较了每个单元是如何被不同深度范围激活的,并观察到一些单元对某个深度范围是有选择性的,本文将一个神经元的深度选择性表示如下,即一个神经元平均响应的最大值减去除最大值之外的平均响应的平均值再除以两者之和,记为一个神经元的深度选择性DSl,k。DS的值在[0,1]范围内,越接近1代表代表该神经元越具有深度选择性。

    在这里插入图片描述

    4 Interpretable Deep Networks for MDE

      我们想要在不修改网络框架和性能的情况下增强网络的可解释性,首先我们想到了正则化选择,但我们发现了其存在的问题,最后提出了单位分配深度范围。
      首先本文采用了如下的正则项来鼓励所有神经元提升深度选择性,公式如下,Kl为l层的神经元数目。(下面的公式就是一个求和公式,对所有层的神经元进行深度选择性求和,应该是作为一个损失函数,其中λ是超参数,用来平衡深度选择性和深度估计精度,一般损失函数作为约束,是在理想情况下损失函数最小,这里的深度选择性范围为[0,1],加上负号就不太懂他是怎么约束的了。)但是该方法会导致许多神经元没有相应或者崩溃(即对任何深度值都没有响应)。
    在这里插入图片描述
      为了解决上述问题,我们提出了一种简单有效的方法,为每个神经元分配一个特定范围供其选择,其中dk是被分配给单元k的离散化深度。
    在这里插入图片描述
      dk的计算公式如下所示,其中Kl ≤ Nb,保证每个离散化深度被分配给至少一个单元,如果计算过程中没有dk,则不计算这个神经元的深度选择性。
    在这里插入图片描述

    5 Experimental Results

      实验做了很多,从监督算法到自监督算法,对于不同数据集以及网络模型还有模型的每一层都做了实验,总体结果就是提升了网络的深度选择性,也提高了网络的性能,但这篇论文整体都偏向于构建可解释性的网络模型,和本人研究方向单目深度估计略有不同,所以读起来比较吃力。还有文中的一些公式描述太过隐晦,例如深度值的离散化和Nb的关系,加了符合的损失函数如何实现约束功能的,还有dk的计算方式,k再本文中一直作为神经元描述的,神经元本质上是一个参数矩阵,k作为分子的运算过程也不清晰。

    展开全文
  • 目录 一、贝叶斯公式 二、贝叶斯网络 定义 贝叶斯网络的3种结构形式: ...贝叶斯深度学习和深度学习的区别 贝叶斯深度学习框架 四、总结 五、若需理解更加详细资源请从以下链接进入(参考资源):...

    目录

    一、贝叶斯公式

    二、贝叶斯网络

    定义

    贝叶斯网络的3种结构形式:

    1、head-to-head

    2、tail-to-tail

    3、head-to-tail

    马尔科夫链

    三、贝叶斯深度学习

    贝叶斯深度学习如何进行预测?

    贝叶斯深度学习如何进行训练?

    贝叶斯深度学习和深度学习的区别

    贝叶斯深度学习框架

    四、总结

    五、若需理解更加详细资源请从以下链接进入(参考资源):


    一、贝叶斯公式

     

                                                                                          p(z|x)=\frac{p(x,z)}{p(x)}=\frac{p(x|z)p(z)}{p(x)}

    其中,p(z|x)被称为后验概率(posterior),p(x,z) 被称为联合概率,p(x|z) 被称为似然(likelihood),p(z)被称为先验概率(prior),p(x)被称为证明(evidence)。

      如果再引入全概率公式

                                                                                                  p(x)=\int p(x|z)p(z)dz

    可以变成如下形式:

                                                                                          p(z|x)=\frac{p(x|z)p(z)}{\int p(x|z)p(z)dz}

      如果z是离散型变量,则将上式中分母积分符号\int改成求和符号 \sum 即可。(概率分布中的概率质量函数一般用大写字母P(\cdot )表示,概率密度函数一般用小写字母 p(\cdot )表示,为了简便,用连续型变量举例)

    二、贝叶斯网络

    定义

    贝叶斯网络可称为信念网络,或有向无环图模型,也是一种概率图模型,是一种模拟人类推理过程中,因果关系的不确定性处理模型,其网络拓朴结构是一个有向无环图(DAG)。 

    贝叶斯网络的有向无环图中的节点表示随机变量,它们可以是可观察到的变量,或隐变量、未知参数等。认为有因果关系(或非条件独立)的变量命题用箭头来连接。(若两个节点间以一个单箭头连接在一起,表示其中一个节点是“因(parents)”,另一个是“果(children)”,两节点就会产生一个条件概率值,即连接两个节点的箭头代表此两个随机变量是具有因果关系,或非条件独立)

    例如,假设节点E直接影响到节点H,即E→H,则用从E指向H的箭头建立结点E到结点H的有向弧(E,H),权值(即连接强度)用条件概率P(H|E)来表示,如下图所示:

    某个系统中涉及的随机变量,根据是否条件独立绘制在一个有向图中,就形成了贝叶斯网络。其主要用来描述随机变量之间的条件依赖,圆圈表示随机变量(random variables),箭头表示条件依赖(conditional dependencies)。

     设G = ( I,E)表示一个有向无环图(DAG),其中 I 代表图形中所有的节点的集合,E代表有向连接线段的集合,且令X = (x_{i}),i ∈ I 为其有向无环图中的某一节点 i 所代表的随机变量,若节点 X 的联合概率可以表示成:

     则称 X 为相对于一有向无环图 G 的贝叶斯网络,其中,pa(i)表示节点 i 之“因”,或称pa(i)是 i 的 parents(父母)。 

    此外,对于任意的随机变量,其联合概率可由各自的局部条件概率分布相乘而得出:

    如下图所示,便是一个简单的贝叶斯网络:

    根据简单贝叶斯网络的关系列出下式:

    贝叶斯网络的3种结构形式:

    如图示的贝叶斯网络,可以表示为:

    x_{1}x_{2}独立(对应head-to-head),x_{6}x_{7}x_{4}给定的条件下独立(对应tail-to-tail)。

    1、head-to-head

    表示并可以简化为:

    c未知的条件下,a、b被阻断(blocked),是独立的,称之为head-to-head条件独立,对应前节那张图中的x_{1}x_{2}独立。

    2、tail-to-tail

    • 在 c 未知的时候,有:

                                                                           P(a,b,c)=P(c)*P(a|c)*P(b|c)

    此时,无法得出P(a,b)=P(a)P(b),即c未知时,a、b不独立。

    • 在 c 已知的时候,有:

                                                                                          P(a,b|c)=\frac{P(a,b,c)}{P(c)}

    然后将P(a,b,c)=P(c)*P(a|c)*P(b|c)带入式子中,得到:

                                                        P(a,b|c)=\frac{P(a,b,c)}{P(c)}=\frac{P(c)*P(a|c)*P(b|c)}{P(c)}=P(a|c)*P(b|c)

    即c已知时,a、b独立。

    所以,在c已知的条件下,a,b被阻断(blocked),是独立的,称之为tail-to-tail条件独立,对应前节那张图中的“x_{6}x_{7}x_{4}给定的条件下独立”。

    3、head-to-tail

    • c未知时,有:

                                                                                     P(a,b,c)=P(a)*P(c|a)*P(b|c)

    无法推出P(a,b)=P(a)P(b),即c未知时,a、b不独立。

    • c已知时,有:

                                                                                                   P(a,b|c)=\frac{P(a,b,c)}{P(c)}

    且根据P(a,c)=P(a)*P(c|a)=P(c)*P(a|c),可化简得到:

     所以,在c给定的条件下,a,b被阻断,是独立的,称之为head-to-tail条件独立,实际为一个链式网络。

    马尔科夫链

    三、贝叶斯深度学习

     

    在深度学习中,w_{i}({i = 1,...,n})和 b 都是一个确定的值,例如w_{1}= 0.1,b = 0.2 。即使我们通过梯度下降(gradient decent)更新 w_{i}= w_{i}-\alpha \cdot \frac{\partial J}{\partial w_{i}},我们仍未改变 “w_{i}b 都是一个确定的值” 这一事实。

    那什么是贝叶斯深度学习?将 w_{i}b由确定的值变成分布,这就是贝叶斯深度学习。

    贝叶斯深度学习认为每一个权重和偏置都应该是一个分布,而不是一个确定的值。如下图所示,给出一个贝叶斯深度学习示意图:

    上图为一个4*3*1的贝叶斯神经网络。(输入神经元个数为4,中间隐含层神经元个数为3,输出层神经元个数为1)

    贝叶斯深度学习如何进行预测?

    由于网络的权重和偏置都是分布,于是通过采样获得权重和偏置。使得其像非贝叶斯神经网络那样进行前向传播,可以对贝叶斯神经网络的权重和偏置进行采样,得到一组参数,然后像非贝叶斯神经网络那样使用即可。

    当然,也可以对权重和偏置的分布进行多次采样,得到多个参数组合,参数的细微改变对模型结果的影响在这里就可以体现出来。这也是贝叶斯深度学习的优势之一,多次采样最后一起得到的结果更加鲁棒。

    贝叶斯深度学习如何进行训练?

    对于非贝叶斯神经网络,在各种超参数固定的情况下,训练一个神经网络最终目的就是得到各个层之间的权重和偏置。而对于贝叶斯深度学习,我们训练的目的就是得到权重和偏置的分布。此时就要用到贝叶斯公式了。

    给定一个训练集 D=\left \{ (x_{1},y_{1}),(x_{2},y_{2}),...,(x_{m},y_{m}) \right \},我们用 D训练一个贝叶斯神经网络,则贝叶斯公式可以写为如下形式:

                                                                                            p(w|x,y)=\frac{p(y|x,w)p(w)}{\int p(y|x,w)p(w)dw}

    上式中,想要得到的是w的后验概率p(w|x,y) 。先验概率 p(w)无论是根据经验或者瞎猜,总之是已知的,例如初始时将p( w)设成标准正态分布,似然p(y|x,w)是一个关于w的函数。当w等于某个值时,上式的分子很容易就能算出来,但我们想要得到后验概率p(w|x,y),还要将分母算出来。但事实上,分母的积分要在w 的取值空间上进行,但是神经网络的单个权重的取值空间可以是实数集R,而这些不同层之间的权重构成的空间将相当复杂,基本没法积分。所以问题就出现在分母的计算上。

    贝叶斯深度学习的训练方法目前有以下几种:(请参考Deep Bayesian Neural Networks. -- Stefano Cosentino
    (1)Approximating the integral with MCMC:用 MCMC(Markov Chains Monte Carlo) 采样去近似分母的积分。
    (2)Using black-box variational inference (with Edward):直接用一个简单点的分布 qq 去近似后验概率的分布 pp,即不管分母怎么积分,直接最小化分布 qq 和 pp 之间的差异,如可以使用 KL散度 计算。详情可以参考贝叶斯编程框架 Edward 中的介绍。
    (3)Using MC (Monte Carlo) dropout:蒙特卡罗 dropout,简单而强大,不改变一般神经网络结构,只是要求神经网络带 dropout 层,训练过程和一般神经网络一致,只是测试的时候也打开 dropout,并且测试时需要多次对同一输入进行前向传播,然后可以计算平均和统计方差。

    贝叶斯深度学习和深度学习的区别

    在于权重和偏置是否为离散分布的。贝叶斯深度学习还有以下优点:
    (1)贝叶斯深度学习比非贝叶斯深度学习更加的鲁棒。因为可以进行多次采样,贝叶斯深度学习中可以解决在深度学习中对权重进行细微改变所造成的影响。
    (2)贝叶斯深度学习可以提供不确定性,且不再是使用softmax生成概率值。(详情参见 Deep Learning Is Not Good Enough, We Need Bayesian Deep Learning for Safe AI)。

    贝叶斯深度学习框架

    四、总结

    贝叶斯网络(Bayesian network),又称信念网络(belief network)或是有向无环图模型(directed acyclic graphical model),是一种概率图型模型。

    但是贝叶斯神经网络(Bayesian neural network)是贝叶斯和神经网络的结合,贝叶斯神经网络和贝叶斯深度学习的概念可以混用。

     

    五、若需理解更加详细资源请从以下链接进入(参考资源):

    贝叶斯网络:https://cloud.tencent.com/developer/article/1476046

    贝叶斯深度学习:https://www.cnblogs.com/wuliytTaotao/p/10281766.html

    展开全文
  • 深度网络学习调研报告

    千次阅读 2016-12-10 11:14:36
    深度网络学习调研报告   目  录 1.前言............................................... 3 1.1课题研究的背景及意义.......................... 3 1.2国内外研究的现状.............................. 3 ...
    

    深度网络学习调研报告 


     

    1.前言...............................................3

    1.1课题研究的背景及意义..........................3

    1.2国内外研究的现状..............................3

    1.3报告的基本内容..............................4

    1.4本章小结......................................5

    2.深度学习网络的基本思想与意义.......................6

    2.1深度学习的起源................................6

    2.2深度学习的发展................................7

    2.3深度学习的基本思想............................8

    2.4深度学习的意义................................9

    2.5本章小结.....................................10

    3.深度学习网络的基本算法和模型结构..................11

    3.1深度学习的常用模型结构.......................11

    3.2深度学习的基本算法与改进.....................14

    3.2.1深度学习的基本算法...........................14

    3.2.2深度学习算法的新进.........................15

    3.3本章小结.....................................17

    4.深度学习网络与多层前向神经网络的比较..............18

    4.1深度学习与浅层学习的区别.....................18

    4.2网络模型结构的比较...........................19

    4.2训练方法的比较...............................19

    4.3本章小结.....................................21

    5.深度学习网络的应用................................22

    5.1深度学习与大数据时代的联系...................22

    5.2深度学习与计算机视觉.........................23

    5.3深度学习的具体应用...........................23

    5.4本章小结.....................................28

    6.深度学习网络的未来发展前景........................29

    6.1深度学习面临的困难...........................29

    6.2深度学习的局限性.............................30

    6.3深度学习的未来展望与趋势.....................31

    6.4本章小结.....................................34

     ..............................................35

    参考文献及浏览网页..................................36

     

    1前言

    随着人类跨入学习型社会的步伐越走越快,学会学习、终身学习等学习能力成为人类一项最基本的生存能力。但是,衡量学习者是否学会了如何学习的依据,不是学习者已掌握的知识数量、达到的知识广度,而是其整合信息以建构知识意义并灵活地加以运用,最终解决实际问题的能力,即深度学习能力。因此,随着全球对信息化背景下学生深度学习能力的高度重视,近年来有关深度学习的研究也受到国内外学者的广泛关注[1]

    1.1课题研究的背景及意义

    神经网络的学习与研究在近十年是一个很热门的研究课题,而最终这些研究成果部分可以体现在我们的日常生活中,神经网络特有的非线性适应性信息处理能力,克服了传统人工智能方法对于直觉的缺陷,使之在神经专家系统、模式识别、智能控制、组合优化、预测等领域得到成功应用。神经网络与其它传统方法相结,将推动人工智能和信息处理技术不断发展。近年来,神经网络在模拟人类的认知的道路上更加深入发展,并与模糊系统、遗传算法、进化机制等结合,形成计算智能,成为人工智能的一个重要方向。虽然神经网络具有这么多的优点与可实用性,但是浅层神经网络在有限样本和计算单元情况下对复杂函数的表示能力有限,针对复杂分类问题其泛化能力受限,已经适应不了高速科技与信息时代的发展所引发的一系列深层次问题,故而引发人们对深层网络的构建、学习与发展。

    1.2国内外研究的现状

          

              自2006 年以来,深度学习在学术界持续升温,美国,加拿大,欧洲相继成为此领域的科研重镇。2010年美国国防部先进研究项目局首次资助深度学习,参与方包括斯坦福大学、纽约大学和NEC美国研究院等机构。2011 年,微软语音识别采用深度学习技术降低语音识别错误率20-30%,是该领域十多年来最大的突破性进展。2012年是深度学习研究和应用爆发的一年,深度学习被应用于著名生物制药公司黙克的分子药性预测问题, 从各类分子中学习发现那些可能成为药物的分子获得世界最好效果;谷歌的Google Brain 项目用16000 个处理器的服务器集群构建了一套超过10亿个节点的具备自主学习能力的神经网络,能自动从输入的大量数据中归纳出概念体系,图片搜索、无人驾驶汽车和Google  Glass 都将会从中受益。6月,Google公司的深度学习系统在识别物体的精确度上比上一代系统提高了一倍,并且大幅度削减了Android系统语音识别系统的错误率。百度引入深度学习以后,语音识别效果的提升超过了以往业界在过15年里所取得的成绩。12月,微软亚洲研究院展示了中英即时口译系统,错误率仅为7%,而且发音十分顺畅[2]

      2013年,欧洲委员会发起模仿人脑的超级计算机项目,计划历时10年投入16亿美元,由全球80个机构的超过200名研究人员共同参与,希望在理解人类大脑工作方式上取得重大进展,并推动更多能力强大的新型计算机的研发,就资助力度,项目范围,和雄心而言,该项目堪比于大型强子对撞机项目。库兹韦尔当前的目标就是帮助计算机理解自然语言并以自然语源与用户对话,虽然库兹韦尔的目标还要很多年才能实现。他希望将深度学习算法用到解决自然语言的问题上,让计算机能够发现语言的问题,解决语言的问题。

    1.3本报告阐述的基本内容

    主要流程图如下:

                                                                

                                                                                                               1-1报告内容流程图

    第一部分:深度学习的基本思想与意义;

    第二部分:深度学习的基本算法与网络结构;

    第三部分:深度学习与多层前向神经网络的比较,分析其相同点与不同点;

    第四部分:深度学习网络的应用领域以及目前已经取得的一些成果;

    第五部分:深度学习网络的未来发展趋势与前景,及其发展的局限性;

    1.4本章小结

            本章简单介绍了课题研究的背景意义、国内外的研究现状、本报告的主要内容,引出课题研究的几个模块和全文报告的书写规律。
                   

    2.深度学习网络的基本思想与意义

    2.1深度学习的起源

    深度学习(Deep Learning)是机器学习中一个非常接近AI的领域,其动机在于建立、模拟人脑进行分析学习的神经网络。深度学习属于无监督学习。

    深度学习的概念源于人工神经网络的研究。深度学习是相对于简单学习而言的,目前多数分类、回归等学习算法都属于简单学习,其局限性在于有限样本和计算单元情况下对复杂函数的表示能力有限,针对复杂分类问题其泛化能力受到一定制约。深度学习可通过学习一种深层非线性网络结构,实现复杂函数逼近,表征输入数据分布式表示,并展现了强大的从少数样本集中学习数据集本质特征的能力。含多隐层的多层感知器就是一种深度学习结构。深度学习模拟更多的神经层神经活动[3],通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示,深度学习的示意图如图2所示。

                       

                                       2深度学习的简单示意图


       图灵在1950 年的论文里,提出图灵试验的设想,即,隔墙对话,你将不知道与你谈话的,是人还是电脑。这无疑给计算机,尤其是人工智能,预设了一个很高的期望值。但是半个世纪过去了,人工智能的进展,远远没有达到图灵试验的标准。2006年前,尝试训练深度架构都失败了:训练一个深度有监督前馈神经网络趋向于产生坏的结果(同时在训练和测试误差中),然后将其变浅为1(1或者2个隐层)

       深度学习的概念由Hinton等人于2006年提出。基于深信度网(DBN)提出非监督贪心逐层训练算法,为解决深层结构相关的优化难题带来希望,随后提出多层自动编码器深层结构。此外Lecun等人提出的卷积神经网络是第一个真正多层结构学习算法,它利用空间相对关系减少参数数目以提高训练性能。

    2.2机器学习的两次浪潮对深度学习的发展

      机器学习的两次浪潮:从浅层学习到深度学习[4]


      在解释深度学习之前,我们需要了解什么是机器学习。机器学习是人工智能的一个分支,而在很多时候,几乎成为人工智能的代名词。简单来说,机器学习就是通过算法,使得机器能从大量历史数据中学习规律,从而对新的样本做智能识别或对未来做预测。从1980年代末期以来,机器学习的发展大致经历了两次浪潮:浅层学习(ShallowLearning)和深度学习(Deep Learning)。需要指出是,机器学习历史阶段的划分是一个仁者见仁,智者见智的事情,从不同的维度来看会得到不同的结论。这里我们是从机器学习模型的层次结构来看的。

      第一次浪潮:浅层学习

      1980年代末期,用于人工神经网络的反向传播算法(也叫Back Propagation算法或者BP算法)的发明,给机器学习带来了希望,掀起了基于统计模型的机器学习热潮。这个热潮一直持续到今天。人们发现,利用BP算法可以让一个人工神经网络模型从大量训练样本中学习出统计规律,从而对未知事件做预测。这种基于统计的机器学习方法比起过去基于人工规则的系统,在很多方面显示出优越性。这个时候的人工神经网络,虽然也被称作多层感知机(Multi-layer Perceptron),但实际上是一种只含有一层隐层节点的浅层模型。

      90年代,各种各样的浅层机器学习模型相继被提出,比如支撑向量机(SVMSupportVector Machines)、Boosting、最大熵方法(例如LRLogistic Regression)等。这些模型的结构基本上可以看成带有一层隐层节点(如SVMBoosting),或没有隐层节点(如LR)。这些模型在无论是理论分析还是应用都获得了巨大的成功。相比较之下,由于理论分析的难度,加上训练方法需要很多经验和技巧,所以这个时期浅层人工神经网络反而相对较为沉寂。

      2000年以来互联网的高速发展,对大数据的智能化分析和预测提出了巨大需求,浅层学习模型在互联网应用上获得了巨大成功。最成功的应用包括搜索广告系统(比如GoogleAdWords、百度的凤巢系统)的广告点击率CTR预估、网页搜索排序(例如Yahoo!和微软的搜索引擎)、垃圾邮件过滤系统、基于内容的推荐系统等。

      第二次浪潮:深度学习

      2006年,加拿大多伦多大学教授、机器学习领域泰斗——Geoffrey Hinton和他的学生Ruslan Salakhutdinov在顶尖学术刊物《科学》上发表了一篇文章,开启了深度学习在学术界和工业界的浪潮。这篇文章有两个主要的信息:1.很多隐层的人工神经网络具有优异的特征学习能力,学习得到的特征对数据有更本质的刻画,从而有利于可视化或分类;2.深度神经网络在训练上的难度,可以通过逐层初始化(Layer-wise Pre-training)来有效克服,在这篇文章中,逐层初始化是通过无监督学习实现的。

      自2006年以来,深度学习在学术界持续升温。不论是国内外的专家学者还是各个国家的国防部门,还有一些大型的网络科技公司都对深度学习产生了浓厚的学习兴趣。正如文章开头国内外研究现状中所描述的,今天Google、微软、百度等知名的拥有大数据的高科技公司争相投入资源,占领深度学习的技术制高点,正是因为它们都看到了在大数据时代,更加复杂且更加强大的深度模型能深刻揭示海量数据里所承载的复杂而丰富的信息,并对未来或未知事件做更精准的预测。

    2.3深度学习的基本思想

      

      假设我们有一个系统S,它有n层(S1,…Sn),它的输入是I,输出是O,形象地表示为: I =>S1=>S2=>…..=>Sn=> O,如果输出O等于输入I,即输入I经过这个系统变化之后没有任何的信息损失,保持了不变,这意味着输入I经过每一层Si都没有任何的信息损失[23],即在任何一层Si,它都是原有信息(即输入I)的另外一种表示。现在回到我们的主题Deep Learning,我们需要自动地学习特征,假设我们有一堆输入I(如一堆图像或者文本),假设我们设计了一个系统S(有n层),我们通过调整系统中参数,使得它的输出仍然是输入I,那么我们就可以自动地获取得到输入I的一系列层次特征,即S1…, Sn。对于深度学习来说,其思想就是对堆叠多个层,也就是说这一层的输出作为下一层的输入。通过这种方式,就可以实现对输入信息进行分级表达了。

      另外,前面是假设输出严格地等于输入,这个限制太严格,我们可以略微地放松这个限制,例如我们只要使得输入与输出的差别尽可能地小即可,这个放松会导致另外一类不同的Deep Learning方法。上述就是Deep Learning的基本思想。

                                                

     

    如上图所示把学习结构看作一个网络,则深度学习的核心思路如下:

    无监督学习用于每一层网络的pre-train

    每次用无监督学习只训练一层,将其训练结果作为其高一层的输入;

    用自顶而下的监督算法去调整所有层

    2.4深度学习的意义

    面对海量数据,深度学习算法可以做到传统人工智能算法无法做到的事情,而且输出结果会随着数据处理量的增大而更加准确。目前看来,深度学习是实现人工智能最有效、也是取得成效最大的实施方法。AndrewNg提到目前百度大脑的新算法就是属于深度学习,他虽然没有具体指明该算法的领先程度,但却强调了其在处理数据方面比传统人工智能算法存在的优越性,并可以使人工智能实现一种正循环。

     深度学习带来了人工智能的正循环,深度学习算法可以使机器自己学会世界上的一些概念,也就是机器将具备一定的人类般的学习和思考能力。人类自身的学习能力可以帮助我们自行认识世界,而当机器当过模拟人脑具备了这一能力之后,就可以在一定程度上取代我们部分脑力工作。就像在工业革命和电力革命的影响力,我们自身从体力劳动中解放出来一样,在深度学习所带来的人工智能革命下,我们同样可以将脑力工作外包给机器。
       
    深度学习使机器更加聪明,这些机器智能将不断下落到具体的互联网应用中,带给我们更加智能的服务。比如说,通过视觉获取和处理图像、通过声音讲出语言是人类最自然的与外界沟通的方式,但传统的计算机服务却无法从本质上读懂我们这些内容,当我们进行图像搜索或者向计算机发送某项指令时,我们需要预先在大脑中做一遍处理,将我们原本要表达的意思转化成计算机能够读懂的文本信息,然后手动输入到计算机并获得结果。但在机器学习的帮助下,我们随意把一张图片丢给电脑就能返回结果,我们直接用语言就可以来命令计算机来为我们提供各种服务。


    2.5本章小结

        本章逐一对深度学习的起源、发展、基本思想以及意义进行了详细的介绍,为下面报告的研究做准备,给出了一个队深度学习网络的基本解释。

     

     

    深度学习网络的基本算法与模型结构

    3.1深度学习网络的常用模型

    AutoEncoder自动编码器[20]

           Deep Learning最简单的一种方法是利用人工神经网络的特点[25],人工神经网络(ANN)本身就是具有层次结构的系统,如果给定一个神经网络,我们假设其输出与输入是相同的,然后训练调整其参数,得到每一层中的权重。自然地,我们就得到了输入I的几种不同表示(每一层代表一种表示),这些表示就是特征。自动编码器就是一种尽可能复现输入信号的神经网络。为了实现这种复现,自动编码器就必须捕捉可以代表输入数据的最重要的因素,就像PCA那样,找到可以代表原信息的主要成分。

    Sparse Coding稀疏编码

      如果我们把输出必须和输入相等的限制放松,同时利用线性代数中基的概念,即O = a11 +a22+….+ ann Φi是基,ai是系数,我们可以得到这样一个优化问题:

    Min |I – O|,其中I表示输入,O表示输出。

     通过求解这个最优化式子,我们可以求得系数ai和基Φi,这些系数和基就是输入的另外一种近似表达。

                                   

      因此,它们可以用来表达输入I,这个过程也是自动学习得到的。如果我们在上述式子上加上L1Regularity限制,得到:

    Min |I – O| + u*(|a1| + |a2| + … +|an |)

      这种方法被称为SparseCoding。通俗的说,就是将一个信号表示为一组基的线性组合,而且要求只需要较少的几个基就可以将信号表示出来。稀疏性定义为:只有很少的几个非零元素或只有很少的几个远大于零的元素。要求系数 ai 是稀疏的意思就是说:对于一组输入向量,我们只想有尽可能少的几个系数远大于零。选择使用具有稀疏性的分量来表示我们的输入数据是有原因的,因为绝大多数的感官数据,比如自然图像,可以被表示成少量基本元素的叠加,在图像中这些基本元素可以是面或者线。同时,比如与初级视觉皮层的类比过程也因此得到了提升(人脑有大量的神经元,但对于某些图像或者边缘只有很少的神经元兴奋,其他都处于抑制状态)。

     稀疏编码算法是一种无监督学习方法,它用来寻找一组超完备基向量来更高效地表示样本数据。虽然形如主成分分析技术(PCA)能使我们方便地找到一组完备基向量,但是这里我们想要做的是找到一组超完备基向量来表示输入向量(也就是说,基向量的个数比输入向量的维数要大)。超完备基的好处是它们能更有效地找出隐含在输入数据内部的结构与模式。然而,对于超完备基来说,系数ai不再由输入向量唯一确定。因此,在稀疏编码算法中,我们另加了一个评判标准稀疏性来解决因超完备而导致的退化(degeneracy)问题。

    Restricted Boltzmann Machine (RBM)限制波尔兹曼机

         假设有一个二部图,每一层的节点之间没有链接,一层是可视层,即输入数据层(v),一层是隐藏层(h),如果假设所有的节点都是随机二值变量节点(只能取0或者1值),同时假设全概率分布p(v,h)满足Boltzmann分布,我们称这个模型是RestrictedBoltzmannMachine (RBM)

                                                     

         下面我们来看看为什么它是Deep Learning方法。首先,这个模型因为是二部图,所以在已知v的情况下,所有的隐藏节点之间是条件独立的(因为节点之间不存在连接),即p(h|v)=p(h1|v)…p(hn|v)。同理,在已知隐藏层h的情况下,所有的可视节点都是条件独立的。同时又由于所有的vh满足Boltzmann分布,因此,当输入v的时候,通过p(h|v)可以得到隐藏层h,而得到隐藏层h之后,通过p(v|h)又能得到可视层,通过调整参数,我们就是要使得从隐藏层得到的可视层v1与原来的可视层v如果一样,那么得到的隐藏层就是可视层另外一种表达,因此隐藏层可以作为可视层输入数据的特征,所以它就是一种Deep Learning方法。

    Deep Belief Networks深信度网络

        DBNs是一个概率生成模型,与传统的判别模型的神经网络相对,生成模型是建立一个观察数据和标签之间的联合分布,对P(Observation|Label)P(Label|Observation)都做了评估,而判别模型仅仅而已评估了后者,也就是P(Label|Observation)。对于在深度神经网络应用传统的BP算法的时候,DBNs遇到了以下问题:

    1)需要为训练提供一个有标签的样本集;

    2)学习过程较慢;

    3)不适当的参数选择会导致学习收敛于局部最优解。

                                                 

         DBNs由多个限制玻尔兹曼机(Restricted BoltzmannMachines)层组成,一个典型的神经网络类型如图三所示。这些网络被限制为一个可视层和一个隐层,层间存在连接,但层内的单元间不存在连接。隐层单元被训练去捕捉在可视层表现出来的高阶数据的相关性。

    Convolutional Neural Networks卷积神经网络

          卷积神经网络是人工神经网络的一种,已成为当前语音分析和图像识别领域的研究热点。它的权值共享网络结构使之更类似于生物神经网络,降低了网络模型的复杂度,减少了权值的数量。该优点在网络的输入是多维图像时表现的更为明显,使图像可以直接作为网络的输入,避免了传统识别算法中复杂的特征提取和数据重建过程。卷积网络是为识别二维形状而特殊设计的一个多层感知器,这种网络结构对平移、比例缩放、倾斜或者共他形式的变形具有高度不变性。

          CNNs是受早期的延时神经网络(TDNN)的影响。延时神经网络通过在时间维度上共享权值降低学习复杂度,适用于语音和时间序列信号的处理。

           CNNs是第一个真正成功训练多层网络结构的学习算法。它利用空间关系减少需要学习的参数数目以提高一般前向BP算法的训练性能。CNNs作为一个深度学习架构提出是为了最小化数据的预处理要求。在CNN中,图像的一小部分(局部感受区域)作为层级结构的最低层的输入,信息再依次传输到不同的层,每层通过一个数字滤波器去获得观测数据的最显著的特征。这个方法能够获取对平移、缩放和旋转不变的观测数据的显著特征,因为图像的局部感受区域允许神经元或者处理单元可以访问到最基础的特征,例如定向边缘或者角点。

     

    3.2深度学习的基本算法与改进

    3.2.1深度学习的基本算法

    实验结果表明,对深度结构神经网络采用随机初始化的方法,基于梯度的优化使训练结果陷入局部极值,而找不到全局最优值,并且随着网络结构层次的加深,更难以得到好的泛化性能,使得深度结构神经网络在随机初始化后得到的学习结果甚至不如只有一个或两个隐层的浅结构神经网络得到的学习结果好[8]。由于随机初始化深度结构神经网络的参数得到的训练结果和泛化性能都很不理想,在 2006 年以前,深度结构神经网络在机器学习领域文献中并没有进行过多讨论6,7

    通过实验研究发现,用无监督学习算法对深度结构神经网络进行逐层预训练,能够得到较好的学习结果。最初的实验对每层采用RBM生成模型,后来的实验采用自编码模型来训练每一层两种模型得到相似的实验结果。一些实验和研究结果证明了无监督预训练相比随机初始化具有很大的优势,无监督预训练不仅初始化网络得到好的初始参数值,而且可以提取关于输入分布的有用信息,有助于网络找到更好的全局最优解910

    对深度学习来说,无监督学习和半监督学习是成功的学习算法的关键组成部分,主要原因包括以下几个方面[11]:

    a)与半监督学习类似,深度学习中缺少有类标签的样本,并且样例大多无类标签。

    b)逐层的无监督学习利用结构层上的可用信息进行学习,避免了监督学习梯度传播的问题,可减少对监督准则函数梯度给出的不可靠更新方向的依赖。

    c)无监督学习使得监督学习的参数进入一个合适的预置区域内,在此区域内进行梯度下降能够得到很好的解。

    d)在利用深度结构神经网络构造一个监督分类器时,无监督学习可看做学习先验信息,使得深度结构神经网络训练结果的参数在大多情况下都具有意义。

    e)在深度结构神经网络的每一层采用无监督学习将一个问题分解成若干与多重表示水平提取有关的子问题,是一种常用的可行方法,可提取输入分布较高水平表示的重要特征信息。

    基于上述思想,Hinton等人在 2006年引入了 DBN并给出了一种训练该网络的贪婪逐层预训练算法6。贪婪逐层无监督预训练学习的基本思想为:首先采用无监督学习算法对深度结构神经网络的较低层进行训练,生成第一层深度结构神经网络的初始参数值;然后将第一层的输出作为另外一层的输入,同样采用无监督学习算法对该层参数进行初始化。在对多层进行初始化后,用监督学习算法对整个深度结构神经网络进行微调,得到的学习性能具有很大程度的提高。

    3.2.2深度学习网络算法的新进展

    1)深度费希尔映射方法

    Wong等人12提出一种新的特征提取方法———正则化深度费希尔映射(regularized deep Fish-er mapping,RDFM)方法,学习从样本空间到特征空间的显式映射,根据 Fisher准则用深度结构神经网络提高特征的区分度。深度结构神经网络具有深度非局部学习结构,从更少的样本中学习变化很大的数据集中的特征,显示出比核方法更强的特征识别能力,同时RDFM方法的学习过程由于引入正则化因子,解决了学习能力过强带来的过拟合问题。在各种类型的数据集上进行实验,得到的结果说明了在深度学习微调阶段运用无监督正则化的必要性。

    2)非线性变换方法

    aiko等人13 提出了一种非线性变换方法,该变换方法使得多层感知器(multi-layer perceptronMLP)网络的每个隐神经元的输出具有零输出和平均值上的零斜率,使学习 MLP 变得更容易。将学习整个输入输出映射函数的线性部分和非线性部分尽可能分开,用shortcut 权值(shortcut weight)建立线性映射模型,令 Fisher信息阵接近对角阵,使得标准梯度接近自然梯度。通过实验证明非线性变换方法的有效性,该变换使得基本随机梯度学习与当前的学习算法在速度上不相上下,并有助于找到泛化性能更好的分类器。用这种非线性变换方法实现的深度无监督自编码模型进行图像分类和学习图像的低维表示的实验,说明这些变换有助于学习深度至少达到五个隐层的深度结构神经网络,证明了变换的有效性,提高了基本随机梯度学习算法的速度,有助于找到泛化性更好的分类器。

    3)稀疏编码对称机算法

    anzato等人14提出一种新的有效的无监督学习算法———稀疏编码对称机(sparse encodingsymmetric machineSESM),能够在无须归一化的情况下有效产生稀疏表示。SESM的损失函数是重构误差和稀疏罚函数的加权总和,基于该损失函数比较和选择不同的无监督学习机,提出一种与文献15算法相关的迭代在线学习算法,并在理论和实验上将SESM与 RBM PCA 进行比较,在手写体数字识别 MNIST数据集和实际图像数据集上进行实验,表明该方法的优越性         

    4)迁移学习算法

    在许多常见学习场景中训练和测试数据集中的类标签不同,必须保证训练和测试数据集中的相似性进行迁移学习。Mesnil等人研究了用于无监督迁移学习场景中学习表示的不同种类模型结构,将多个不同结构的层堆栈使用无监督学习算法用于五个学习任务,并研究了用于少量已标记训练样本的简单线性分类器堆栈深度结构学习算法。Ben-gio研究了无监督迁移学习问题,讨论了无监督预训练有用的原因,如何在迁移学习场景中利用无监督预训练,以及在什么情况下需要注意从不同数据分布得到的样例上的预测问题。

    5)自然语言解析算法

    Collobert基于深度递归卷积图变换网络(graph transformer networkGTN)提出一种快速可扩展的判别算法用于自然语言解析,将文法解析树分解到堆栈层中,只用极少的基本文本特征,得到的性能与现有的判别解析器和标准解析器的性能相似,而在速度上有了很大提升。

    6)学习率自适应方法

    学习率自适应方法可用于提高深度结构神经网络训练的收敛性并且去除超参数中的学习率参数,其中包括全局学习率、层次学习率、神经元学习率和参数学习率等。最近研究人员提出了一些新的学习率自适应方法,如 Duchi 等人提出的自适应梯度方法和 Schaul 等人提出的学习率自适应方法;Hinton提出了收缩学习率方法使得平均权值更新在权值大小的 1/1000 数量级上;Leoux等人提出自然梯度的对角低秩在线近似方法,并说明该算法在一些学习场景中能加速训练过程。

    3.3本章小结

           本章对深度学习的五种常用模型进行了简单的介绍,又阐述了深度学习的基本算法以及最近几年的算法的新进展。

     

     

     

    4.深度学习网络与多层前向神经网络的比较

        

        深度学习是机器学习研究中的一个新的领域,其动机在于建立、模拟人脑进行分析学习的神经网络,它模仿人脑的机制来解释数据,例如图像,声音和文本。深度学习是无监督学习的一种。深度学习的概念源于人工神经网络的研究。含多隐层的多层感知器就是一种深度学习结构。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。

    4.1深度学习与浅层学习的区别

    深度学习本质:通过构建多隐层的模型和海量训练数据(可为无标签数据),来学习更有用的特征,从而最终提升分类或预测的准确性。“深度模型”是手段,“特征学习”是目的。

    与浅层学习区别:

    1)强调了模型结构的深度,通常有5-10多层的隐层节点;

    2)明确突出了特征学习的重要性,通过逐层特征变换,将样本在原空间的特征表示变换到一个新特征空间,从而使分类或预测更加容易。与人工规则构造特征的方法相比,利用大数据来学习特征,更能够刻画数据的丰富内在信息。

    下图简单把深度学习与浅层学习做了比较[16]

                          


    4.2 网络模型结构的比较


    Deep learning与传统的神经网络之间有相同的地方[27]也有很多不同。二者的相同在于deep learning采用了神经网络相似的分层结构,系统由包括输入层、隐层(多层)、输出层组成的多层网络,只有相邻层节点之间有连接,同一层以及跨层节点之间相互无连接,每一层可以看作是一个logistic regression模型;这种分层结构,是比较接近人类大脑的结构的。

    而为了克服神经网络训练中的问题,DL采用了与神经网络很不同的训练机制。传统神经网络中,采用的是backpropagation的方式进行,简单来讲就是采用迭代的算法来训练整个网络,随机设定初值,计算当前网络的输出,然后根据当前输出和label之间的差去改变前面各层的参数,直到收敛(整体是一个梯度下降法)。而deeplearning整体上是一个layer-wise的训练机制。这样做的原因是因为,如果采用back propagation的机制,对于一个deep network7层以上),残差传播到最前面的层已经变得太小,出现所谓的gradientdiffusion(梯度扩散)。

                                 

    4.3训练方法的比较

    4.3.1多层前向神经网络

     BP算法作为传统训练多层网络的典型算法,实际上对仅含几层网络,该训练方法就已经很不理想。深度结构(涉及多个非线性处理单元层)非凸目标代价函数中普遍存在的局部最小是训练困难的主要来源[28]

    BP算法存在的问题:

    1)梯度越来越稀疏:从顶层越往下,误差校正信号越来越小;(2)收敛到局部最小值:尤其是从远离最优区域开始的时候(随机值初始化会导致这种情况的发生);(3)一般,我们只能用有标签的数据来训练:但大部分的数据是没标签的,而大脑可以从没有标签的的数据中学习;

    4.3.2 Deep learning训练过程

    如果对所有层同时训练,时间复杂度会太高;如果每次训练一层,偏差就会逐层传递。这会面临跟上面监督学习中相反的问题,会严重欠拟合(因为深度网络的神经元和参数太多了)。

     2006年,hinton提出了在非监督数据上建立多层神经网络的一个有效方法,简单的说,分为两步,一是每次训练一层网络,二是调优,使原始表示x向上生成的高级表示r和该高级表示r向下生成的x'尽可能一致。方法是:

    1)首先逐层构建单层神经元,这样每次都是训练一个单层网络。

    2)当所有层训练完后,Hinton使用wake-sleep算法进行调优。

    将除最顶层的其它层间的权重变为双向的,这样最顶层仍然是一个单层神经网络,而其它层则变为了图模型。向上的权重用于认知,向下的权重用于生成。然后使用Wake-Sleep算法调整所有的权重。让认知和生成达成一致,也就是保证生成的最顶层表示能够尽可能正确的复原底层的结点。比如顶层的一个结点表示人脸,那么所有人脸的图像应该激活这个结点,并且这个结果向下生成的图像应该能够表现为一个大概的人脸图像。Wake-Sleep算法分为醒(wake)和睡(sleep)两个部分。

    1wake阶段:认知过程,通过外界的特征和向上的权重(认知权重)产生每一层的抽象表示(结点状态),并且使用梯度下降修改层间的下行权重(生成权重)。也就是如果现实跟我想象的不一样,改变我的权重使得我想象的东西就是这样的

    2sleep阶段:生成过程,通过顶层表示(醒时学得的概念)和向下权重,生成底层的状态,同时修改层间向上的权重。也就是如果梦中的景象不是我脑中的相应概念,改变我的认知权重使得这种景象在我看来就是这个概念

     Deep learning训练过程具体如下:

    1)使用自下上升非监督学习(就是从底层开始,一层一层的往顶层训练):采用无标定数据(有标定数据也可)分层训练各层参数,这一步可以看作是一个无监督训练过程,是和传统神经网络区别最大的部分(这个过程可以看作是featurelearning过程):具体的,先用无标定数据训练第一层,训练时先学习第一层的参数(这一层可以看作是得到一个使得输出和输入差别最小的三层神经网络的隐层),由于模型capacity的限制以及稀疏性约束,使得得到的模型能够学习到数据本身的结构,从而得到比输入更具有表示能力的特征;在学习得到第n-1层后,将n-1层的输出作为第n层的输入,训练第n层,由此分别得到各层的参数;

    2)自顶向下的监督学习(就是通过带标签的数据去训练,误差自顶向下传输,对网络进行微调):基于第一步得到的各层参数进一步fine-tune整个多层模型的参数,这一步是一个有监督训练过程;第一步类似神经网络的随机初始化初值过程,由于DL的第一步不是随机初始化,而是通过学习输入数据的结构得到的,因而这个初值更接近全局最优,从而能够取得更好的效果;所以deep learning效果好很大程度上归功于第一步的featurelearning过程。

    4.4本章小结

      本章先简单概括介绍了深度学习与浅层学习的区别,又在网络模型结构和训练过程上分别对深度学习与多层前向神经网络做了详细的比较。

     

     

    5.深度学习网络的应用

    5.1深度学习与大数据时代的联系

    在工业界一直有个很流行的观点:在大数据条件下,简单的机器学习模型会比复杂模型更加有效。例如,在很多的大数据应用中,最简单的线性模型得到大量使用。而最近深度学习的惊人进展,促使我们也许到了要重新思考这个观点的时候。简而言之,在大数据情况下,也许只有比较复杂的模型,或者说表达能力强的模型,才能充分发掘海量数据中蕴藏的丰富信息。运用更强大的深度模型,也许我们能从大数据[26]中发掘出更多有价值的信息和知识。

    语音识别已经是一个大数据的机器学习问题,在其声学建模部分,通常面临的是十亿到千亿级别的训练样本。在Google的一个语音识别实验中,发现训练后的DNN对训练样本和测试样本的预测误差基本相当。这是非常违反常识的,因为通常模型在训练样本上的预测误差会显著小于测试样本。因此,只有一个解释,就是由于大数据里含有丰富的信息维度,即便是DNN这样的高容量复杂模型也是处于欠拟合的状态,更不必说传统的GMM声学模型了。所以从这个例子中我们看出,大数据需要深度学习。大数据的发展也促进了深度学习的深层次挖掘学习,这是一个相互促进的过程,相信未来这两者一定会有更多的相互碰撞发展。

    5.2深度学习与计算机视觉

    计算机视觉[29]的终极目标是“建立一个智能的系统,能够让计算机和机器人像人一样看懂世界,也可能超越人类,比人类更能看懂这个世界”。深度学习,作为人工智能的一种形式,通过组合低层特征形成具有抽象表示的深层神经网络,模拟人脑的思维进行感知、识别和记忆,突破了低层特征到高层语义理解的障碍,极大地提升了机器在视觉特征的提取、语义分析和理解方面的智能处理水平。随着计算机技术和人工智能的发展,期待计算机视觉研究取得更大的突破,在社会生活中得到更加广泛的应用!

    一群来自美国麻省理工学院(MIT)电脑科学与人工智能实验室(Computer Science andArtificial Intelligence Laboratory, CASIL)的研究团队创造一个可以预测影像或照片中,让人容易忘记与记忆的区域。目前研究团队正在拟定以这项功能为原型,设计一个能够帮助使用者的照片调整成容易让人印象深刻的应用程序(app)。假如这款应用程序如期上架,将会对教学、行销和记忆领域有所帮助。

                                                      

     

    5.3深度学习具体的应用

    5.3.1搜索引擎

      

       由于计算机的高度普及,很多人可能已经固化了“搜索”的印象:面对屏幕上的一个输入框,敲入一串词语,电脑返回一堆链接,用户再逐个点开查看哪个是自己需要的内容。这是传统的搜索,其交互方式是人工提炼出关键词输入,才返回答案。所以使用搜索引擎其实是一种技术,考验的是人能否准确观察问题、恰当提炼主题词,做到这些才有可能得到自己想要的信息。这就与一切搜索引擎“公平地为每个人提供信息”的初衷相悖了。

       但当我们要教会从没接触过电脑的父母这一搜索过程时,就发现它与人类天生的本能并不相同:父母们往往会指着一株不知名的植物,问电脑是否能告诉我们这是什么;他们也并不习惯键入文字内容,甚至不会输入法,他们更希望对着电脑说一句“明天什么天气”就能得到答案。

       2013年初,百度建立了深度学习研究院。百度多媒体业务负责人用一个叫“明星脸搜索”的产品演示了人脸搜索能力。改产品的功能是实验对象实时拍一张照片,百度可以搜索出这张照片最像哪个明星。令人惊奇的是,在百度作为参考列出的互联网图片搜索照片中出现的第一张图片就是此次实验对象10年前拍的一张照片。也就是说,在没有任何其他条件限定的前提下,百度根据一个现实场景,找到了一个确定的人。

       深度学习的技术配合上大数据的储备,语音搜索、图像搜索等新兴技术就不再仅仅是技术的噱头,而是将搜索用户从数亿拓展到数十亿。这也是Google、苹果和百度纷纷在语音搜索上推出新产品的原因。

       另外值得一提的是,在今年国际机器学习大会ICML2013中,Andrew的学生仅用价值2万美元的GPU集群,就做到了与引言中提到的Google曾经用约100万美元做的猫脸识别软件相同的准确率。

    5.3.2语音和音频

       Yu等人在文献35中介绍了深度学习的基本概念、DBN等常用的深度学习模型以及流行且有效的深度学习算法,包括RBM和基于降噪自编码模型的预训练方法,并指出在许多信号处理应用中,特别是对语音和音频信号处理,深度学习技术有好的学习结果。通过综合深度学习模型强大的判别训练和连续建模能力,深度学习已成功应用于大规模词汇连续语音识别任务。卷积 DBN和堆栈自编码网络等深度结构神经网络已经被用于语音和音频数据处理中,如音乐艺术家流派分类、说话者识别、说话者性别分类和语音分类等,得到非常好的学习结果。堆栈多层条件随机场(conditional random fieldCF)等其他深度结构神经网络结构模型也成功用于语言识别、语音识别、序列标记36和置信度校准等语音相关任务。Lee等人37首次用无监督卷积神经网络方法将 DBN用于声学信号处理,说明该方法在讲话者、性格和音素检测上表现出比梅尔倒谱系数(Melfrequency cepstrum coefficientMFCC)更优越的性能。Hamel等人38 DBN用于音乐类型识别和自动标记问题,将原始级光谱作为 DBN的输入,用贪婪预训练和监督微调方法进行训练,得到的分类精度比 MFCC有很大改进。Schmidt等人39 用基于回归的 DBN 直接从光谱中学习特征,将系统应用于特定的音乐情感识别问题,并且该系统也可以应用于任何基于回归的音频特征学习问题。Deng等人40 将堆栈自编码网络用于语音特征编码问题,以最小的重构误差将数据压缩到预先设定长度的表示。

    5.3.3图像和视频

      1)手写体字符识别 Bengio等人41运用统计学习理论和大量的实验工作证明了深度学习算法非常具有潜力,说明数据中间层表示可以被来自不同分布而相关的任务和样例共享,产生更好的学习效果,并且在有 62个类别的大规模手写体字符识别场景上进行实验,用多任务场景和扰动样例来得到分布外样例,并得到非常好的实验结果。Lee等人42对 RBM进行拓展,学习到的模型使其具有稀疏性,可用于有效地学习数字字符和自然图像特征。Hinton等人关于深度学习的研究说明了如何训练深度 S 型神经网络来产生对手写体数字文本有用的表示,用到的主要思想是贪婪逐层预训练RBM之后再进行微调4344

      2)人脸识别 Nair等人45 用噪声 rectified线性单元组成的深度结构神经网络将深度学习应用于目标识别和人脸验证;anzato等人15提出深度产生式模型用于人脸识别;Susskind等人46将因式分解的三路 RBM 用于建立成对人脸图像的模型。Luo等人47 研究如何从局部遮挡的人脸图像解析面部成分,提出一种新的人脸解析器,将人脸成分分割重构为重叠的形态数据过程,首先在块等级和组等级上检测人脸,在 DBN 上执行产生式训练过程,再用逻辑斯蒂回归进行判别式调整,然后计算对像素敏感的标记映射。从 LFWBioIDCUFSF三个数据集中挑选 2 239个图像进行实验,说明了该方法的有效性,该方法不仅对局部遮挡的人脸图像具有鲁棒性,而且也为人脸分析和人脸合成提供了更丰富的信息。

      3)图像识别和检索 DBN和堆栈自编码网络在单个图像识别任务中表现出很好的性能,成功用于生成紧凑而有意义的图像检索表示形式,并且已用于大型图像检索任务中,得到非常好的结果6。图像识别方面比 DBN 更一般的方法在文献48中有所描述。Taylor等人49将条件 DBN用于视频排序和人类动作合成,条件 DBN使得 DBN的权值与之前的数据相关联,可以提高训练的有效性。Lee和 Raina等人5051 用稀疏编码和 DBN 从自然图像中学习有效特征表示。Nair等人52提出改进的 DBN,该模型的顶层模型用三阶 BM,他们将这种模型用于三维目标识别任务 NOB数据集上,实验结果显示出训练得到了很低的预测误差率。Tang等人53 提出两种策略来提高 DBN 的鲁棒性,首先将 DBN的第一层具有稀疏连接结构引入正则化方法,接着提出一种概率降噪算法,这些技术在高噪声图像识别任务和随机噪声的鲁棒性方面显示出其有效性。Lee等人54提出一种深度学习方法使脑图像分割自动化,用卷积神经网络建立用于脑图像分割的判别特征,能自动从人类专家提供的类标签中进行学习,通过实验验证该方法在自动多类脑图像分割方面显示出优越的性能,表明该方法可以替代已有的模板图像分割方法,减少了图像分割过程对人类专家的干预和对先验信息的需求。

    5.3.4语言处理和信息检索

    除了语音和图像,深度学习的另一个应用领域问题是自然语言处理(NLP)。经过几十年的发展,基于统计的模型已经成为NLP的主流,但作为统计方法之一的人工神经网络在NLP领域几乎没有受到重视。最早应用神经网络的NLP问题是语言模型。加拿大蒙特利尔大学教授Yoshua Bengio等人于2003年提出用embedding的方法将词映射到一个矢量表示空间,然后用非线性神经网络来表示N-Gram模型。世界上最早的最早的深度学习用于NLP的研究工作诞生于NEC美国研究院,其研究员Ronan CollobertJason Weston2008年开始采用embedding和多层一维卷积的结构,用于POS TaggingChunkingNamed Entity RecognitionSemantic RoleLabeling等四个典型NLP问题。值得注意的是,他们将同一个模型用于不同任务,都能取得与业界最前沿相当的准确率。最近以来,斯坦福大学教授Chris Manning等人在将深度学习用于NLP的工作也值得关注。

    文献55阐述了深度学习用于自然语言处理的基本动机、思路、模型和学习算法,提出基本的神经网络模型和训练算法,并指出这些方法在语言模型、POS标记、命名实体识别和情感分析等任务中表现出很好的性能。深度学习已经被成功应用于文本、图像和音频等单模态无监督特征学习。Salakhutdi-nov Lecun等人将 DBN和堆栈自编码网络用于对文档建立索引以便检索;Deng等人也将该想法应用于音频文档检索问题中;Collobert等人提出用卷积 DBN作为模型同时解决许多经典问题,如词性标记、名实体标记、语义角色识别和相似词识别等;Deselaers等人将 DBN用于解决机器音译问题。Ngiam等人提出深度学习的一种新应用———在多模态上学习特征,提出一系列学习任务,说明如何训练深度结构神经网络,证明在特征学习时使用多个模态有助于学习得到更好的特征,并说明如何学习模态之间的共享表示,在视听语音分类 CUAVE AVLetters数据集上对提出的方法进行了验证。在线评价和舆情分析的需求使得情感分类问题成为热点研究问题,Glorot等人将深度学习方法用于域自适应情感分类器设计问题,用基于有稀疏rectified单元的堆栈降噪自编码网络从无监督的在线评价和建议中提取有意义的特征表示,在四种亚马逊产品的评价数据上进行实验,结果说明用高阶特征表示训练的情感分类器的学习性能明显优于当前的其他方法;另外该方法允许在 22 个领域的更大的工业级数据集上成功执行域自适应学习方法,在很大程度上提高了分类器的泛化性能。

    5.3.5深度学习在教学实践上的应用

    深度学习与浅层学习相对,最早源于美国学者FerenceMarton Roger Saljo的实验教学法研究,按照获取和加工信息的方式把学习者分为浅层加工者和深层加工者,即对应浅层学习和深度学习。国外学者早已把深度学习理论应用到教育实践中,Mellanby. Jane将深度学习中的批判思维用于牛津大学高考录取指标中;WeeHoe Tan把深度学习应用到生物课程教学中。国内对深度学习起步较晚,研究也主要集中在对深度学习概念的理解、特征的详细阐述及促进深度学习的策略研究。深度学习是一种旨在提高学习能力、实践能力、创新能力的学习方式,学习者在理解的基础上同已有知识建立联系,并能灵活应用解决实际问题。深度学习是积极主动的自主学习,而不是消极的被动学习;强调新旧知识的有机联系,而不是孤立的知识碎片;强调学用结合的有意义的学习,而不是死记硬背的机械学习;强调自主探究的研究性学习,而不是盲目认同的接受式学习。由此可见,深度学习通过调动学习者的积极性,注重知识间的内在联系,强调知识应用,在学习者自主探究的过程中培养学生的终身学习能力、知识应用能力和知识创新能力,适合当今知识时代培养创新人才的需要。文献 [56] 把研究性教学应用到计算机网络的实践教学中,从教学的各个环节调动学生的积极性,发挥学生的主体作用,培养学生自学能力。结合深度学习思想和文献 [56]中的教学策略,本文探讨把深度学习思想引入到路由与交换技术课程的实践教学中,从实践教学安排到课堂内外每个环节的安排和实施进行介绍。

                                                                    

    5.4本章小结

      本章先简单概括介绍了深度学习与大数据和计算机视觉的关系,又列举了深度学习的几个主要应用的方面,可见深度学习的应用具有广泛性,影响了很多领域的发展,不论是科学还是实际的使用上都具有很重要的意义。

     

     

    6.深度学习的局限性与未来的展望

    6.1深度学习面临的困难

       研究的困难仍在于我们无法完全掌握人类大脑的工作原理,但科学家目前在这方面进展飞速。中国的科学家正在研究一个新的大脑图谱,他们将之命名为“脑网络穹顶”项目。在美国,随着奥巴马政府宣布将支持筹建一项跨学科的科研项目“基于神经科学技术创新的人脑研究”,许多类似的项目正雨后春笋般得涌现,“大神经网络时代”[18]已经到来。

       如果我们能够搞清楚人类大脑成千上万的神经元如何互相连结以及中枢神经系统存储和处理信息的原理,那么像吴恩达这样的工程师对于“人工大脑”的设想就能够更加清晰,对于人脑的研究成果和数据将能购帮助深度学习算法的研究,也能加速诸如计算机“视觉”、语言分析,以及苹果和谷歌等公司为智能手机提供的语音识别等技术的发展。

       引用加州大学伯克利分校计算神经科学家布鲁诺•奥尔斯豪森的一句话——我们要学习生物生存使用的技巧,问题的关键在于生物将秘密隐藏得太深了,我们还没有掌握这些秘密所需要的工具。

    理论问题 

    理论问题主要体现在两个方面,一个是统计学习方面的,另一个是计算方面的。我们已经知道,深度模型相比较于浅层模型有更好的对非线性函数的表示能力。具体来说,对于任意一个非线性函数,根据神经网络的Universal Approximation Theory,我们一定能找到一个浅层网络和一个深度网络来足够好地表示。但深度网络只需要少得多的参数。但可表示性不代表可学习性。我们需要了解深度学习的样本复杂度,也就是我们需要多少训练样本才能学习到足够好的深度模型。从另一方面来说,我们需要多少计算资源才能通过训练得到更好的模型?理想的计算优化方法是什么?由于深度模型都是非凸函数,这方面的理论研究极其困难。

    建模问题

    在推进深度学习的学习理论和计算理论的同时,我们是否可以提出新的分层模型,使其不但具有传统深度模型所具有的强大表示能力,还具有其他的好处,比如更容易做理论分析。另外,针对具体应用问题,我们如何设计一个最适合的深度模型来解决问题?我们已经看到,无论在图像深度模型,还是语言深度模型,似乎都存在深度和卷积等共同的信息处理结构。甚至对于语音声学模型,研究人员也在探索卷积深度网络。那么一个更有意思的问题是,是否存在可能建立一个通用的深度模型或深度模型的建模语言,作为统一的框架来处理语音、图像和语言?

    工程问题

    需要指出的是,对于互联网公司而言,如何在工程上利用大规模的并行计算平台来实现海量数据训练,是各家公司从事深度学习技术研发首先要解决的问题。传统的大数据平台如Hadoop,由于数据处理的Latency太高,显然不适合需要频繁迭代的深度学习。现有成熟的DNN训练技术大都是采用随机梯度法(SGD)方法训练的。这种方法本身不可能在多个计算机之间并行。即使是采用GPU进行传统的DNN模型进行训练,其训练时间也是非常漫长的,一般训练几千小时的声学模型所需要几个月的时间。而随着互联网服务的深入,海量数据训练越来越重要,DNN这种缓慢的训练速度必然不能满足互联网服务应用的需要。Google搭建的DistBelief,是一个采用普通服务器的深度学习并行计算平台,采用异步算法,由很多计算单元独立地更新同一个参数服务器的模型参数,实现了随机梯度下降算法的并行化,加快了模型训练速度。与Google采用普通服务器不同,百度的多GPU并行计算平台,克服了传统SGD训练的不能并行的技术难题,神经网络的训练已经可以在海量语料上并行展开。可以预期,未来随着海量数据训练的DNN技术的发展,语音图像系统的识别率还会持续提升。

    6.2深度学习的局限性

    首先,缺乏理论支持。对于深度学习架构,存在一系列的疑问,卷积神经网络为什么是一个好的架构(事实上其存在梯度散射等缺点),深度学习的结构需要多少隐层,在一个大的卷积网络中到底需要多少有效的参数(很多权重相互之间似乎都存在冗余),随机梯度下降方法优化权重得到一个局部最优值。虽然深度学习在很多实际的应用中取得了突出的效果,但这些问题一直困扰着深度学习的研究人员。深度学习方法常常被视为黑盒,大多数的结论确认都由经验而非理论来确定。不管是为了构建更好的深度学习系统,还是为了提供更好的解释,深度学习都还需要更完善的理论支撑。

    其次,缺乏推理能力。深度学习技术缺乏表达因果关系的手段,缺乏进行逻辑推理的方法。解决这个问题的一种典型方法是将深度学习与结构化预测相结合。目前几个带有结构化预测模块的增强的深度学习系统已经被提出来用于OCR,身体姿态检测,和语义分割等任务中。总的来说,更多新的思路应该被提出以应用于需要复杂推理的任务中。尽管深度学习和简单推理已经应用于语音和手写字识别很长一段时间了,我们仍需要在大的向量上使用新的范式来代替基于规则的字符表达式操作。最终,那些结合了复杂推理和表示学习的系统将为人工智能带来巨大的进步。

    第三,缺乏短时记忆能力。人类的大脑有着惊人的记忆功能,我们不仅能够识别个体案例,更能分析输入信息之间的整体逻辑序列。这些信息序列富含有大量的内容,信息彼此间有着复杂的时间关联性。例如在自然语言理解的许多任务(例如问答系统)中需要一种方法来临时存储分隔的片段,正确解释视频中的事件并能够回答有关它的问题需要记住的视频中发生的事件的抽象表示。包括递归神经网络在内的深度学习系统,都不能很好地存储多个时间序列上的记忆。这使得研究人员提出在神经网络中增加独立的记忆模块,如LSTM,记忆网络(Memory Networks),神经图灵机(Neural Turing Machines),和Stack增强RNNstack-Augmented RNN)。虽然这些方法很有意思,也取得了一定的成果,但在未来仍需要更多的新的思路。

    最后,缺乏执行无监督学习的能力。无监督学习在人类和动物的学习中占据主导地位,我们通过观察能够发现世界的内在结构,而不是被告知每一个客观事物的名称。有趣的是,在机器学习领域,神经网络的复兴恰恰是在无监督学习取得不断进度的2000s中期,虽然无监督学习可以帮助特定的深度网络进行预训练,但最终绝大部分能够应用于实践的深度学习方法都是使用纯粹的有监督学习。这并不能代表非监督学习在深度学习中没有作用,反而具有非常大的潜力,因为我们拥有的非标记数据比标记数据多得多,只是我们还没有找到很合适的非监督学习算法,非监督学习在未来存在巨大的研究空间。毫无疑问,今后计算机视觉的进步有赖于在无监督学习上取得突破,尤其是对于视频的理解。

    6.3深度学习的未来展望与趋势

       深度学习与大数据的良好配合

    移动互联网和多种智能设备的普及使我们进入大数据时代[32],为人工智能的发动机——深度学习提供了足够多的燃料,早期的神经网络只拥有有限的数据处理能力。超过这个临界点时,为它们输入更多信息并不会带来更好的表现。而现在的神经网络系统所依赖的开发者的指导和调整要少得多。同时,不管你能输入多少数据,系统都能够对其进行充分利用。谷歌、Facebook和百度等互联网巨头坐拥海量信息,大量的搜索历史、社交信息和图片等。因此,他们才会积极布局深度学习,让机器不再惧怕信息过载的问题,反而是更好的从这些海量信息中挖掘中更多价值。

    从另一方面来说,神经网络要发挥作用必须先接受训练[33]。比如说,一台机器要教会自己识别人脸,必须先被展示一个「训练集」,其中包含成千上万的照片。也就是说,数据量的增长反过来也会提升神经网络的表现。也就是说,对于深度学习和人工智能,需要越来越多的数据。虽然谷歌、Facebook和百度这类科技巨头坐拥海量数据,但依然需要更加开放的互联网中的数据输入。例如,Facebook人工智能实验室负责人Yann LeCun在接受IEEE采访时表示,Facebook的人脸识别算法DeepFace在数据库中的测试结果是97.25%,但如果图片库里有数亿张脸,那精确性就远不及97.25%。所以,这些科技巨头需要将深度学习和人工智能的研究更加开放,因为只有将他们已有的成果从一个相对封闭的环境中换到整个互联网中时,才能使深度学习模型更加完善,使人工智能得到更加广泛的应用。


    深度学习对人工智能的默契推动


    面对海量数据,深度学习算法可以做到传统人工智能算法无法做到的事情,而且输出结果会随着数据处理量的增大而更加准确。人工智能能给我们带来什么,人工智能的循环发展是非常迅速的,深度学习带来了AI人工智能的良性循环。现在有了更多的用户就可以获得更加大量的数据,更多的数据通过人工智能被更好地利用,来推动更多的优秀产品被生产出来,而这个只是在最近几年我们才做的事情。大家搜集到的数据越来越多,但是引擎不够大,所以不能深度地利用这些数据[34]。在我们搜集更多数据的过程中,推动更多应用发生的过程中,对之前那些老的算法是要有批判精神的。而深度学习之所以能给我们带来更多的价值就是因为我们现在可以从越来越多的数据当中受益,获得越来越好的结果,开发越来越多的潜能。深度学习确实改变着我们的生活,改变着传统的人工智能,使人们最终可以把链接做得特别好,把发动机和燃料的链接做得特别好,把产品、大量用户和海量数据之间的连接做得更加通畅。

    深度学习带来了人工智能的正循环[17],那这对于我们来说意味着什么?Andrew Ng曾提出,深度学习算法可以使机器自己学会世界上的一些概念,也就是机器将具备一定的人类般的学习和思考能力。人类自身的学习能力可以帮助我们自行认识世界,而当机器当过模拟人脑具备了这一能力之后,就可以在一定程度上取代我们部分脑力工作。就像在工业革命和电力革命的影响力,我们自身从体力劳动中解放出来一样,在深度学习所带来的人工智能革命下,我们同样可以将脑力工作外包给机器。


    NIPS(神经信息处理系统)2015年论坛提出的几大趋势[30]


      (1)神经网络框架变得越来越复杂而精密,在感知、语言翻译等等方面的大部分最先进的神经网络框架正在发展并且不在仅仅关于简单前馈式(feed forward)框架或者卷积式框架(convolutional),特别地,它们正在混合并匹配不同的神经网络技术如LSTMs、卷积、自定义目标函数、多皮层柱(multiple corticalcolumns)等等;(2)所有最酷的系统都在使用LSTMs,大部分最先进的系统都将LSTMs纳入到系统中,以使系统具有捕捉重复模式的记忆力;(3)“注意力模型”在升温,一些系统,但不是全部,开始放到注意力模型的背景中,或者说让神经网络在完成任务的过程中试图学习在哪里放置其注意力,这些还不是一个正规神经网络流水线中的一部分,但是已经时不时的出现在模型中了;(4)神经图灵机仍然有趣,但并没有影响到实际工作,神经网络图灵机(Neural Turing Machines)的研究,或者说能够有差异地训练一个神经网络来学习算法,仍然有趣,但是还没有应用到实际工作中,它们还很复杂并且目前只能解决玩具问题(toy problems);(5)符号微分法越来越重要,随着神经网络框架和它们的目标函数可以自定义,同时也变得越来越复杂,人为手动提取它们反向传播中的梯度变得越来越难,也容易出错。最新的工具包如谷歌的TensorFlow有了自动符号微分,所以你可以构建你的框架和目标函数,在训练过程中工具包会在众多的碎片中自动地找出正确的微分来保证误差梯度可以反向传播;(6)神经网络模型压缩带来了越来越多令人惊喜的结果,多个团队展示了不同的方式来剧烈地压缩一个训练过的模型的权重数量:二值化(binarization)、固定浮点(fixed floating point)、迭代剪枝(iterative pruning)和微调措施(fine tuning steps)等等更多,这些方法为许多应用带来了可能:有可能将很复杂的模型适配到手机上,例如,与云端无延迟的对话来得到结果,如语音识别;(7)深度学习和强化学习的交叉在继续,深度神经网络和强化学习的计划能力两者结合给人带来的令人兴奋的可能。在这个领域一些令人兴奋的工作正在发生,如端对端机器人,使用深度学习和强化学习来完成原始传感器数据到实际动作执行器的直接过度;(8)如果你没使用批量归一化,那么现在应该开始了,批量归一化(batch normalization)正被考虑成为神经网络工具包的一个标准部分;(9)神经网络和产品应用,应该携手同行,让研究人员创造新的神经网络方法,而且也有途径将这些方法快速扩展到实际应用产品中。

    6.4本章小结

      本章阐述了深度学习面临的一些问题,指出了深度学习的局限性,又根据现状对未来的发展趋势进行了展望。

     

                                 总结

    深度学习引爆了一场激烈的科技革命,必将会催生出其他领域的变革和跨越式的发展。首先,深度学习作为核心信息技术,将本质上提升各类信息服务的质量,大幅提升自然语言、图片、声音识别和语言翻译等方面的准确率,可以预见未来的信息服务尤其是互联网信息服务的竞争,将聚焦于深度学习引发的人工智能,能否应用好深度学习将会对信息企业乃至国家的信息安全产生深远影响。另外,由深度学习带来的各项突破,包括计算机视觉发展推动了下一代智能汽车的不断完善,以及应用于蛋白质分析等生物和医药领域并取得重要成果,都预示着深度学习不仅成为新一代信息科学研究的主流方法,更逐渐演变为一项核心通用技术和基础技术,对于物联网、智能设备、自动驾驶汽车、生物制药、金融和经济调控等多领域具有非常直接的现实意义,将有可能引爆新的经济增长点,引导产业和经济社会的发展方向。尤其需要注意的是,美国国防部、欧洲委员会都将深度学习列为前沿和革命技术加以资助,我们完全可以判断深度学习的应用绝不会局限于科技和经济,相信其对社会管理、军事等更多领域都将产生深远影响。

                               部分参考文献及浏览的网页

    [1]浅谈深度学习的基本思想与方法

    http://wenku.baidu.com/view/9e3e252c964bcf84b9d57bad.html?re=view

    [2]深度学习发展现状

    http://wenku.baidu.com/link?url=9Dwi8PtqWnUebD4FHGh8igXQobVXm7I-L0Y65H5Xxd-S7yu6HONh4Vp493_TbnSo1OZlTiXEk6dnZTYBzyrpngI7KnZqHzu4w6bYLEH5VGG

    [3]深度学习百度百科知识

    http://baike.baidu.com/link?url=w2BB6Wy84IlTgs-SPNGW7XkYQK_JPp42SZYOfiu3vmgc9nI2R8wB9qJl4FA-FO3norLKPDRI9RtZkEVDUg_goq

    [4]深度学习: 推进人工智能的梦想

    http://www.csdn.net/article/2013-05-29/2815479

    [5]刘建伟.深度学习研究进展[J].计算机应用研究.20147):第31卷第七期

    1921-1927

    [6]HINTON G EOSINDEO STEH Y W A fast learning algorithm

    for deep belief netsJ]. Neural Computation200618(7):1527-

    1554

    7 BENGIO YLAMBLINPPOPOVICI Det al Greedy layer-wise

    training of deep networksC/ /Advances in Neural Information Pro-

    cessing Systems Cambridge:MIT Press2007:153-160

    8BOTTOU LLarge-scale machine learning with stochastic gradient de-

    scentC/ /Proc of the 19th International Conferece on Computational

    StatisticsBerlin:Springer-Verlag2010:177-186

    9SAXE A MKOH P WCHENZet al On random weights andun-supervised feature learningC/ /Proc of the 28th International Con-ference on Machine Learning New York: ACM Press2011:1089-1096

    10SWESKY KCHEN BoMALIN Bet al A tutorial on stochastic

    approximation algorithms fortraining restricted Boltzmann machines

    and deep belief netsC/ /Proc of Information Theory and Applica-

    tions Workshop 2010: 1-10

    11 TAYLO GHINTON G E Factored conditional restrictedBoltzmann

    machines for modeling motionstyleC/ /Proc of the 26th Annual In-

    ternational Conference onMachine Learning New York:ACM Press

    2009:1025-1032

    12WONG W KSUN M Deep learning regularized Fisher mappings

    J]. IEEE Trans on Neural Networks201122(10):1668-1675

    13]RAIKO TVALPOLA HLeCUN Y Deep learning made easier by

    linear transformations inperceptronsC/ /Proc of the 15th Interna-

    tional Conference onArtificial Intelligence and Statistics 2012:924-

    932

    14]RANZATO MBOUEAU Y LLeCUN YSparse feature learning

    for deep belief networksC/ /Advances in Neural Information Pro-

    cessing Systems Cambridge:MIT Press2008:1185-1192

    15]RANZATO MPOULTNEYCCHOPA Set al Efficient learning

    of sparse representationswith an energy-based modelC/ /Advances

    in Neural InformationProcessing Systems Cambridge: MIT Press

    2007:1137-1144

     [16]杜红乐.深度学习在实践教学中的应用研究[J].2015.4

    .20148):47-48

    [17],深度学习带来了人工智能的正循环,那这对于我们来说意味着什么?

    http://www.huxiu.com/article/42258/1.html

    [18],深度学习30年创新路

    http://36kr.com/p/533832.html

    [19],探索“深度学习”的奥秘

    http://www.qstheory.cn/science/2015-06/24/c_1115706389.htm

    [20],深度学习算法简介

    http://www.cnblogs.com/ysjxw/archive/2011/10/08/2201782.html

    [21],深度学习、自然语言处理和表征方法

    http://blog.jobbole.com/77709/

    [22],深度学习发展现状

    http://wenku.baidu.com/link?url=9Dwi8PtqWnUebD4FHGh8igXQobVXm7I-L0Y65H5Xxd-S7yu6HONh4Vp493_TbnSo1OZlTiXEk6dnZTYBzyrpngI7KnZqHzu4w6bYLEH5VGG

    [23],浅谈深度学习(Deep Learning)的基本思想和方法

    http://blog.csdn.net/xianlingmao/article/details/8478562

    [24],张建明.深度学习的研究与发展[J].2015.02:第36卷第2191-200

    [25],深度学习领域三大牛LeCunBengioHinton联合打造史上最权威综述

    http://dataunion.org/19192.html

    [26],深度学习 vs.大数据:神经网络权值的版权属于谁?

    http://www.csdn.net/article/2015-05-19/2824707

    [27],谁能(尽量的)用科普语言讲一下 “深度学习(deep learning)”的神经网络

    和 以前那种 “多层神经网络” 的区别?

    http://tieba.baidu.com/p/3349640872

    [28],“深度学习”和“多层神经网络”的区别?

    http://www.zhihu.com/question/26017374

    [29],王涛.计算机视觉前沿与深度学习[J].2015.4:第11卷第四期

    [30],解析深度学习的未来十大趋势

    http://cvchina.net/post/156.html

    [31]Facebook人工智能负责人Yann LeCun谈深度学习的局限性

    http://www.infoq.com/cn/news/2015/07/deep-learning-limit?

    utm_source=tuicool

    [32],深度学习现状及更加开放的未来

    http://zhaoyunfeng.baijia.baidu.com/article/67156

    [33],专家展望未来5年深度学习发展趋势

    http://www.thebigdata.cn/JieJueFangAn/28843.html

    [34],百度吴恩达:深度学习与人工智能

    http://tech.sina.com.cn/i/2015-03-22/doc-iavxeafs1999837.shtml

    35YU DongDENG Li Deep learning and its applications to signal andinformationprocessingJ]. IEEE SignalProcessing Magazine201128(1):145-154

    36 YU DongWANGShi-zhenDENG Li Sequentiallabeling using

    deep-structured conditionalrandom fieldsJ]. IEEE Journal of Se-

    lected Topics in SignalProcessing20104(6):965-973

    37LEE HPHAM PLAGMAN Yet al Unsupervised feature learn-

    ing for audio classificationusing convolutional deep belief networks

    C/ /Advances in Neural Information Processing Systems Cam-

    bridge:MIT Press2009:1096-1104

    38 HAMEL PECK D Learning features from music audio with deep

    belief networksC/ /Proc of the 11th International Society for Music

    Informationetrieval Conference 2010:339-344

    39SCHMIDT E MKIM YE Learning emotion-based acoustic features

    with deep belief networksC/ /Proc of IEEE Workshop on Applica-

    tions of Signal Processingto Audio and Acoustics 2011:65-68

    40DENG LiSELTZE MYU Donget al Binary coding of speech

    spectrograms using a deepauto-encoderC/ /Proc of the 11th Annual

    Conference on InternationalSpeech Communication Association

    2010:1692-1695

    41BENGIO YBASTIENFBEGEON Aet al Deeplearners be-

    nefit more fromout-of-distribution examplesC/ /Proc of the 14th In-

    ternational Conference onArtificial Intelligence and Statistics 2011

    42LEE HEKANADHAM CNGA Y Sparse deep belief net model

    for visual area V2C/ /Advances in Neural Information Processing

    Systems Cambridge:MIT Press2008:873-880

    43SALAKHUTDINOVR,HINTONG E Semantic hashingJ]. Inter-

    national Journal ofApproximateeasoning200950(7):969-978

    44HINTON G ESALAKHUTDINOVR. Reducing the dimensionality

    of data with neural networksJ]. Science2006313(5786):504-507

    45NAI VHINTON G E. Rectified linear units improverestricted Bo-

    ltzmann machinesC/ /Proc of the 27 th International Conference on

    Machine Learning 2010:807-814

    46SUSSKIND JHINTON G EMEMISEVICR,et alModeling thejoint density of two images under a variety of transformationsC/ /Proc of IEEE Conference on ComputerVision and Patternecogni-

    tion 2011:2793-2800

    47LUO PingWANGXiao-gangTANG Xiao-ouHierarchical face par-

    sing via deep learningC/ /Proc of IEEE Conference on Computer

    Vision and Patternecognition Washington DC:IEEE Computer So-

    ciety2012:2480-2487

    48LeCUN YCHOPA S,RANZATO Met al Energy-based models

    in document recognition andcomputer visionC/ /Proc of the 9th In-

    ternational Conference onDocument Analysis andecognition 2007:

    337-341

    49 TAYLO GHINTON G E,ROWEIS SModeling human motion

    using binary latentvariablesC/ /Advances in Neural Information

    Processing Systems Cambridge:MIT Press2007:2007-2014

    50 LEE HGOSSER,RANGANATH R,etal Convolutional deep

    belief networks for scalableunsupervised learning of hierarchical rep-

    resentationsC/ /Proc of the 26th International Conference on Ma-

    chine Learning New York:ACM Press2009:609-616

    51]RAINAR,BATTLE ALEE Het alSelf-taught learning:transfer

    learning from unlabeled dataC/ /Proc of the 24th International Con-

    ference on Machine Learning New York:ACM Press2007:759-766

    52NAI VHINTON G E 3D object recognition with deepbelief nets

    C/ /Proc of the 24th Annual Conference on Neural Information Pro-

    cessing Systems 2009:1339-1347

    53 TANG Yi-chuanELIASMITHC Deep networks for robust visual

    recognitionC/ /Proc of the 27th International Conference on Ma-

    chine Learning 2010:1055-1062

    54LEE NLAINE A FKLEIN A Towards a deep learning approach to

    brain parcellationC/ /Proc of IEEE International Symposium on

    Biomedical Imaging:from Nanoto Macro2011:321-324

    55SOCHER R,BENGIO YMANNING C D Deep learning for NLP

    (without magic)EB/OL]. (2012-07-07) http:/ /nlp stanford

    edu/courses/NAACL2013/NAACL2013-Socher-Manning-DeepLearn-

    ing pdf

    [56]龚著琳,陈瑛,苏懿,.数据挖掘在生物医学数据分析中的应用[J].上海交通大学学报(医学版),2011,11.

     

     

     

     

     

     

     

    展开全文
  • 普林斯顿大学(Princeton University)和英特尔实验室(Intel Labs)的一个研究小组在最新发表的(Non-deep Networks)论文中提出了ParNet (Parallel Networks),这是一种新颖的非深度网络架构,其性能可与最先进的深度...
  • 网络分为全局粗估计和局部精估计,这个跟人脸特征点的DCNN网络有点类似,都属于deep network。全局粗估计CNN:这个网络包含了五个特征提取层(每层包好了卷积、最大池化操作),在这五个卷积层后面,有链接了两个全...
  • 深度网络的过拟合问题讨论

    万次阅读 多人点赞 2016-08-09 23:08:15
    最近做深度学习实验的时候遇到了一个很棘手的问题,那就是大名鼎鼎的“过拟合”,本博客主要是围绕这个问题展开的。
  •   1)前馈深度网络(feed-forwarddeep networks, FFDN)   2)反馈深度网络(feed-back deep networks, FBDN)   3)双向深度网络(bi-directionaldeep networks, BDDN) 反馈深度网络(feed-back deep networks, ...
  • 提取深度网络某一层特征

    千次阅读 2017-10-12 15:24:34
    1.利用框架: ...2.提取深度网络某一层特征的核心函数:  import keras.backend as K  def get_activation(model, layer, X_batch):  get_activations= K.function([model.layers[0].input, K.learnin
  • 目前3D视觉领域当我们尝试复现某些深度卷积体系结构时,我们常常面临着一个充满代表性的问题——现有的用于信号领域中的判别性和生成性学习的深度网络结构非常适合于规律的采样数据,例如图像,音频或视频;...
  • 摘要:我第一次读到ResNet时,完全不敢相信152层的残差网络,竟然在时间复杂度(计算量)上和16层的VGG是一样大的。当然,对于初学者而言,直接分析ResNet的时间复杂度是有点难度的。...
  •   1)前馈深度网络(feed-forwarddeep networks, FFDN)   2)反馈深度网络(feed-back deep networks, FBDN)   3)双向深度网络(bi-directionaldeep networks, BDDN) 前馈深度网络(feed-forwarddeep networks...
  • 深度学习入门笔记(八):深层网络的原理

    千次阅读 多人点赞 2019-09-25 21:42:49
    专栏——深度学习入门笔记 声明 1)该文章整理自网上的大牛和机器学习专家无私奉献的资料,具体引用的资料请看参考文献。 2)本文仅供学术交流,非商用。所以每一部分具体的参考资料并没有详细对应。如果某部分不...
  • 训练深度网络模型,刚开始约10epoch的loss下降幅度很大,在大约10个epoch之后,变得非常缓慢。请问是什么问题呢? train loss随训练时间的变化图 val的loss随训练时间的变化图 之前以为是训练集过小导致的,加入了...
  • 深度学习网络matlab工具包,包含深度信度网络dbn,卷积网络cnn,sae(stacked auto-encoders),cae(Convolutional auto-encoders)等实现。 ================================================================ ...
  • 在进行训练深度网络时,如果数据量(训练样本)比较小,或者网络结构过于复杂,是很容易出现过拟合现象。先解释下什么是过拟合现象,一般数据集会分为训练集,验证集,和测试集,如果在训练集上的正确率和验证集上的...
  • 深度学习网络篇——ResNet

    万次阅读 多人点赞 2018-12-17 19:46:29
    也就是说,对一个特别深的深度网络而言,该网络的浅层形式的解空间应该是这个深度网络解空间的子集,换句话说,相对于浅层网络 更深的网络至少不会有更差的效果 ,但是因为网络degradation的问题,这并不成立。 ...
  • 深度神经网络总结

    万次阅读 多人点赞 2019-01-09 17:52:24
    深度神经网络(Deep Neural Networks,DNN)可以理解为有很多隐藏层的神经网络,又被称为深度前馈网络(DFN),多层感知机(Multi-Layer perceptron,MLP)。 1 前向传播算法 1.1 从感知机到神经网络 感知机的模型...
  • ReLU深度网络能逼近任意函数的原因

    千次阅读 2017-03-22 01:33:33
    今天读了一遍谷歌大脑工程师Eric Jang的一个解答,想把这个知识与大家分享!最近也发现,有很多牛人喜欢在博客中分享DL的相关知识,所以个人感觉有空...有很多人问:为什么ReLU深度网络能逼近任意函数? 对此,其
  • 深度学习 --- 深度残差网络详解ResNet

    万次阅读 多人点赞 2018-12-05 12:41:01
    本来打算本节开始循环神经网络RNN,LSTM等,但是觉得还是应该把商用比较火的网络介绍一下,同时详细介绍一下深度残差网络,因为他是基于卷积的。而后面的循环神经网络更多偏向于序列问题,偏向语音识别,自然语言...
  • 深度网络VGG理解

    千次阅读 2018-02-26 20:57:03
    它主要的贡献是展示出网络深度是算法优良性能的关键部分。 他们最好的网络包含了16个卷积/全连接层。网络的结构非常一致,从头到尾全部使用的是3x3的卷积和2x2的汇聚。他们的预训练模型是可以在网络上获得并在...
  • 深度信念网络matlab代码

    千次下载 热门讨论 2014-09-03 10:31:12
    深度信念网络,有代码,有实例,有数据。 用于深度网络预训练。
  • ppt画深度学习网络

    千次阅读 多人点赞 2021-03-03 15:27:25
    最近开始写论文,像这样酷炫的深度学习网络图是咋画的?看了网上的一些方案,基本都是比较小众的软件,学起来比较麻烦,最后发现还是ppt好使。 1.插入正方体形状 2.调整成方片 拉动黄色点和角点,多试试,得到下图: ...
  • 网络深度对性能的影响

    千次阅读 2020-09-03 17:33:35
    深度学习模型之所以在各种任务中取得了成功,足够的网络深度起到了很关键的作用,那么是不是模型越深,性能就越好呢? 1 为什么加深可以提升性能 Bengio和LeCun在2017年的文章[1]中有这么一句话,"We claim that ...
  • 深度学习网络结构图

    千次阅读 2017-09-12 11:42:57
    深度学习初探——入门DL主流框架 作者 实验楼 关注 2017.03.09 14:30 字数 2541 阅读 3294评论 0喜欢 2 深度学习概念 深度学习 (deep learning):深度学习是机器学习中的一个分支,试图通过具有多个处理层的...
  • 深度神经网络模型剪枝

    千次阅读 2020-04-20 23:43:13
    深度神经网络模型剪枝 神经网络剪枝 Neural Network Pruning
  • 当深度神经网络可以对少量样本进行很好的拟合,而对较多的样本无法很好拟合的时候,很可能是深度网络的层数不够深,即深度网络的特征无法很好地表征所有样本的特征。此时,可以通过加深网络的层次来使得深度网络对较...
  • 递归神经网络(Recursive NN,RNN)通过带有树状相似的神经网络结构来递归复杂的深度网络。本质上,递归神经网络是对循环神经网络(Recurrent Neural Network)的一个有效扩展,他们具有不同的计算图。 递归神经网络...
  •     本文提出了一个多任务深度神经网络(MT-DNN),用于跨多个自然语言理解(NLU)任务学习表示。MT-DNN不仅利用了大量的跨任务数据,而且还受益于正则化效应,从而产生更通用的表示,以帮助适应新的任务和领域。MT-...
  • 卷积网络深度和宽度修改(一)

    万次阅读 2017-10-19 16:13:42
    卷积网络深度和宽度修改(一) 随着神经网络的发展,网络深度逐渐加深(更深的层数以及更小的感受野,能够提高网络分类的准确性(Szegedy et al.,2014;Simonyan & Zisserman,2014)),网络的训练也就变得越来越困难...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 615,748
精华内容 246,299
关键字:

深度网络