使用对比散度法实现条件限制玻尔兹曼机

我想使用限制玻尔兹曼机进行模式识别。我注意到它们实际上是用于寻找模式中的分布,而不是模式识别。我查看了以下论文: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。使用两个权重矩阵就足够了,一个用于分类向量,一个用于实际模式,而不是使用三个权重矩阵。

激活概率的公式发生了变化,但基本思想是相同的。

Related Posts

L1-L2正则化的不同系数

我想对网络的权重同时应用L1和L2正则化。然而,我找不…

使用scikit-learn的无监督方法将列表分类成不同组别,有没有办法?

我有一系列实例,每个实例都有一份列表,代表它所遵循的不…

f1_score metric in lightgbm

我想使用自定义指标f1_score来训练一个lgb模型…

通过相关系数矩阵进行特征选择

我在测试不同的算法时,如逻辑回归、高斯朴素贝叶斯、随机…

可以将机器学习库用于流式输入和输出吗?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

在TensorFlow中,queue.dequeue_up_to()方法的用途是什么?

我对这个方法感到非常困惑,特别是当我发现这个令人费解的…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注