为什么用于降维的自动编码器是对称的?


13

无论如何我都不是自动编码器或神经网络的专家,所以如果这是一个愚蠢的问题,请原谅我。

为了降维或可视化高维数据中的群集,我们可以使用自动编码器通过检查具有2个节点的网络层的输出来创建(有损)2维表示。例如,使用以下架构,我们将检查第三层的输出

[X]N1=100N2=25(N3=2)N4=25N5=100[X]

其中是输入数据,N l是第l层中的节点数。XNll

现在,我的问题是,为什么我们要一个对称的架构?难道不是深层“压缩”阶段的镜像,这意味着我们可能会有类似复杂的“解压缩”阶段,导致2节点输出不是很直观吗?换句话说,难道没有更简单的解码阶段会导致具有2个节点的层的输出也必然变得更简单吗?

我的想法是,减压阶段越简单,二维表示就必须越简单(越线性?)。更复杂的减压阶段将允许更复杂的2D表示。

Answers:


13

对自动编码器的对称性没有特定限制。

最初,人们倾向于最大程度地增强这种对称性:不仅各层是对称的,而且共享编码器和解码器中各层的权重。这不是必需的,但是它允许使用某些损失函数(即RBM得分匹配),并且可以充当正则化,因为您可以有效地减少要优化的参数数量的一半。然而,如今,我认为没有人强加编码器-解码器权重分配。

关于体系结构对称性,通常在编码器和解码器中找到相同数量的层,相同类型的层以及相同层大小,但是并不需要这样做。

例如,在卷积自动编码器中,过去很常见的是在编码器中找到卷积层,在解码器中找到反卷积层,但是现在您通常会在解码器中看到上采样层,因为它们具有较少的伪像问题。


7

您的问题肯定存在,但是我发现任何格式为“在深度学习中我应该X还是Y?” 只有一个答案。

都尝试一下

深度学习是一个非常经验的领域,如果非对称自动编码器适用于您的领域,请使用它(并发表论文)


2

我做了一些广泛的实验来解决这个问题。我的实验表明,编码路径(NN的左腿)应具有较少但较宽的层。我通常会占用一半的图层,但编码路径的节点数却增加了一倍。我对此没有任何解释,只是这些配置经常导致更快的收敛。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.