表示星形图的两个向量之间的相似性

这个问题有点算法化,我不确定它是否适合放在SO上,如果不合适请告诉我。

我想实现一种在两个标记的星形图之间计算距离或相似性的函数。例如,我可以有以下两个图的表示:

A = [3 -1   0;     4  1   0;     2  0   1;     2  0  -1]

B = [3 -0.8   1     4  1.4   0.4;     2  0.1   1.9]

我的想法(实际上主要基于我正在阅读的一篇论文)是进行某种信念传播:假设A是观察到的图——每一行都是中心节点的一个邻居,第一列是标签,第二列是x位置,第三列是y位置(位置相对于中心节点)。B是我们数据库中的一个图,我想要看看它们有多接近或相似。

在论文中,他们计算了给定B的情况下观察到的图A的可能性,作为所有节点可能性的乘积。你会如何在matlab中高效地实现这个呢?

我很感激任何想法或启发,我不是在寻找解决这个问题的代码,我只是想从你们这些大师那里学习你们会如何处理这个问题。

谢谢,

J


回答:

我只是粗略地看了一下那篇论文,我认为你正在寻找的是贝叶斯网络中的推理算法。这些算法以计算复杂和难以实现而闻名,所以我建议你寻找现成的解决方案。谷歌搜索“matlab图形模型”会返回很多结果

— 编辑 —

评论中发布的网站看起来相当详细,但可能有点过时(2005年)。我想推荐一个不同的软件。我一直在使用MALLET,我觉得它相当不错。作者在NLP社区中非常有名。结果发现有一个扩展,允许任意图形结构——GRMM。用Java编写,开源。我自己没有使用过它。

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

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