javascript 基于编辑距离的百分比文本相似度算法
javascript text similarity algorithm in percentage based on edit distance
我已经知道javascript中很多编辑距离算法的实现,但是我想基于它来计算文本相似度的百分比。有人知道如何实现吗?
您必须找到长度为 n
的字符串与长度为 m
的字符串之间的最大可能距离。例如,如果此最大距离为 n + m
,则百分比将为
100 - 100 * edit_distance(a, b) / (a.length + b.length)
例如,如果您使用 Levenshtein 距离,其中每次插入、替换、删除的成本为 1
,则此最大可能距离为 max(n, m)
,因此百分比将为
100 - 100 * Levenshtein(a, b) / Math.max(a.length, b.length)
我已经知道javascript中很多编辑距离算法的实现,但是我想基于它来计算文本相似度的百分比。有人知道如何实现吗?
您必须找到长度为 n
的字符串与长度为 m
的字符串之间的最大可能距离。例如,如果此最大距离为 n + m
,则百分比将为
100 - 100 * edit_distance(a, b) / (a.length + b.length)
例如,如果您使用 Levenshtein 距离,其中每次插入、替换、删除的成本为 1
,则此最大可能距离为 max(n, m)
,因此百分比将为
100 - 100 * Levenshtein(a, b) / Math.max(a.length, b.length)