我试图编写一个带有tensorflow的CLDNN实现,就像this scheme中的那个。我遇到了降维层的问题。
据我了解,它是由几个堆叠的受限玻尔兹曼机器(RBM)制成,并且像自动编码器一样工作。该层的解码器部分仅用于训练编码器以减小井尺寸。这意味着你想要"插入"编码器输出到下一层的输入。
我可以定义一个损失函数,它将训练自动编码器(通过比较来自解码输出的输入),以及另一个将训练整个图形的损失函数。我有办法培养这两种损失函数吗? 或许我在这里误解了这个问题,但是我觉得自动编码器的解码器部分有点离开"在循环之外"并且没有受过训练。
我已经找到了这种自动编码器和卷积层等的实现......但我并不真正理解如何"插入"网络内部的自动编码器(如方案中所示)
答案 0 :(得分:0)
论文说
计算网络工具包(CNTK)[24]用于神经网络训练。如[14]所示,我们对所有层应用均匀随机权重初始化,而不进行生成或判别性预训练[1]。
图中的尺寸缩减只是一个密集的投影层。因此,他们不会训练任何自动编码器,他们只是配置网络架构并从随机初始状态训练网络。
自动编码器之前用于子网初始化,但它们现在不是很流行。