计算两字符的相似度

两字符的相似度:即字符A到B的最小编辑次数。(AKA)

(1)python-Levenshtein

汉明距离,要求:两字符长度一致。即len(str1)==len(str2)

hamming(str1, str2)

(2)编辑距离(插入,修改,删除)

distance(str1, str2)

(3)莱文斯坦比

ratio(str1, str2)

原理:r = (sum - ldist) / sum,其中sum = str1 + str2,ldist为类编辑距离(插入/删除,+1;修改,+2)

用途:拼写纠错、文本去重、上下文相似度

(4)其他距离

Jaccard distance、J-W距离、余弦相似度、欧式距离等

J-W距离:dj = 1/3( m/|s1| + m/|s2| + (m-t)/m )   m是匹配的字符数,t是换位的数目。

猜你喜欢

转载自www.cnblogs.com/xyqiu90-365/p/9702349.html
今日推荐