基于受控词表的文档相似性度量

时间:2016-05-16 02:19:26

标签: python similarity cosine-similarity

我有一个受控词汇表列表,例如term1,term2,termN ..文档可能有一个或多个受控词汇表,但每个词汇表只能出现一次。

假设总受控词汇表是Term1,Term2,Term3,Term4,Term5,Term6。

  1. Doc 1(4个术语):term1,term2,term5,term6
  2. Doc 2(2个术语):term2,term5
  3. 选项1: Jaccard方法查看两个数据集并找到两个值等于1的事件。因此,我可以将文档的受控术语(术语1-6)的存在转换为二进制向量1,0。然后,基于Jaccard(http://docs.scipy.org/doc/scipy-0.17.0/reference/generated/scipy.spatial.distance.jaccard.html

    计算相似度
    • 文档1:{1,1,0,0,1,1}
    • 文档2:{0,1,0,0,1,0}

    选项2 - 使用基于tf-idf的余弦相似度,如http://brandonrose.org/clustering

    在这些选项(或可能是其他相似性度量)中,哪种度量适合于基于受控词表计算文档之间的相似性?我是数据挖掘的新手,任何建议都将受到赞赏。

1 个答案:

答案 0 :(得分:-1)

它不会让我发表评论所以我会留下答案。我在R中做了类似的事情,并发现这个有用的

http://text2vec.org/similarity.html#cosine_similarity

我不知道是否有“正确答案”。我会尝试不同的方法,看看哪个方法得出的答案与人类的判断最相似。我认为“欧几里德距离”可能是最好的,但我不知道你是否可以使用它。我