第4章 使用自动编码器的数据表示

本章将介绍使用自动编码器(Autoencoder)的无监督深度学习应用程序。在本章中,我们将介绍以下主题:

  • 构建自动编码器;
  • 数据归一化;
  • 构建正则化自动编码器;
  • 微调自动编码器的参数;
  • 构建栈式自动编码器;
  • 构建降噪自动编码器;
  • 构建并比较随机编码器和解码器;
  • 从自动编码器学习流形(Manifolds);
  • 评估稀疏分解。

神经网络旨在找到输入与输出之间的非线性关系,如y = f (x)。自动编码器是一种无监督神经网络的形式,试图找到空间特征之间的关系,使得h = f (x),这有助于我们学习输入空间之间的关系,并且可以用于数据压缩、降维和特征学习。

 一个自动编码器由一个编码器和一个解码器组成。编码器有助于将输入x编码为潜在表示y,而解码器将y转换回x。编码器和解码器都具有类似形式的表达式。

下面是一个单层自动编码器的表达式:

h=f(x)=\sigma(\boldsymbol{W}^\text{T}_\text{e}X+b_\text{e})

\tilde X=f(h)=\sigma(\boldsymbol{W}^\text{T}_\text{d}h+b_\text{d})

在包含的隐藏层下,编码器将输入X编码为h,而解码器可以从编码器的输出h获得原始数据。矩阵WeWd分别表示编码器层和解码器层的权重。函数 ...

Get 深度学习实战手册(R语言版) now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.