深度学习第13、14章学习笔记

13 序列建模:循环和递归网络

本章描述了一些基于潜变量的最简单的概率模型:线性因子模型linear factor model)。这些模型有时被用来作为混合模型的组成模块或者更大的深度概率模型。

线性因子模型通过随机线性解码器函数来定义,该函数通过对 h 的线性变换以及添加噪声来生成 x。其生成过程为,首先,我们从一个分布中抽取解释性因子 h

其中 p(h) 是一个因子分布,满足 p(h) =ip(hi)。接下来,在给定因子的情况下,我们对实值的可观察变量进行采样

其中噪声通常是对角化的(在维度上是独立的)且服从高斯分布。

概率 PCAprobabilistic PCA)、因子分析和其他线性因子模型是上述等式的特殊情况,并且仅在对观测到 x 之前的噪声分布和潜变量h 先验的选择上有所不同。

概率 PCA模型利用了这样一种观察现象:除了一些微小残余的 重构误差(reconstruction error)(至多为 σ2),数据中的大多数变化可以由潜变量 h 描述。

独立成分分析independent component analysis, ICA)是最古老的表示学习算法之一 。它是一种建模线性因子的方法,旨在将观察到的信号分离成许多潜在信号,这些潜在信号通过缩放和叠加可以恢复成观察数据。这些信号是完全独立的,而不是仅仅彼此不相关.

ICA 也可以推广到非线性生成模型,其中我们使用非线性函数 f 来生成观测数据。ICA 的另一个非线性扩展是非线性独立成分估计方法,这个方法堆叠了一系列可逆变换(在编码器阶段),其特性是能高效地计算每个变换的 Jacobian 行列式。这使得我们能够精确地计算似然,并且像 ICA 一样,NICE 尝试将数据变换到具有因子的边缘分布的空间。由于非线性编码器的使用,这种方法更可能成功。ICA 的另一个推广是通过鼓励组内统计依赖关系、抑制组间依赖关系来学习特征组。

慢特征分析slow feature analysis, SFA)是使用来自时间信号的信息学习不变特征的线性因子模型。慢特征分析的想法源于所谓的 慢性原则(slowness principle)。其基本思想是,与场景中起描述作用的单个量度相比,场景的重要特性通常变化得非常缓慢。

SFA 的一个主要优点是,即使在深度非线性条件下,它依然能够在理论上预测 SFA 能够学习哪些特征。为了做出这样的理论预测,必须知道关于配置空间的环境动力(例如,在 3D 渲染环境中随机运动的例子中,理论分析是从相机位置、速度的概率分布中入手的)。深度 SFA 也已经被用于学习用在对象识别和姿态估计的特征。

稀疏编码sparse coding)是一个线性因子模型,已作为一种无监督特征学习和特征提取机制得到了广泛研究。像大多数其他线性因子模型一样,它使用了线性的解码器加上噪声的方式获得一个 x 的重构。

线性因子模型,包括 PCA 和因子分析,可以理解为学习一个流形我们可以将概率PCA 定义为高概率的薄饼状区域,即一个高斯分布,沿着某些轴非常窄,就像薄饼沿着其垂直轴非常平坦,但沿着其他轴是细长的,正如薄饼在其水平轴方向是很宽的一样。下图解释了这种现象,平坦的高斯能够描述一个低维流形附近的概率密度。

14 实践方法论

自编码器autoencoder)是神经网络的一种,经过训练后能尝试将输入复制到输出。 自编码器(autoencoder)内部有一个隐藏层 h,可以产生 编码(code)表示输入。该网络可以看作由两部分组成:一个由函数 h = f(x) 表示的编码器和一个生成重构的解码器 r = g(h)。下图展示了这种结构,自编码器的一般结构,通过内部表示或编码 h 将输入 x 映射到输出(称为重构)r。自编码器具有两个组件:编码器 f(将 x 映射到 h)和解码器 g(将 h 映射到 r)。

从自编码器获得有用特征的一种方法是限制 h 的维度比 x 小,这种编码维度小于输入维度的自编码器称为 欠完备undercomplete)自编码器。学习欠完备的表示将强制自编码器捕捉训练数据中最显著的特征。

稀疏自编码器简单地在训练时结合编码层的稀疏惩罚 Ω(h) 和重构误差:

其中 g(h) 是解码器的输出,通常 h 是编码器的输出,即 h = f(x)

稀疏自编码器的早期工作探讨了各种形式的稀疏性,并提出了稀疏惩罚和 log Z 项之间的联系。Glorot et al. (2011b) 提出了一种在稀疏(和去噪)自编码器的 h 中实现真正为零的方式。该想法是使用整流线性单元产生编码层。基于将表示真正推向零(如绝对值惩罚)的先验,可以间接控制表示中零的平均数量。

去噪自编码器(denoising autoencoder, DAE)最小化

其中是被某种噪声损坏的 x 的副本。因此去噪自编码器必须撤消这些损坏,而不是简单地复制输入。

编码器和解码器各自都是一个前馈网络,因此这两个部分也能各自从深度结构中获得好处。万能近似定理保证至少有一层隐藏层且隐藏单元足够多的前馈神经网络能以任意精度近似任意函数(在很大范围里),这是非平凡深度(至少有一层隐藏层)的一个主要优点。这意味着具有单隐藏层的自编码器在数据域内能表示任意近似数据的恒等函数。训练深度自编码器的普遍策略是训练一堆浅层的自编码器来贪心地预训练相应的深度架构。所以即使最终目标是训练深度自编码器,我们也经常会遇到浅层自编码器。

通常情况下,编码器和解码器的分布没有必要是与唯一一个联合分布 pmodel(x, h) 相容的条件分布。Alain et al. 指出,在保证足够的容量和样本的情况下,将编码器和解码器作为去噪自编码器训练,能使它们渐近地相容。

去噪自编码器denoising autoencoder, DAE)是一类接受损坏数据作为输入,并训练来预测原始未被损坏数据作为输出的自编码器。

得分匹配是最大似然的代替。它提供了概率分布的一致估计,促使模型在各个数据点 x 上获得与数据分布相同的得分score)。在这种情况下,得分是一个特定的梯度场:

流形的一个重要特征是 切平面tangent plane)的集合。d 维流形上的一点 x,切平面由能张成流形上允许变动的局部方向的 d 维基向量给出。

所有自编码器的训练过程涉及两种推动力的折衷:

1.  学习训练样本 x 的表示 h 使得 x 能通过解码器近似地从 h 中恢复。

2.  满足约束或正则惩罚。

收缩自编码器在编码 h = f(x) 的基础上添加了显式的正则项,鼓励 f 的导数尽可能小:

惩罚项 Ω(h) 为平方 Frobenius 范数(元素平方之和),作用于与编码器的函数相关偏导数的 Jacobian 矩阵。

收缩contractive)源于 CAE 弯曲空间的方式。具体来说,由于 CAE 训练为抵抗输入扰动,鼓励将输入点邻域映射到输出点处更小的邻域。我们能认为这是将输入的邻域收缩到更小的输出邻域。

预测稀疏分解predictive sparse decomposition, PSD)是稀疏编码和参数化自编码器的混合模型。参数化编码器被训练为能预测迭代推断的输出。PSD 被应用于图片和视频中对象识别的无监督特征学习。

自编码器已成功应用于降维和信息检索任务。降维是表示学习和深度学习的第一批应用之一。低维表示可以提高许多任务的性能,例如分类。信息检索information retrieval)从降维中获益更多。

#笔记#
全部评论

相关推荐

点赞 评论 收藏
分享
11-28 17:48
中山大学 C++
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务