0

我正在尝试使用 tensorflow 编写 CLDNN 的实现,就像这个方案中的那个。我遇到了降维层的问题。

据我了解,它是由几个堆叠的受限玻尔兹曼机 (RBM) 制成的,并且像自动编码器一样工作。该层的解码器部分只是在这里训练编码器以减少井尺寸。这意味着您要将编码器的输出“插入”到下一层的输入中。

我可以定义一个训练自动编码器的损失函数(通过比较来自解码输出的输入),以及另一个训练整个图的损失函数。我有办法训练这两个损失函数吗?或者我可能误解了这里的问题,但我觉得自动编码器的解码器部分有点“在循环之外”并且不会被训练。

我已经找到了这种自动编码器和卷积层等的实现......但我真的不明白如何在网络中“插入”自动编码器(就像在方案中一样)

4

1 回答 1

0

纸说

计算网络工具包(CNTK)[24] 用于神经网络训练。正如 [14] 所建议的,我们对所有层应用统一的随机权重初始化,而无需生成或判别预训练 [1]。

图中的降维只是一个密集的投影层。所以他们不训练任何自动编码器,他们只是配置网络架构并从随机初始状态训练网络。

自编码器以前用于子网初始化,但现在不是很流行。

于 2016-12-07T11:26:21.347 回答