1 汉明距离
在信息论中,两个等长字符串之间的汉明距离是两个字符串对应位置的不同字符的数量。 例如,1011101和1001001之间的汉明距离为2。
汉明距离命名为dzdyz,汉明在误差检测与校正码的基础性论文中首次引入了这一概念。 通信中累计反转为定长二进制字的错误数据位,因此也称为信号距离。 汉明重量分析应用于信息论、信息论、密码学等领域。 它用于测量两个二进制码字之间的相似度。
2 编辑距离
编辑距离也称为Levenshtein距离,是指两个字符串之间从一个转换为另一个所需的最小编辑操作次数。 开放大地编辑操作包括将一个字符替换为另一个字符、插入字符或删除字符。 例如,kitten和sitting之间的编辑距离为3。
应用: DNA分析、拼写检查、语音识别、模仿检查。
3 个人理解
汉明距离多强调向量,各位的值有相应的实际意义。 编辑距离强调了一个字符串转换为另一个字符串的最快速度,没有考虑不同位的含义。
例如,假设有两个对象A=”909”,B=”090”。 a和b的汉明距离h(a,b )=3,编辑距离ed ) a,b )=2。
在附加对象a和b描述是其空间位置信息的情况下,h(a,b )=3表示三个维度上全部不同; ed(a,b )=2意味着操作的两个维度是完全相同的。 在这种情况下,很明显,与编辑距离相比,使用汉明距离更合理。 另一方面,在检错和订正符号的情况下,向量的维数往往相同,各比特对应特定的记述信息。 也就是说,在这些情况下大多使用汉明距离。
如果附加对象a、b的记述文字信息,即拼写检查,则a、b之间的类似度可以更加反映出来。 无论如何,对于与序列相关,但每个位没有特定意义的APP应用,编辑距离较好。