Softmax层,用于有区别的限制Boltzmann机器

时间:2016-07-20 10:34:59

标签: deep-learning softmax

  1. 我使用4层RBM创建DBN。 (每层有21个节点)
  2. 在最后一层,我添加标签数据,特别是2个类。(这个DBN是二进制分类器。添加类标签数据后,我在顶层有21 + 2 = 23个节点)。
  3. 我将最后一层的输出与类标签输入相结合,软化为2个单元格的向量。(位置0中的1表示0级,位置1中的1表示1级)。
  4. 问题 - 1.这个softmax层是否需要用CD-k进行训练?意思是,我需要在输出图层和最后一个(增强的)图层之间进行CD吗?

    1. 如何初始化最后一层到输出层连接的权重?

    2. 或者,是否需要训练顶层,现在21 + 2单位与CD-k对抗下层?

    3. 感谢。 我正在查看这篇论文 - http://machinelearning.org/archive/icml2008/papers/601.pdf

1 个答案:

答案 0 :(得分:0)

  1. 是的,您使用CD将目标标签和输入要素联合作为RBM中的可见图层数据进行训练。
  2. 随机初始化,你的"最后输出"权重矩阵是顶层RBM权重矩阵的一部分。如本文图所示,{x,y}可视为RBM的单个可见层。
  3. 所以训练这个{x,y} -h RBM与训练一个普通的v-h RBM是一样的。
  4. 最后,如果你想要一个单独的softmax层,你实际上正在寻找一个DNN,它可以由你在这里训练的DBN初始化。但这是另一个故事。

    对于2级分类,您可以使用1个2编码softmax层的2个节点,或1个二进制节点(0个用于一个类,1个用于另一个)。