使用余弦相似度(neo4j)计算两个文档之间的相似度

时间:2019-06-26 15:12:51

标签: neo4j nlp cypher

我有两个用neo4j中的图形表示的文档。描述每个文档的图形的基本版本如下: -DocumentNode(代表每个文档名称) -TokenNode(代表文档中提到的令牌) 这两个标签节点在整个关系“ HAS_token”中都相关,该关系包含属性频率(文档中标记的频率)。 我编写了以下查询,但不确定是否可以计算效率的相似度:

MATCH (p1:DocumentNode {name: 'doc1'})-[r1:HAS_token]->(tag)
MATCH (p2:DocumentNode {name: "doc2"})-[r2:HAS_token]->(tag)
RETURN p1.name AS from,
       p2.name AS to,
       algo.similarity.cosine(collect(r1.score), collect(r2.score)) AS similarity

此外,该标签通过关系HAS_category与Wikipedia类别(由标签Category表示)相关。计算余弦相似度时,有什么方法可以包含每个标签的类别?

0 个答案:

没有答案