文本相似度算法-Jaro distance
2019-11-14 本文已影响0人
ColdCoder
Jaro distance
给定两个文本串,,他们的Joro距离定义为:
其中:
表示两个字符串中match的字符数
表示文本串长度
表示换位(transpositoins)数目()
求match的字符数:
分别来自,的字符,当他们相同或者距离小于,则被认为是match的。
比如:=“DIXON”, =“DICKSONX”
距离计算出来等于3,则每一次从max(0,i-d)到min(i+d,xLen)的空间内比较(如果从横轴进行比较,xLen表示长度)。最终得到match数。
中的每一个字符都会与中距离内的字符进行比较。将所有match的字符串,需要替调换顺序才能匹配的总数除以二就是transpositions的大小。这里两个字符串中匹配的分别是:"DION",“DION",所以。
另外 =4, =8,
则: