我想使用限制玻尔兹曼机进行模式识别。我注意到它们实际上是用于寻找模式中的分布,而不是模式识别。我查看了以下论文:http://www.cs.toronto.edu/~hinton/absps/uai_crbms.pdf,该论文似乎使用了RBM的扩展版本,称为条件RBM。我想实现这个。我已经使用对比散度法实现了RBM,为了简单起见,我希望继续使用这种方法来实现CRBM。该论文的重点是用更精确的算法替代对比散度法。
根据我在论文中看到的内容,我现在需要创建三个权重矩阵(因为现在我还需要包括分类向量)(见论文中的图1),但我不确定如何更新它们(即如何创建将影响矩阵变化的向量)。
能否有人为我澄清这一点,或者建议一个使用我已经实现的简单RBM进行分类的算法?
谢谢。
回答:
我找到了以下论文,它澄清了这个问题:http://uai.sis.pitt.edu/papers/11/p463-louradour.pdf。这里的海报也非常有帮助,特别是对于实现:http://www.dmi.usherb.ca/~larocheh/publications/drbm-mitacs-poster.pdf。使用两个权重矩阵就足够了,一个用于分类向量,一个用于实际模式,而不是使用三个权重矩阵。
激活概率的公式发生了变化,但基本思想是相同的。