java - 对人物相似度算法的建议

标签 java artificial-intelligence data-mining wolfram-mathematica

我想为我的“寻找相似的人”算法获得一些建议 :)。我有一个存储以下实体的数据库:人物、文章、关键字。因此,对于每个人,我都有一组关键字(以及该人提及的次数),这些关键字是根据该人的文章关键字编制的。所以我需要通过查看他们的相关关键字来找到相似的人,简单的解决方案是从一个人 y 那里获取 x 个关键字并找到所有共享相似关键字分数(不相等)的人,但这似乎不是最好的方法。想法?

谢谢!

最佳答案

听起来您的情况与正常的信息检索系统“相似性”查询足够接近,您可以使用相同的 vector space model .

对于每个人,计算每个关键词出现的次数。将每个关键字视为一个维度,并将出现次数视为该维度中 vector 的大小。通常情况下,每个维度的处理方式相同,但如果您发现某些关键字更能预测兼容性,则可以按某种因素缩放该维度中的每个出现。

然后,不同人的 vector 的点积会为您提供他们相似程度的分数。或者,您可以输入自己的关键字并找到兴趣最接近的人。

关于java - 对人物相似度算法的建议,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3602306/

相关文章:

java - 如何使用音频文件作为进度条更新 jslider

java - 带有基本访问认证的 Jsoup 连接

python - 如何让 minimax 算法返回实际移动?

java - 神经网络错误趋势

machine-learning - Weka的SimpleLogistic函数是否使用正则化?

python - 如何在lightGBM中设置metric输出的频率?

java - Java中劫持监听器,传入额外参数

java - JDK中包含Java Mission Control吗?

algorithm - 深度优先搜索的空间复杂度

java - 光学聚类算法。如何获得最好的epsilon