'); })();

浅谈深度学习基础(上)

编辑时间: 2017-12-26 22:43:24    关键字:

自编码器

  深度自编码器是一类特殊的无分类标签的深度神经网络。其输出向量与输入向量同维,常按照输入向量的某种形式,通过隐层学习一个数据的表示或对原始数据进行有效编码。值得注意的是,这种自编码器是一种不利用类标签的非线性特征提取方法。就方法本身而言,这种特征提取的目的在于保留和获得更好的信息表示,而不是执行分类任务,尽管有时这两个目标是相关的。

  一个典型的自编码器拥有一个表示原始数据或者输入特征向量的输入层;一个或多个表示特征转换的隐层;一个跟输入层匹配、用于信息重构的输出层。当隐层数目大于1时,这个自编码器就被视为深层结构。隐层的维度可以小于(当目标是特征压缩)或大于(当目标是映射特征匹配更高维的空间)输入层的维度。

  如果我们在自动编码器的基础上加上L1的规则限制(L1主要是约束每一层中的节点中大部分都要为0,只有少数不为0,稀疏约束项),我们就可以得到稀疏自动编码方法。也就是上面提到的特征压缩,如果隐藏节点比可视节点(输入、输出)少的话,被迫的降维,自编码器会自动习得训练样本的特征(变化最大,信息量最多的维度),所谓稀疏性,就是对一对输入,隐藏节点中被激活的节点数(输出接近1)远远小于被抑制的节点数目(输出接近0)。那么使神经元大部分的时间都是被抑制的限制被称作稀疏性限制。

  另外提一下降噪自编码器,原理很简单,降噪自编码器与自编码器的区别在于,降噪自编码器在原本自编码器的输入上加上了噪声,然后希望通过训练输出去除噪声后的原数据。

  栈式自编码器是一个由多层稀疏自编码器组成的神经网络,由于其隐层数目大于1,所以可被认定为是一种深度自编码器。

  在栈式自编码器中,前一层的自编码器的输出作为其后一层自编码器的输入。对于一个n层栈式自编码器的编码过程就是,按照从前向后的顺序执行每一层自编码器的编码步骤。

  假设我们要训练一个4层的神经网络模型用于分类任务,网络结构如下:

包含三个可见单元和四个隐单元的受限玻尔兹曼机示意图(不包含偏置节点)

包含三个可见单元和四个隐单元的受限玻尔兹曼机示意图(不包含偏置节点)

  RBM与前馈神经网络不一样,RBM在可见层和隐层间的连接方向是不确定的,值可以进行双向传播;且可见层与隐层,层间完全连接,而层内没有连接,也即二分图(不受限玻尔兹曼机隐层单元间存在连接,使之成为递归神经网络)。

  标准的受限玻尔兹曼机由二值(布尔/伯努利)隐层和可见层单元组成,权重矩阵W中的每个元素指定了隐层单元hj和可见层单元vi之间连接的权重值(受限玻尔兹曼机每条边必须连接一个隐单元和可见单元),此外对于每个可见层单元vi有偏置ai,对每个隐层单元hj有偏置bi。前面在讲述玻尔兹曼机时提到过,我们要确定两部分内容,一个是联合概率分布、边缘概率分布和条件概率分布,另一个是能量函数。给出了前面的定义,我们先给出受限玻尔兹曼机的能量函数:

 

  更换其为矩阵表示:

  根据能量函数,我们进一步给出受限玻尔兹曼机中隐层和可见层之间的联合概率分布:

  边缘概率分布(通过对所有隐层配置求和得到):

 

  由于受限玻尔兹曼机是一个二分图,所以隐层单元的激活在给定可见单元取值的情况下是条件独立的,所以条件概率分布:

 

可见层对隐层

 

隐层对可见层

  单个节点的激活概率为: 和:σ为Sigmoid函数。

  上面的过程是不是与我们在《浅谈机器学习基础》文中推导LR目标函数的过程有些相似?先利用Sigmoid函数表示出每个节点的激活概率,接下来最大化训练集V的生成概率,训练RBM也是同理:

 

 

  训练受限玻尔兹曼机,即最优化权重矩阵W,使训练集V的生成概率最大,常采用的算法叫做对比分歧(contrastive%20divergence,CD)算法。这一算法在梯度下降的过程中使用吉布斯采样完成对权重的更新,与训练前馈神经网络中利用反向传播算法(BP)类似。

  首先简单说一下什么是吉布斯采样(Gibbs),当积分、期望、联合概率分布很难计算出来(NP问题)的时候,我们利用条件概率产生符合分布的样本,用于估计分布的期望,边缘分布;是一种在无法精确计算情况下,用计算机模拟的方法。

  之后是CD-k算法,CD算法的大概思路是,从任意一个样本开始,用经过k次吉布斯采样得到的样本来近似梯度的计算,然后依照梯度去更新参数,与前面讲过的梯度上升/下降算法原理相同。

CD-k算法的具体过程借用别人文章中的截图来描述:

 

CD-k算法

  对所有的样本都进行k次吉布斯采样,图中蓝色的两个sample函数,就是进行吉布斯采样的过程,sample_h_given_v(v,W,a,b)做的事情是这样的(sample_v_given_v(h,W,a,b)类似):

  整个RBM的训练过程如下:

 

 
推荐热图
2010-2016 可思数据版权所有 ICP备案:京ICP备14056871号