精华内容
下载资源
问答
  • 深度信念网络分类算法,内含受限玻尔兹曼机训练、BP分类微调拟合,最终完成深度信念网络分类算法的训练。算法以Python语言完成,包含多个子文件,全部写入该word文档。文档注释详细,适合学习。
  • 于深度信念网络的恒星光谱分类方法,通过在训练过程中对恒星光谱数据进行分层特征学习,从而建立深度信念网络模型。.最后对此模型进行恒星光谱分类测试,得到F、G和K型3种恒星的分类精确率分别为0.93、0.90和0.98,...
  • 基于脉冲深度信念网络的fMRI分类研究
  • 针对目前高维数据异常检测存在的困难,提出一种基于深度信念网络和线性单分类支持向量机的高维异常检测算法。该算法首先利用深度信念网络具有良好的特征提取功能,实现高维数据的降维,然后基于线性核函数的单分类...
  • 用于半监督情感分类的混合深度信念网络
  • 基于深度信念网络的肺结节良恶性分类
  • 第九章 贝叶斯信念网络分类

    千次阅读 2015-05-25 21:55:32
    朴素贝叶斯分类有一个限制条件,就是假定类...贝叶斯信念网络说明联合条件概率分布,它提供一种因果关系的图形模型,可以在其上进行学习。它不要求所有的属性集都条件独立,而允许一部分属性条件独立。训练后的贝叶斯信

      朴素贝叶斯分类有一个限制条件,就是假定类条件独立(即给定元组的类标号,假定属性的值可以条件地相互独立)。当这个条件成立时,朴素贝叶斯分类法的准确率是最高的。然而,在实践中,变量(属性)之间可能存在依赖关系,这样就限制了朴素贝叶斯分类的能力。贝叶斯信念网络说明联合条件概率分布,它提供一种因果关系的图形模型,可以在其上进行学习。它不要求所有的属性集都条件独立,而允许一部分属性条件独立。训练后的贝叶斯信念网络可以用于分类

    1、概念和机制

            贝叶斯信念网络也被称作信念网络贝叶斯网络概率网络。为了简便,后面都用信念网络代替。

            信念网络由两部分定义——有向无环图(DAG)和条件概率表(CPT)

          (1有向无环图:其每个结点代表一个随机变量。变量可以是离散值的或连续值的,它们可能对应于给定数据中的实际属性,或对应于相信形成联系的“隐藏变量“(例如,在医疗数据中,隐藏变量可以预示由多种症状表示的综合病症,刻画一种具体的疾病)。而每条弧代表一个概率依赖。如果一条弧由结点Y到Z,则Y是Z的双亲直接前驱,而Z是Y的后继。

          (2条件概率表:每个变量(属性)都有一个条件概率表。变量Y的CPT说明条件分布P(Y|Parents(Y)),其中Parents(Y)是Y的双亲。


            贝叶斯信念网络的重要性质给定其双亲,每个变量条件独立于图中它的非后代。

            例子(一个6个布尔变量的简单信念网络


            注意,倘若已知患者得了肺癌,变量PositiveXRay独立于该患者是否具有家庭肺癌史,也独立于它是否吸烟。换言之,一旦我们知道变量LungCancer的结果,那么变量FamilyHistory和Smoker就不再提供关于PositiveXRay的任何附加信息。这些弧还表明:给定其双亲FamilyHistory和Smoker,变量LungCancer条件独立于Emphysema(LungCancer唯一的非后代)。

            图b显示了变量LungCancer的CPT。从左上角和右下角的表目,我们可以看到:

                              P(LungCancer=yes|FamilyHistory=yes,Smoker=yes)=0.8

                              P(LungCancer=no|FamilyHistory=no,Smoker=no)=0.9

     

            设 X=(x1,x2, ..., xn) 是被属性 Y1,..., Y描述的数据元组。则联合概率分布:

                                   

    其中,P(x1, x2, ..., xn)是X的值的特定组合的概率,而P(xi|parents(Yi))的值对应于Yi的CPT的表目。

            例子

            如上图,对于FamilyHistory,Smoker,LungCancer这三个属性,用朴素贝叶斯计算,得到的联合概率是       

                                               

            但是如果用贝叶斯信念网络计算得到的联合概率将会是:,会更为准确。

     

            网络内的节点可选作“输出”节点,代表类标号属性,可有多个输出节点。多种推断和学习算法都可以用于这种网络。分类过程不是返回单个类标号,而是返回概率分布,给出每个类的概率。

    2、训练贝叶斯信念网络

            构造训练贝叶斯网络分为以下两步(也就是说,给你一个训练元组,要用贝叶斯信念网络进行分类,需要做的事):

    (1)确定随机变量间的拓扑关系,形成DAG。这一步通常需要领域专家完成,而想要建立一个好的拓扑结构,通常需要不断迭代和改进才可以。

    (2)训练贝叶斯网络。这一步也就是要完成条件概率表的构造,如果每个随机变量的值都是可以直接观察的,那么这一步的训练是直观的,方法类似于朴素贝叶斯分类。但是通常贝叶斯网络中存在隐藏变量节点,那么训练方法就是比较复杂,例如可使用梯度下降法

     

    :梯度下降法牵涉到一定的微积分知识,有兴趣的同学可以参见其他的资料了解更多。

     

    展开全文
  • 在本文中,我们提出了一种基于深度学习和信息几何的复杂算法,该算法将空间中所有训练样本的分布视为先验知识,并由深度信念网络(DBN)进行编码。 从信息几何学的角度,我们构造了分布在要素之间的测地线距离,以...
  • 目录导读分类方法特征提取分类器实验数据与结果 导读 近年来,在使用深度网络...论文从多通道脑电图中提取的差分熵(Differential Entropy, DE)特征作为输入,训练深度信念网络(Deep Belief Network, DBN)。并且结合...

    本教程为脑机学习者Rose发表于公众号:脑机接口社区 .QQ交流群:903290195

    导读

    近年来,在使用深度网络进行无监督的数据特征学习方面取得了巨大的成功,特别是对于图像和语音。在该论文中,作者引入了深度学习模型来对基于脑电数据的情绪(积极和消极)进行分类。论文从多通道脑电图中提取的差分熵(Differential Entropy, DE)特征作为输入,训练深度信念网络(Deep Belief Network, DBN)。并且结合隐马尔可夫模型(HMM)作为辅助方法来获取更可靠的情感转换状态。论文中并比较了深度网络模型、KNN、SVM和图正则化极限学习机(GELM)的分类性能。在实验中,DBN-HMM,DBN,GELM,SVM和KNN的平均识别率分别为87.62%,86.91%,85.67%,84.08%和69.66%。实验结果表明,与当时的情绪分类方法相比,DBN和DBN-HMM模型提高了基于EEG的情绪分类的准确性。

    分类方法

    下图为论文中构建的5种基于脑电的情绪分类方法,它们分别从多通道EEG数据中提取特征,训练分类模型。
    在这里插入图片描述

    特征提取

    利用差分熵提取特征
    差分熵扩展了香农熵的思想,并用于测量连续随机变量的复杂性。研究表明,对于固定长度的脑电信号,差分熵等效于某个频带内的对数能量谱。所以可以在五个子频带(δ: 1-3Hz, θ: 4-7Hz, α: 8-13Hz, β: 14-30Hz, γ: 31-50Hz)中计算差分熵。
    由于脑电数据在高频能量上具有较高的低频能量,DE因而具有区分低频和高频能量脑电图的平衡能力。在特定的EEG序列中,使用一个1s长的非重叠Hanning窗和一个包含512个采样点的短时傅里叶变换来提取原始脑电信号的五个频带信号,并计算每个频带的差分熵。

    分类器

    深度信任网络(DBN)是一种具有深度结构的概率生成模型。它是通过将预定义的受限Boltzmann机(RBM)堆叠在一起构建的,其中较低级别RBM的输出是较高级别RBM的输入,结构如下图所示,采用一种有效的贪婪逐层算法对每一层网络进行预训练。
    在这里插入图片描述

    实验数据与结果

    选择一些带有特定情感的电影片段来帮助受试者产生需要的情感状态。总共有12个片段(6个带有积极情绪,6个带有消极情绪), 每个片段持续时间约为4分钟。

    共有6名受试者(3名男性,3名女性)参与了该实验,每名受试者参与实验2次,2次实验之间间隔一周以上。[受试者视力正常或矫正视力正常和听力正常]
    在这里插入图片描述
    上图为单次实验的DE特征图,如图所示,高频振荡反映了积极和消极任务下脑电信号的不同响应模式,这有助于情绪识别。

    下图为不同分类器在不同频带上的分类精度。从图中可以看到,论文提出的方法在Gamma和Beta频段的表现比其他频段更好。
    在这里插入图片描述
    下表列出了6位受试者得到的实验数据在不同分类器和不同频带条件下的识别结果。KNN,SVM,GELM,DBN和DBN-HMM的精度平均值和标准偏差分别为69.66/19.80,84.08/9.66,85.67/9.37,86.91/7.62,87.62/7.48。

    从表中可以看到,DBN-HMM和DBN模型比其它分类模型具有更高的平均准确度和更低的标准偏差。从表的平均精度和标准偏差可以看出,GELM在低频特征方面的表现优于其它分类器,DBN在高频特征和综合所有频率特征方面表现更好。
    在这里插入图片描述
    论文解读过程中也参考了一位CSDN用户的博客,不过忘记了博客地址,在此衷心表示感谢。

    论文地址
    https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=6890166&tag=1

    本文为脑机学习者Rose整理发表于公众号:脑机接口社区(微信号:Brain_Computer).QQ交流群:903290195

    展开全文
  • 为了发展分类器,引入了最近出现的深度信念网络,该分类器比传统的神经网络提供了更准确的分类。 通过对流化催化裂化装置(主要受变化的原油影响)建模,然后对炼油厂的调度进行模拟,以模拟中国北方一家炼油厂的...
  • 在线人工语音服务已经在各种商业活动中展开,为了提供更好的客户...在人工服务语音文本化后,通过深度信念网络模型转换特征表示再进行分类,最终的分类效果比上述分类模型直接利用文本的特征表示进行分类效果略微提高。
  • 基于深度信念网络的音乐分类系统设计与实现,王芳,谢东亮,互联网的迅速发展与普及,特别是在大数据时代背景下,海量音频数据的获取与处理成为可能,音乐自动分类问题的研究将具有很大的商
  • 行业分类-设备装置-完备总体经验模态分解和深度信念网络的风速预测方法.zip
  • Can anyone recommend a Bayesian belief network classifier implemented in Python that can generate a probability of belief based on the input of a sparse network describing a series of facts about seve...

    Can anyone recommend a Bayesian belief network classifier implemented in Python that can generate a probability of belief based on the input of a sparse network describing a series of facts about several inter-related objects?

    e.g. given the facts "X is hungry, is a monkey and eats" formulated in FOL like:

    isHungry(x) ^ isMonkey(x) ^ eats(x,y)

    as well as a training corpus like:

    isHungry(a) ^ isMonkey(a) ^ eats(a,b) => true

    isHungry(b) ^ ~isMonkey(b) ^ eats(b,c) => true

    isMonkey(d) ^ eats(d,e) => true

    isMonkey(f) ^ eats(f,g) => false

    isMonkey(h) ^ ~eats(h,i) => true

    isBanana(j) ^ ~eats(j,k) => true

    I'd like to train a Bayesian belief network on the corpus, and use it to estimate the belief probability of the facts.

    Note, I'm not talking about Naive Bayesian text classifiers.

    解决方案

    The Python Bayes Network Toolbox would be a good starting point.

    In addition, there is this more generic Bayesian inference tools package, named bayespy.

    Hth.

    展开全文
  • 贝叶斯信念网络

    2018-08-10 23:05:32
    朴素贝叶斯分类假定类条件独立,即给定样本的类标号,属性的值相互条件独立。这一假定简化了计算。当假定成立时,与其它所有分类算法相比,朴素贝叶斯分类是最精确的。然而,在实践中,变量之间的依赖可能存在。...
  • 文章目录【神经网络分类器】(三)深度学习1 深度信念网络的结构深度学习的特点 建议阅读读本文之前阅读以下文章: 【神经网络分类器】(一)人工神经元网络的基本概念 【神经网络分类器】(二)浅层神经网络 【线性...

    在这里插入图片描述

    深度学习发展史——从深度信念网络到AlexNet

    【神经网络分类器】(一)人工神经元网络的基本概念
    【神经网络分类器】(二)浅层神经网络


    在这里插入图片描述

    自 1986 年 Rumelhart 和 Hinton 等人提出 BP 网络以来,多层的人工神经网络终于有了有效的训练方法,也带来了人工神经网络研究的又一次繁荣。但是好景不长,由于 BP 网络本身具有的一些缺陷,包括收敛速度慢、容易陷入局部最优解、梯度消失等问题,导致它无法用于训练层数太深的神经网络,也就限制了人工神经网络的规模和功能。特别是 1995 年以来支持向量机(SVM)算法的成功,给了模式识别和机器学习新的选择,导致人工神经网络研究再次陷入低谷。这一状况一直持续到 2006 年,Geoffrey Hinton 等人发表了一篇以“深度信念网(Deep Belief Nets)”的高效训练算法为主题的重要论文,才引发了人工神经网络新一轮的发展热潮。因为此次研究热潮主要围绕如何有效训练具有相当深度的人工神经网络,所以,又被 Hinton 等人命名为“深度学习”。

    1 深度学习的特点

    深度学习是人工神经网络,但它与 BP 网络等浅层神经网络有较大的区别,它的主要特点包括:

    • (1) 深度学习一定是层数较多的大规模神经网络,只有这样的网络,才能实现非常复杂的非线性多分类映射关系,体现出一定的智能特性,同时,也只有这样的深层网络,才会遇到训练上的难题,需要新的算法来加以解决;

    • (2) 深度学习的多层次网络结构,从本质上来说,是对原始数据集中所蕴含的样本特性进行逐层抽象,不断发现高层的特征,也不断减少特征的维数,才能在简单单元(也就是神经元)的基础上实现复杂的整体系统功能;

    • (3) 因为深度学习的神经网络规模大,神经元数量多,因此,只有大规模并行计算的软硬件条件都具备了,才能支撑起深度学习的神经网络,这也不难解释,为什么只有在近 10 年左右,深度学习发展才能够突飞猛进,这和以 GPU 应用为标志的大规模并行计算能力的快速发展是密不可分的;

    • (4) 从结构风险最小化准则来说,要提升一个模式识别系统的泛化能力,或者是要减少分类器的 VC 维,或者是要增大训练样本集的容量,支持向量机因为采用了 VC 维最低的线性分类器形式,所以只需少量样本,就能够得到很好的泛化能力;而深度学习网络,本质上是一个非常非常复杂的非线性系统,因此,其 VC 维也非常非常高,要降低结构风险,就一定要使用非常巨大的训练集,并确保训练集上的经验风险足够小。因此,深度学习的实现,需要大量的样本来进行训练,这也只有在大数据的采集、存储和访问技术发达之后,才具备相应的条件。这再次解释了为什么只有在近10 年,深度学习才开始开花结果,并且能力最强的深度学习系统,都诞生于既拥有强大算力、又拥有海量数据的 IT 企业之中,谷歌公司就是一个典型的例子。

    2 深度信念网络

    2.1 深度信念网络的结构

    深度信念网是基于受限玻尔兹曼机的一种深度人工神经网络,因此,首先要了解一下玻尔兹曼机。

    玻尔兹曼机是一种存在全互联的概率型神经网络模型,由 Hinton 在 1985 年提出。玻尔兹曼机中,每个神经元的输出不是以输入和神经元模型为依据的确定值,而是是以净激励为变量的概率分布, P ( y = 1 ) P(y=1) P(y=1)的概率为
    P ( y = 1 ) = 1 1 + e − u / T P(y=1)=\frac{1}{1+e^{-u/T}} P(y=1)=1+eu/T1

    波尔兹曼机最终学习的结果,是使得网络的输入输出联合概率分布,与训练集样本的输入输出联合概率分布最为接近,即使得网络记住了训练集中样本的类别分布

    由于玻尔兹曼机是一个全互联的神经网络,所以,当前和历史时刻的各个神经元输入输出会互相影响,使得整个网络的状态会进行不断更新演化,才能够达到一种稳态。

    因此,由玻尔兹曼机构成的神经网络是无法逐层进行训练的。这在实践应用中非常不便,于是 Hinton 又于 2002 年提出了受限玻尔兹曼机,即取消了同层神经元之间的互联,只保留了显见神经元与隐见神经元之间的双向连接

    这样,受限玻尔兹曼机就变成了一种分为可见层和隐层的两层神经网络,而当隐见神经元有多层时,就可以看作是一个由多个受限玻尔兹曼机堆叠而成的深度神经网络,称为深度信念网
    在这里插入图片描述

    Hinton 所提出的深度信念网的训练,针对的是 BP 网络在层数较多,即有一定深度时所面临的收敛速度慢和容易陷入局部最优解的问题。Hinton 认为,导致这两个问题的原因,都是由于网络初始的权向量设定过于随机,导致使用训练集进行有监督训练时,很难快速收敛到全局最优解上。

    因此,Hinton 提出的深度信念网的训练方法,采用了有监督学习和无监督学习相结合的模式,即:

    • (1)首先使用无监督学习模式,逐层对网络进行预训练,使得网络能够发现数据本身中蕴含的特征概率分布结构,即将各神经元的权值引导到对训练集数据具有最佳特征发现能力的初始值上,这一步是深度信念网最主要的训练过程,所使用的是被称为“对比散度法”的概率学习算法;

    • (2)在预训练完成后,需要对网络参数进行调优。调优可以继续采用无监督的“wake-sleep”算法,这样得到的模型是一个能够重现训练集样本数据的“生成模型”;也可以使用有类别标签的数据,采用联合训练,或者 BP算法来对网络参数进行调整,以得到一个性能优越的分类器模型。

    2.2 深度信念网络的训练

    下面我们来看看深度信念网是如何通过预训练和调优这两个环节来实现深度神经网络的训练的。

    首先是无监督的预训练环节。我们已经知道,深度信念网可以看作是由一层层的受限玻尔兹曼机堆叠而成的。

    而深度信念网的预训练,采用的是逐层贪心法的训练办法。也就是说,先训练最靠近可见层的一层隐层,得到最优解后,再将该隐层的输出作为训练集数据,用于训练下一个隐层

    因此,深度信念网预训练算法的核心,是如何训练一个由可见层(或输出已知的隐层)与相连的隐层构成的一个受限玻尔兹曼机。对此,Hinton 在 2002 年就提出了有效的训练算法,称为“对比散度算法”。

    受限玻尔兹曼机是一个概率神经网络模型,其中一个神经元的输出或者为 0,或者为 1,当其为 1 的概率分布符合 Sigmoid 函数形式。即:
    P ( y = 1 ) = 1 1 + e − u P(y=1)=\frac{1}{1+e^{-u}} P(y=1)=1+eu1

    u u u 为一个神经元所有输入的加权和在减去偏置量 θ θ θ
    u = w T x − θ u=w^Tx-\theta u=wTxθ
    在这里插入图片描述

    因此,对于受限玻尔兹曼机的一个隐见神经元,它的输出 h j h_j hj为在所有显见神经元输出 v v v下的条件概率:
    P ( h j = 1 ∣ v ) = 1 1 + e − ( ∑ j = 1 N w i j T v i − b i ) P(h_j=1|v)=\frac{1}{1+e^{-(\sum_{j=1}^Nw^T_{ij}v_i-b_i)}} P(hj=1v)=1+e(j=1NwijTvibi)1

    由于受限玻尔兹曼机是一个层双向连接的网络,所以显见神经元的输出,也可以用所有隐见神经元输出下的条件概率来表示,即:

    P ( v j = 1 ∣ h ) = 1 1 + e − ( ∑ j = 1 M w i j T h i − c i ) P(v_j=1|h)=\frac{1}{1+e^{-(\sum_{j=1}^Mw^T_{ij}h_i-c_i)}} P(vj=1h)=1+e(j=1MwijThici)1

    其中: N N N 是隐层神经元的个数, M M M 是显层神经元的个数, w i j w_{ij} wij是显层神经元 v i v_i vi和隐层神经元 h j h_j hj 之间的连接权值,它是双向共享的, b j b_j bj 是隐层神经元的输出偏置量, c i c_i ci 是显层神经元的输出偏置量。

    如果把从从显层到隐层的神经元状态更新看作是特征提取,也就是对客观事物的认知的话,那么从隐层逆向对显层的神经元状态更新则可看作是生成显层数据,也就是重构输入的过程。
    在这里插入图片描述

    • 如果重构的显层数据与训练集输入的数据在概率分布上非常接近,则证明两层之间的连接权值很好,从显层到隐层的映射捕捉住了显层输入数据最关键的特征

    • 如果重构的显层数据与训练集输入的数据在概率分布上存在较大差异,则可按照能最快缩小差异的负梯度方向去调整权值和偏置量,使得网络的参数得以优化。

    这就是对比散度算法的基本原理。

    为什么这一算法称为“对比散度”算法呢?是因为 Hinton 在算法中使用 KL散度度量两个概率分布之间的相似程度,并以此为基础推导了使得 KL 散度能取得极小值的神经元参数调整公式。
    在这里插入图片描述

    对比散度学习算法的具体流程是:
    在这里插入图片描述
    权值矩阵:
    Δ W = η [ P ( h ( 0 ) = 1 ∣ v ( 0 ) ) ( v ( 0 ) ) T − P ( h ( t + 1 ) = 1 ∣ v ( t + 1 ) ) ( v ( t + 1 ) ) T ] \Delta W=\eta\left[P\left(h^{(0)}=1 \mid v^{(0)}\right)\left(v^{(0)}\right)^{T}-P\left(h^{(t+1)}=1 \mid v^{(t+1)}\right)\left(v^{(t+1)}\right)^{T}\right] ΔW=η[P(h(0)=1v(0))(v(0))TP(h(t+1)=1v(t+1))(v(t+1))T]
    隐见层偏置向量:
    Δ b = η [ P ( h ( 0 ) = 1 ∣ v ( 0 ) ) − P ( h ( t + 1 ) = 1 ∣ v ( t + 1 ) ) ] \Delta b=\eta\left[P\left(h^{(0)}=1 \mid v^{(0)}\right)-P\left(h^{(t+1)}=1 \mid v^{(t+1)}\right)\right] Δb=η[P(h(0)=1v(0))P(h(t+1)=1v(t+1))]
    显见层偏置向量
    Δ c = η [ v ( 0 ) − v ( t + 1 ) ] \Delta c=\eta\left[v^{(0)}-v^{(t+1)}\right] Δc=η[v(0)v(t+1)]

    需要特别提醒的是:这只是随机梯度下降法迭代修正权向量和偏置量的一次迭代过程,还需要用样本集中所有样本重复进行迭代计算,直到真实的样本分布和重构的样本分布之间的 KL 散度小于给定的误差范围为止。

    由此我们可以发现,对比散度算法是一种非常快速的无监督学习算法,它通过反复的认知-生成过程,去使得网络能够很好地发现训练集中最关键的特征,并将其映射到隐层的输出上。因此隐层又被称为“特征提取器”。

    当训练完深度信念网中的一层受限玻尔兹曼机,则可以固定其参数,并将显层输入数据生成的隐层输出状态作为下一层受限玻尔兹曼机的显层输入,进行下一层的训练。这样逐层完成所有层的预训练。此时,就得到了整个网络的参数预设值。

    深度信念网的预训练算法,为具有相当多层级和成千上万个神经元的大规模深度神经网络的训练开辟了一条有效路径,使得训练集样本的关键特征被一层层挖掘出来,也使得整个网络的参数被设置到了最优参数的附近。但此时,还需要对参数进行调优,才能保证获得一个优质的深度神经网络模型。

    调优的过程,根据任务的不同,有不同的方法,我们简单介绍几种:
    (1)Wake-Sleep 算法

    把除最顶部的两层外,其他各层的两个方向的权值分离开来,分别称为自上而下的“生成权值”和自下而上的“认知权值”。只有生成权值是模型的一部分,而认知权值在模型训练结束后即被消去。

    Wake-Sleep 算法调优仍然采用无监督学习模式,分为两个相对的阶段:
    Wake 阶段,也就是苏醒阶段,此时通过显见层输入的样本数据,利用认知权值,逐步得到各个隐层的神经元状态,再反过来采用梯度法对各层的生成权值进行修正,使得能够以最大概率产生认知时获得的神经元状态。对此,Hinton有一个有趣的说法,就是这就像是人在清醒时看到外界的事物,然后就修正自己对它的观念,使自己根据观念能够得到的一个假想的样本,和外界的客观事物最为相似,这样才算真正的完成了认知过程;也就是“如果现实跟我想象的不一样,改变我的权重使得我想象的东西就是这样的”;

    Sleep 阶段,也就是睡眠阶段,此时通过最顶层的受限玻尔兹曼机,先产生一个随机的先验概率分布,然后以生成权值为基础,逐层得到各层的状态,一直到显见层为止,然后反过来采用梯度法对各层的认知权值进行修正,使得能够以最大概率产生生成时获得的各层神经元状态。对此,Hinton 也认为,就像人在没有任何外界刺激的情况下在睡眠中做梦,然后通过调整自己对事物的认知模型,使得梦里的事物看起来最逼真。也就是“如果梦中的景象不是我脑中的相应概念,改变我的认知权重使得这种景象在我看来就是这个概念”;

    反复进行 Wake-Sleep,就能够在无监督的条件下对网络的参数进行调优。
    (2)联合训练算法
    如果要把深度信念网做成一个分类器,那么,就一定要增加用于输出分类结果的显见神经元,并通过有监督学习,使其能够对样本输入输出正确的类别。一种采用与预训练时相同的算法进行有监督学习的方法是联合训练,即在预训练最后一层受限玻尔兹曼机时,对倒数第 2 层添加一组代表样本类别的神经元 y y y
    在这里插入图片描述

    每个神经元仅当样本属于对应类别时输出 1,否则输出 0。然后通过训练,使得作为输出层的最后一个隐层的输出概率分布能够逼近样本集特征向量和类别标签之间的联合概率分布,实现分类器的正确输出。
    (3)BP 算法
    如果对标准的深度信念网进行训练后,得到了一个生成模型,那么可以在最后一层隐层之后,再加入一层输出的显见层,将提取到最优特征的隐层输出,映射为不同的分类结果输出。此时,可以采用已有的 BP 算法来对网络参数进行调优。由于整个网络已经经过了预训练,每层神经元的参数都经过了目标明确的最优初始化,并且网络可以逐层提取出样本数据中最有效的特征信息,因此 BP 算法调优的过程不仅速度会很快,而且很容易获得全局最优解。

    3 卷积神经网络——从神经感知机到AlexNet

    深度信念网首次提出了解决“深度”训练问题的有效方法,并且在手写数字识别等问题的测试上取得了比支持向量机更好的结果。但是这个方法在图像识别这样的模式识别最重要的应用领域中,却显得并不十分优秀,特别是对高分辨率和颜色丰富的图像识别存在很大的缺陷,其原因在于以下几点:

    • (1) 深度信念网的输入是一维向量,而图像的输入是二维矩阵。如果硬将二维矩阵展开为一维向量进行输入,不仅维度会剧增,而且丧失了图像像素在二维空间中的信息相关性;

    • (2)深度信念网在层与层之间,采用了全连接的方式,这使得网络的连接权值数量太多,网络的参数调整非常复杂;

    • (3)深度信念网的组成单元是受限玻尔兹曼机,而受限玻尔兹曼机是一个双向连接的模型,预训练时需要反复进行认知-重构的循环,虽然 Hinton 的对比散度算法大大提高了算法的效率,但还是太慢了;

    说实话,这些缺陷其实不应该算是深度信念网本质上的缺陷,而是这种深度神经网络模型对图像识别任务不适配,所以,如何设计一个深度的神经网络模型来更好地解决图像识别问题,就成为许多研究者重点研究的方向。卷积神经网络就是这一问题最有代表性的一种的解决方案。

    卷积神经网络的思想来源是神经生理学中的局部感受野概念。

    感受野(receptive field)是指神经系统的输入刺激中,能够引起神经元响应的一个区域。1959 年,哈佛医学院的神经生理学家 Hubel 和 Wiesel 在研究猫的视觉神经系统过程中,发现单个的视细胞只对一个很小区域内的光刺激有响应。在随后的研究中,他们发现视神经细胞的感受野相互重叠,并且具有侧抑制机制,正是这些对局部感受野(Local Receptive Field)的响应和侧抑制机制,使得视网膜能够对物体图像的边缘等信息产生强化的响应,即发现物体轮廓等关键信息

    同时,他们还发现视神经系统是分层的,上一层视神经细胞在刺激下产生的输出,会传递到下一层视神经细胞,同样以局部感受野的形式在下一层产生刺激,使得视觉信息能够逐层进行抽象,最终形成有效的视觉认知结果。Hubel 和 Wiesel也因为在视觉神经系统研究上做出的重要贡献,获得了 1981 年的诺贝尔生理学或医学奖。
    在这里插入图片描述

    既然局部感受野能够带来视觉神经系统的良好功能,很自然的,人工神经网络的研究者试图把这种视神经系统的分层结构和局部感受野概念引入人工神经网络的设计中,去完成图像识别领域的模式识别任务。这一努力最早的实现是福岛邦彦(Kunihiko Fukushima)于 1980 年提出的神经感知机(Neocognitron)模型
    在这里插入图片描述

    神经感知机模拟了视觉神经系统的结构和功能,是一个具有多个隐层的深度神经网络,它由 S 层(Simple-layer)和 C 层(Complex-layer)交替构成。其中S 层单元在局部感受野内对图像特征进行提取,C 层单元接收和响应不同感受野返回的相同特征,因此 S 层-C 层的组合事实上完成了特征生成和特征选择的功能,与当前卷积神经网络中卷积层(convolution layer)和池化层(pooling layer)有异曲同工之妙,均通过对图像局部区域的逐层映射变换,不断提取出高层的特征,最终完成识别任务。神经感知机逐层特征提取是通过一个小的正方形像素单元 Masker 来完成的,采用 Autocorrelation 算法,即计算原始图像中局部区域与Masker 的交叉相关值(crose-correlation),这与卷积操作已经非常相似了。

    神经感知机在特征提取层,使用了无监督的竞争学习方式,在输出层使用有监督学习。其首先应用于手写数字的识别,并取得了不错的效果,也开创了卷积神经网络这一深度学习重要模型的发展之路。

    1986 年,Rumelhart 和 Hinton 等人提出了 BP 算法,这是首个以误差反馈学习规则来训练多层神经网络的有效方法。1989 年,在前人工作的基础上,杨立昆 Yann LeCun 结合局部感受野逐层特征提取和误差反向传播算法,提出了最初的 LeNet 卷积神经网络模型,并成功应用于信封邮政编码的手写数字识别,达到了约 90%的正确率。
    在这里插入图片描述

    最初的 LeNet 模型包含 3 个隐含层,前两层是卷积层,第三个隐层是全连接层,最后的输出层也是全连接层。这一模型坚持了局部感受野的思想,使用卷积操作来逐层提取特征,卷积层的两层神经元之间不是全连接,而是局部连接,并且建立了包含多个隐层的有一定深度的神经网络,同时以最小均方误差为损失函数,通过梯度下降法和误差反向传播算法来实现网络参数的有监督学习。LeNet还用双曲正切函数tanh代替 Sigmoid 函数作为每层神经元的激活函数,取得了更好的效果。

    虽然 LeNet 没有包含当前常见卷积神经网络模型的全部要素,但是提出了一些非常重要的概念,并成为当前卷积神经网络模型的基础。这些概念包括:权值共享(weight sharing),就是在同一层使用同一个卷积核进行特征提取,即两层之间神经元的连接权值是公共的,这大量减少了需要学习的网络参数的数量;特征图(feature map),就是在两层之间可以采用多个不同的卷积核同时进行卷积操作,以针对不同类型的特征进行提取,每个卷积核对原图像进行遍历卷积后,就得到了一个新的二维图像,也就是提取出的对应的特征的图像,称为特征图随机梯度法(SGD),这也是首次在深度神经网络的训练中使用,并已成为训练深度神经网络的标准算法。

    在这里插入图片描述

    LeNet-5 是 Yann LeCun 于 1998 年提出的改进的 LeNet,它最重要的是在卷积层之间增加了池化(Pooling)层,不仅可以降低特征的维度,而且还能增强系统对平移变换的特征不变性。而最后的两层为全连接层和使用径向基激活函数的输出层,共同构成了一个性能良好的分类器。至此,LeNet-5 基本具备了当前主流卷积神经网络的所有要素,并且在手写数字识别训练集 MNIST 上的正确率高达 99%以上,在美国一些银行的支票手写数字识别上也得到了成功的应用。

    但是 LeNet-5 的局部成功,还没能引起学术界和社会公众的普遍关注,一直到 2012 年 AlexNet 在 ImageNet 图像识别大赛中大显身手为止。
    在这里插入图片描述

    Alex Krizhevsky 是 Hinton 的研究生,他在 Hinton 的指导和支持下,设计了一个卷积神经网络 AlexNet,在 2012 年的 ImageNet 图像识别大赛中夺得冠军,并且 top-5 的错误率仅为 15.3%,大幅度领先第二名的 26.2%

    AlexNet 的成功,不仅仅是因为他采用了对图像识别问题有先天适应性的卷积神经网络,而且在于他对 LeNet 等早期卷积神经网络进行了一系列的改进,形成了真正可用于解决实际模式识别问题的当代卷积神经网络技术,也成为以深度神经网络为核心的人工智能技术从学者的书斋走向大规模产业应用的转折点。

    AlexNet 的深度更深,它有 5 个卷积层,其中一部分卷积层后面接着有池化层;然后是 3 个全连接层,其中最后一层是 softmax 输出层,共有 1000 个节点,对应 ImageNet 图集中 1000 个图像分类。

    AlexNet 所采用的重要技术包括:

    • (1)ReLU 激活函数,可以有效避免 BP 算法中的梯度消失;
    • (2)dropout 机制,即在训练时,对全连接层随机的选择一部分神经元进行休眠,另外一些神经元参与网络的优化,即只有一部分特征会参与分类决策,可以大大降低网络过拟合的风险;
    • (3)GPU 加速,AlexNet 使用了 2 个 GPU 来完成网络的并行计算,大大提高了系统的性能。

    参考:
    [1] 中国大学mooc 人工智能之模式识别 高琪,李位星,冯肖雪, 北京理工大学

    THE END.
    感谢阅读。

    展开全文
  • 深度信念网络程序详解,可以实现数据回归和分类,自动提取关键成分。
  • 贝叶斯信念网络总结

    2019-09-21 11:02:41
    1.概念和机制  朴素贝叶斯分类法假定类条件独立。当假定成立时,与其他所有分类器相比,朴素贝叶斯...训练后的贝叶斯信念网络可以用来分类。贝叶斯信念网络也叫信念网络,贝叶斯网络。  信念网络由两个成分定义...
  • 关于数据集的注释: 使用一个简单的脚本将原始的.mat图像和基本事实转换为.txt文件。 数据目录包含这些.txt文件的示例(但不是全部)。 原始.mat文件可以从[Palis Vasco大学]( )获得。 使用注意事项: ...
  • 本人现在在利用深度信念网络工具相对凯斯西储大学的轴承数据进行分类,但是训练的错误率无法降低,原来工具箱的例子是针对mnist手写数字集的,我就把轴承数据直接改成mnist例子的数据格式,然后进行分类,相关论文也...
  • 深度信念网络

    2017-08-06 15:40:42
     深度信念网络是一个概率生成模型,与传统的判别模型的神经网络相对,生成模型是建立一个观察数据和标签之间的联合分布,对P(Observation|Label)和 P(Label|Observation)都做了评估,而判别模型仅仅而已评估了后者...
  • 我们通过构建一个工具演示来解决小行星图像的神经形态研究问题,该工具可自动获取有关最近发现的小行星的信息,并使用神经网络对小行星的成分进行分类。 我们使用开源来训练我们的神经网络来预测小行星的组成。 该...
  • 深度信念网络DBN

    千次阅读 2017-03-08 20:28:14
    “深度学习”学习笔记之深度信念网络    本篇非常简要地介绍了深度信念网络的基本概念。文章先简要介绍了深度信念网络(包括其应用实例)。接着分别讲述了:(1) 其基本组成结构——受限玻尔兹曼机的的基本...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 8,424
精华内容 3,369
关键字:

信念的分类