有没有一种通用的方法可以在相似性度量和距离度量之间进行转换?

考虑一个相似性度量,比如两个字符串共有的 2-gram 的数量。

2-grams('beta', 'delta') = 1
2-grams('apple', 'dappled') = 4

如果我需要将其提供给期望差异度量的优化算法,例如 Levenshtein 距离,该怎么办?

这只是一个例子......我正在寻找一个通用的解决方案,如果存在的话。比如如何从 Levenshtein 距离到相似度的度量?

我感谢您提供的任何指导。

最佳答案

d 表示距离, s 表示相似度。转换距离量度相似性度量,我们首先需要正常化 d 为[0 1],通过使用 d_norm = d /最高( d )。然后相似性度量由下式给出:

s = 1 - d_norm

其中 s 在[0 1]范围内,1表示最高相似度(比较项目相同),0表示最低相似度(最大距离)。

关于metrics - 如何在相似性度量和差异度量(距离)之间进行转换?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4064630/

10-12 19:08