形式陈述
设 x 是真值,x ^ 是近似值。在赋范空间 公理库 赋范向量空间 Normed vector space 带满足正定、齐次与三角不等式范数的向量空间。 中,绝对误差定义为
e abs = ‖ x ^ − x ‖ , 当 x ≠ 0 时,相对误差为
e rel = ‖ x ^ − x ‖ ‖ x ‖ . 二者回答不同问题:绝对误差保留对象的单位和尺度,相对误差衡量误差相对于真值有多大。若 x = 0 ,上述相对误差没有定义;工程验收通常直接写成
‖ x ^ − x ‖ ≤ atol + rtol ‖ x ‖ , 其中 atol 与 x 同量纲,rtol 无量纲。把分母改成一个未说明来源的极小常数,会让零附近的判定随实现常数而不是问题规格变化。
对向量,可用范数型误差,也可逐分量考察。给定正尺度 w i ,分量误差可写为
e comp = max i | x ^ i − x i | w i , 常见选择是 w i = | x i | ,但零分量仍需绝对尺度。更稳健的混合尺度取 w i = a i + r i | x i | ,其中 a i > 0 反映该分量的噪声底或可接受绝对误差。矩阵和函数的误差同样必须写明范数,例如矩阵的 2 -范数、Frobenius 范数,或函数在区间上的一致范数;没有范数、量纲与归一化对象的“误差小”不是完整陈述。
标量的有效数字通常由相对误差数量级刻画,而 ulp 衡量某个浮点数附近相邻机器数的间距。两者依赖不同尺度,不能互换;ulp 的精确定义和舍入约定见舍入、机器精度与 ulp 公理库 舍入、机器精度与 ulp Rounding and unit roundoff · Unit in the last place · ulp 用舍入映射、ulp 与 unit roundoff 描述实数映到邻近浮点数时的局部精度。 。
直觉
10 6 的近似值若偏差为 1 ,绝对误差看起来不小,相对误差却只有 10 − 6 ;10 − 12 的近似值若也偏差 10 − 12 ,绝对误差极小,相对误差却达到 1 。误差数字只有连同尺度一起读才有意义。
范数型度量把整个向量压成一个数,适合描述总体几何距离;逐分量度量保留每个坐标的相对尺度,适合某个小分量具有独立物理意义的情形。前者可能让大分量遮住小分量,后者又会在真实零附近变得苛刻;选择哪一种是问题规格的一部分,而非排版习惯。
例子与边界
取
x = ( 1 , 10 − 12 ) , x ^ = ( 1 , 2 × 10 − 12 ) . 在 2 -范数下,‖ x ^ − x ‖ 2 / ‖ x ‖ 2 ≈ 10 − 12 ,整体相对误差极小;但第二个分量的相对误差为 1 。若第二个分量代表微量污染物浓度,范数型结论会掩盖最重要的失真。
百分比误差在真值穿过零时也会失去解释力。例如从 1 ∘ C 变到 2 ∘ C 可被写成“增加 100 % ”,但换成开尔文后只增加约 0.365 % ;摄氏零点是约定的平移原点,不支持比例解释。此时应使用有物理意义的绝对差,或改用确实具有比例尺度的量。
误差还不能与残差混同。对方程 F ( x ) = 0 ,‖ F ( x ^ ) ‖ 衡量近似值代回方程后的缺陷,而 ‖ x ^ − x ∗ ‖ 才是解误差;二者甚至可能具有不同单位。只有掌握逆映射或条件性信息时,前者才能推出后者。
推论与应用
条件数、前向误差、后向误差和停止准则都以本页的尺度选择为前提。实验报告应在图表或公式中直接注明所用指标,例如“2 -范数相对前向误差”或“无穷范数绝对残差”,而不是让读者猜测分母和范数。
序列收敛 公理库 序列收敛 Convergence of a sequence 序列项最终任意接近某个极限值。 只说明误差趋于零,算法比较还需要收敛阶 公理库 迭代收敛阶 Order of convergence · Q-convergence · R-convergence 用相邻迭代误差的渐近幂律区分线性、超线性与二次收敛,并说明实验估阶的边界。 ;矩阵分解、插值和微分中的误差则会分别选择适合其结构的范数或逐分量尺度。统一术语并不意味着所有问题都用同一个数字。
参考资料
NIST Digital Library of Mathematical Functions, §3.1 Arithmetics and Error Measures , accessed 2026.
Nicholas J. Higham, Accuracy and Stability of Numerical Algorithms , 2nd ed., SIAM, 2002, Ch. 1.
David Goldberg, “What Every Computer Scientist Should Know About Floating-Point Arithmetic,” ACM Computing Surveys 23(1), 1991.