machine-learning - 使用条件限制玻尔兹曼机的对比散度

标签 machine-learning neural-network

我想使用受限玻尔兹曼机进行模式识别。 我注意到它们实际上是用于查找模式分布而不是模式识别。我查看了以下论文:http://www.cs.toronto.edu/~hinton/absps/uai_crbms.pdf它似乎使用了 RBM 的扩展,称为 ConditionalRBM。我想实现这一点。我已经使用对比散度来实现 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 。使用 2 个权重矩阵就足够了,而不是使用 3 个权重矩阵,一个用于分类向量,一个用于实际模式。

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

关于machine-learning - 使用条件限制玻尔兹曼机的对比散度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14059966/

相关文章:

artificial-intelligence - 选择正确的神经网络类型

python - 如何快速获取使用 PyCharm 和 Pytorch 的文档

algorithm - 如何实现一个特性推荐引擎?

python - Tensorflow 精度为 0.99,但预测很糟糕

python - TensorFlow - 导入元图并使用其中的变量

python - 如何在图像上训练 scikit-neuralnetwork

python - Tensorflow:动态地将图像分割成 block

python - 在 scikit-learn GridSearchCV 中仅计算一次中间结果

python - 如何使用经过训练的 Tensorflow 模型进行预测

java - Encog神经网络训练java太慢