Skip to content

Hamming 距离

Hamming distance

两个等长字在对应位置不同的坐标数。

条目类型
定义

形式陈述

等长 x,yΣn 的 Hamming 距离为 dH(x,y)=|{i:xiyi}|。它满足非负、同一性、对称性和三角不等式,因此是度量。在线性码中 dH(x,y)=wt(xy),最小距离可由最小非零重量求得。

直觉

Hamming 距离只计算等长词在多少个对应坐标上不同,不关心符号之间的数值差,是离散立方体上的度量。对码而言,两个码字距离越大,噪声必须改动更多坐标才能把一个混淆成另一个,因此最小距离直接控制检测与纠错能力。它适合替换错误,却不处理插入或删除。

逐坐标计算 Hamming 距离
例子与边界

1011010001 在三个位置不同,距离为 3;另取 1011011100,它们在第 24 位不同,距离为 2。半径 t 的 Hamming 球大小为 i=0t(ni)(q1)i

最小距离 d=5 的码可检测至多 4 个任意错误,并保证纠正至多 2 个错误,因为半径 2 的球互不相交。

不同长度字符串的 Hamming 距离通常未定义或需先对齐;编辑距离才处理插入删除。接收词离两个码字同距时,最近邻解码会出现 tie,超过保证半径后不能声称唯一正确。

推论与应用

Hamming 距离衡量码字可分性,是 度量空间 的有限离散实例。它也是 Hamming 界线性码 距离的基础。容错存储、组合设计、局部敏感哈希和二进制特征比较都使用它;码的重量是与零词的 Hamming 距离。

在性质测试中,常把 dH(x,y)/n 作为相对距离,并用到性质的距离取对所有合法对象的最小值;测试器只需以少量坐标查询区分距离为零与至少 ε。若两个字分别由 Alice 与 Bob 持有,计算它们是否相等或距离是否超过阈值则是通信问题,成本按交换 bit 而非不同坐标数计算。Hamming 距离给出输入几何,却不会自动等于查询复杂度或Equality 的通信复杂度。

参考资料
  • F. J. MacWilliams and N. J. A. Sloane, The Theory of Error-Correcting Codes, North-Holland, 1977,Chs. 1–10。
  • Shu Lin and Daniel J. Costello Jr., Error Control Coding, 2nd ed., Pearson, 2004,Chs. 1–7。
关系图谱14 个相邻概念 · 1 类关系

拖动节点调整位置。

显示关系

显示:依赖

  1. 前置三跳
  2. 前置二跳
  3. 前置一跳
  4. 当前条目
  5. 后续一跳
  6. 后续二跳
  7. 后续三跳
文字版关系按与当前条目的最短距离分组