我正在使用受限玻尔兹曼机 (RBM) 作为自动编码器。目前,我使用了一个简单的两层架构,即输入层(约 100 个节点)和输出层(3 个节点)。我正在考虑添加更多隐藏层。
通过添加多个隐藏层对编码有一些改进吗?如果是,多层如何改进编码?
我正在使用受限玻尔兹曼机 (RBM) 作为自动编码器。目前,我使用了一个简单的两层架构,即输入层(约 100 个节点)和输出层(3 个节点)。我正在考虑添加更多隐藏层。
通过添加多个隐藏层对编码有一些改进吗?如果是,多层如何改进编码?
首先,当您添加隐藏层或堆叠 RBM 时,您将获得一个深度信念网络 (DBN)。然后,您的问题涉及 DBN 和 RBM 的比较。
在 Nicolas Le Roux 的文章Representational Power of Restricted Boltzmann Machines and Deep Belief Networks中有一些元素可以回答这个问题,这些课程幻灯片中对此进行了总结。主要结果是:
受限玻尔兹曼机:
增加隐藏单元的数量可以提高表示能力。
对于无限数量的单位,任何分布可以任意近似。
深度信念网络:
使用贪心对比发散训练添加额外的层不会提供额外的好处。
关于附加层增加的好处仍然存在悬而未决的问题。
我强调了这一点涵盖了您的问题。这并不意味着额外的层是无用的,但由于 RBM 是通用逼近器(点),添加层的好处似乎不那么简单。它们似乎依赖于第一层,即训练过程……您可以查看文章了解更多详细信息以及关于 DBN 提出的未解决问题。请注意,此答案是该主题的切入点,本文后面可能会有我不熟悉的最新结果...