首页 文章

单词聚类

提问于
浏览
0

我'm trying to cluster some words (let'采取汽车品牌) . 为了做到这一点,我可以尝试使用Sklearn的Affinity Propagation . 我正在使用距离lib的 levenshteinpyxdameraulevenshtein lib的 damerau_levenshtein_distance .

示例:https://stats.stackexchange.com/questions/123060/clustering-a-long-list-of-strings-words-into-similarity-groups

但是,这些指标并不完全是我需要的指标 . 例如,MERCEDES-BENZ和MERCEDES有5个距离,与VOLVO和FIAT相同 . 你们是否知道一些指标可以使MERCEDES-BENZ和MERCEDES之间的相似度得分高于VOLVO和FIAT .

谢谢,Djokx

1 回答

  • 1

    您可以使用组成这些单词的三元组中的Jaccard相似性 . 也就是说,你分解它们的三个字符组件中的每个单词(对于volvo:vol,olv,lvo)并获得彼此相似的Jaccard相似性 . N-gram .

    Jaccard相似度定义为 number of common n-gramsnumber of total n-gramsJaccard index之间的比率 .

相关问题