nltk.corpus.wordnet中的哪个相似度函数适合于查找两个单词的相似度?
path_similarity()?
lch_similarity()?
wup_similarity()?
res_similarity()?
jcn_similarity()?
lin_similarity()?我想使用一个用于word clustering的函数和用于在大文本中查找相似collocation的yarowsky算法。
发布于 2011-09-14 01:50:31
这些度量实际上是针对词义(或概念)的,而不是针对单词的。这种区别可能很重要。换句话说,“火车”这个词的意思是“火车头”或“被教导去做某事”。要使用这些方法,你需要知道哪种感觉是你想要的。
如果你想做词聚类,这些度量可能不是你想要的…
发布于 2011-09-23 04:38:12
我自己一直在玩NLTK/wordnet,目的是试图以某种自动的方式匹配一些文本。正如Ted Pedersen的答案所指出的那样,很快就会明白,nltk.corpus.wordnet中的相似性函数只会为具有可靠IS-A谱系的非常密切的相关术语产生非零相似性。
我最后做的是在我的文本中获取词汇表,然后使用引理->同义词->引理和引理->相似_tos来生成我自己的单词链接图(graph_tool在这方面很棒),然后计算链接2个单词所需的minimum number of hops,以获得它们之间的某种(非)相似性度量(打印出来非常有趣;就像看一个非常奇怪的单词联想游戏)。这对于我的目的来说确实工作得很好,即使没有任何尝试将POS/sense考虑在内。
https://stackoverflow.com/questions/7400533
复制相似问题