
使用自动编码器和
GAN
的表征学习和生成学习
|
499
在训练的第一阶段,第一个自动编码器学习重建输入。然后,我们使用第一个自动编
码器对整个训练集进行编码,这给我们提供了一个新的(压缩)训练集。然后,我们
在此新数据集上训练第二个自动编码器,这是训练的第二阶段。最后,我们使用所有
这些自动编码器来构建一个“大三明治”,如图 17-7 所示(我们首先堆叠每个自动编
码器的隐藏层,然后以相反的顺序堆叠输出层)。这给了我们最终的堆叠式自动编码器
(有关实现,请参见 notebook 中的“ Training One Autoencoder at a Time”部分)。我
们可以通过这种方式轻松地训练更多的自动编码器,从而构建一个非常深的堆叠式自
动编码器。
正如我们之前讨论的那样,当前对深度学习感兴趣的触发因素之一是 Geoffrey
Hinton 等人在 2006 年的发现。深层神经网络可以使用这种贪婪的分层方法以无监督
的方式进行预训练。他们为此使用了受限的 Boltzmann 机器(RBM,见附录 E),但在
2007 年,Yoshua Bengio 等人
注 3
证明了自动编码器也能很好地工作。多年来,这是训
练深度网络的唯一有效方法,直到第 11 章介绍的许多技术使一次训练深度网络成为
可能。
1
自动编码器不仅限于密集网络,你还可以构建卷积自动编码器,甚至是循环自动编码
器。让我们现在来看看这些。
17.4 卷积自动编码器
如果你要处理图像,那么到目前为止我们所看到的自动编码器将无法很好地工作(除非
图像非常小 ...