文章目录

  • 误差简述.
  • 绝对误差.
  • 相对误差.
  • 有效数字.
  • 减少误差的原则.
  • 减少误差的实例.


误差简述.

绝对误差.

  • 绝对误差】设 机器学习 绝对误差 绝对误差计算例子_有效数字 为准确值,机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_02机器学习 绝对误差 绝对误差计算例子_有效数字 的近似值,则称 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_04 为近似值 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_02绝对误差,简称误差。
  • 由于准确值 机器学习 绝对误差 绝对误差计算例子_有效数字 未知,实际工作中一般根据相关领域的知识、经验以及测量工具的精度,事先估计绝对误差的绝对值,即 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_07 不超过某个正数 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_08,所以有 机器学习 绝对误差 绝对误差计算例子_有效数字_09,该正数 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_08 称为近似值 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_02绝对误差限,简称为误差限或精度。
  • 依据上面关于绝对误差限的定义,能够得出下式:机器学习 绝对误差 绝对误差计算例子_有效数字_12,因此有时可以将准确值 机器学习 绝对误差 绝对误差计算例子_有效数字 写为 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_14.
  • 但近似值 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_02

相对误差.

  • 相对误差】所以除了考虑绝对误差的大小,还需要考虑准确值本身的大小,定义近似值 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_02 的相对误差为 机器学习 绝对误差 绝对误差计算例子_有效数字_17,实际计算中由于 机器学习 绝对误差 绝对误差计算例子_有效数字 未知,所以将定义改为 机器学习 绝对误差 绝对误差计算例子_有效数字_19,称为近似值 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_02
  • 上述例子中,前者的相对误差为 机器学习 绝对误差 绝对误差计算例子_有效数字_21,而后者的相对误差为 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_22,一般来说相对误差越小,表明 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_02机器学习 绝对误差 绝对误差计算例子_有效数字
  • 仿照绝对误差限 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_25 的定义,可以定义相对误差限 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_26.

有效数字.

  • 定义】设近似值 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_27,其中 机器学习 绝对误差 绝对误差计算例子_有效数字_28 都是 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_29机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_30 之间的自然数,并且 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_31机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_32 为整数,如果 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_33,则称近似值 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_02 具有 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_35 位有效数字,也称 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_02 是有 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_35
  • 定理一】设近似值 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_27机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_35 位有效数字,则其相对误差限机器学习 绝对误差 绝对误差计算例子_有效数字_40.
  • 定理二】设近似值 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_27 的相对误差限 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_42,则它至少具有 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_35
  • 从定理一和定理二的表述中不难看出,有效数字的位数越多,其相对误差限就越小。

  • 例题】设 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_44,则它的近似值 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_45机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_46
  • 解答】根据定义,机器学习 绝对误差 绝对误差计算例子_有效数字_47,所以 机器学习 绝对误差 绝对误差计算例子_有效数字_48机器学习 绝对误差 绝对误差计算例子_有效数字_49,所以 机器学习 绝对误差 绝对误差计算例子_有效数字_50,即 机器学习 绝对误差 绝对误差计算例子_有效数字_51,所以近似值 机器学习 绝对误差 绝对误差计算例子_有效数字_52 的有效位数为4,最后一位的数字1不是有效数字;同理 机器学习 绝对误差 绝对误差计算例子_有效数字_53机器学习 绝对误差 绝对误差计算例子_有效数字_54机器学习 绝对误差 绝对误差计算例子_有效数字_55,所以 机器学习 绝对误差 绝对误差计算例子_有效数字_56机器学习 绝对误差 绝对误差计算例子_有效数字_57,所以 机器学习 绝对误差 绝对误差计算例子_有效数字_58
  • 定理一证明】近似值 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_02机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_35 位有效数字,所以由定义可知 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_33,因为 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_62,易得 机器学习 绝对误差 绝对误差计算例子_有效数字_63,所以相对误差限 机器学习 绝对误差 绝对误差计算例子_有效数字_64.
  • 定理二证明】因为 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_62,易得 机器学习 绝对误差 绝对误差计算例子_有效数字_66,所以 机器学习 绝对误差 绝对误差计算例子_有效数字_67,根据定义可知近似值 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_02 至少具有 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_35

减少误差的原则.

  • 避免两个相近的数相减;
  • 避免重要的小数被大数吞没;
  • 避免除数的绝对值远小于被除数的绝对值;
  • 注意算法的稳定性;

如果输入数据有误差,而算法在计算过程中误差不增张,那么称此算法是数值稳定的,否则为数值不稳定的。

  • 简化计算步骤,减少计算次数。

减少误差的实例.

  • ①当 机器学习 绝对误差 绝对误差计算例子_有效数字_70 时,计算 机器学习 绝对误差 绝对误差计算例子_有效数字_71 的近似值。(避免两个相近的数相减)
  • 分析】采用6位十进制浮点运算,如果直接相减,由于 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_72,所以减数与被减数相差极小,机器学习 绝对误差 绝对误差计算例子_有效数字_73,该式的精确值为 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_74,按照有效数字位数的定义可知,上述直接相减的结果只有 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_75 位有效数字,损失了 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_76 位有效数字。如果对算式进行等价变形,即 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_77,有 机器学习 绝对误差 绝对误差计算例子_有效数字_78

  • 求二次方程 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_79 的根。(避免重要的小数被大数吞没)
  • 分析】使用因式分解法可知该方程两个解为 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_75机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_81,但如果编制程序,使用二次方程求根公式 机器学习 绝对误差 绝对误差计算例子_有效数字_82,如果在一台只能将数表示到小数点后 机器学习 绝对误差 绝对误差计算例子_有效数字_83 位的计算机上运算,首先进行对阶操作,机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_84,由于只能表示到小数点后 机器学习 绝对误差 绝对误差计算例子_有效数字_83 位,加号之后的数值就被舍去,所以 机器学习 绝对误差 绝对误差计算例子_有效数字_86;类似地 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_87,所以最终得到的两个根为 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_81机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_29,产生这两个解的原因是大数在运算中吞没了小数。产生解 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_29 的计算式为 机器学习 绝对误差 绝对误差计算例子_有效数字_91,如果对其进行等价变形,得到 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_92,在计算机精度不足的情况下也能够得到正确结果。
  • 类似的情况,若 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_93机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_94机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_95,求 机器学习 绝对误差 绝对误差计算例子_有效数字_96. 如果按照从左向右的加法次序来编制程序,同样在一台只能将数表示到小数点后 机器学习 绝对误差 绝对误差计算例子_有效数字_83 位的计算机上运算,机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_98时的对阶操作就会导致大数 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_02 将小数 机器学习 绝对误差 绝对误差计算例子_有效数字_100 吞没,从而最后的结果为 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_29;而如果改变次序,按照 机器学习 绝对误差 绝对误差计算例子_有效数字_102 的次序进行运算,就能够得到正确的结果 机器学习 绝对误差 绝对误差计算例子_有效数字_103.
  • Digression】出自Anany Levitin《Introduction to The Design and Analysis of Algorithms》,其中公式(11.14)即 机器学习 绝对误差 绝对误差计算例子_有效数字_82.


  • 机器学习 绝对误差 绝对误差计算例子_有效数字_105 位浮点十进制数下,用消去法解线性方程组机器学习 绝对误差 绝对误差计算例子_有效数字_106(避免除数的绝对值远小于被除数的绝对值)
  • 分析】在计算机的 机器学习 绝对误差 绝对误差计算例子_有效数字_105 位浮点十进制数表示中,上述方程组写为:机器学习 绝对误差 绝对误差计算例子_有效数字_108
  • 第一种消去法思路将 ① 式除以 机器学习 绝对误差 绝对误差计算例子_有效数字_109 后减去 ② 式,从而消去 机器学习 绝对误差 绝对误差计算例子_有效数字_52,得到 机器学习 绝对误差 绝对误差计算例子_有效数字_111,解得 机器学习 绝对误差 绝对误差计算例子_有效数字_112,回代入 ① 式得 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_113,显然这组解偏差极大。原方程组的准确解为 机器学习 绝对误差 绝对误差计算例子_有效数字_114机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_115,在 机器学习 绝对误差 绝对误差计算例子_有效数字_52
  • 第二种消去思路保留 ② 式,消去 ① 式中的 机器学习 绝对误差 绝对误差计算例子_有效数字_52,即将 ② 式乘以 机器学习 绝对误差 绝对误差计算例子_有效数字_109 后减去 ① 式,得到 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_119,所以解得 机器学习 绝对误差 绝对误差计算例子_有效数字_112,回代入 ② 式得 机器学习 绝对误差 绝对误差计算例子_有效数字_121,相较于准确解来说是一个很好的近似解。

  • 机器学习 绝对误差 绝对误差计算例子_有效数字_122 时,计算积分机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_123
  • 分析机器学习 绝对误差 绝对误差计算例子_有效数字_124,所以有机器学习 绝对误差 绝对误差计算例子_有效数字_125. 当 机器学习 绝对误差 绝对误差计算例子_有效数字_126 时,机器学习 绝对误差 绝对误差计算例子_有效数字_127,从而有机器学习 绝对误差 绝对误差计算例子_有效数字_128
  • 根据上式计算出 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_129,直到机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_130,问题出现了,上述积分在 机器学习 绝对误差 绝对误差计算例子_有效数字_131 内必然是正数,显然误差已经过大了。我们记初始误差为 机器学习 绝对误差 绝对误差计算例子_有效数字_132,根据迭代式,得到 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_133,所以最终 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_134,其误差绝对值会随着计算过程的进行不断增大,显然该算法不是数值稳定的。
  • 考虑另一种算法,由 机器学习 绝对误差 绝对误差计算例子_有效数字_125 可得 机器学习 绝对误差 绝对误差计算例子_有效数字_136,直接估计出 机器学习 绝对误差 绝对误差计算例子_有效数字_137 的近似值,而后将 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_35 递减。因为 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_123,所以机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_140,所以 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_141,令 机器学习 绝对误差 绝对误差计算例子_有效数字_142 可以得到 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_143,可得机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_144
  • 采用相同的误差分析方法,记初始误差 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_145,则 机器学习 绝对误差 绝对误差计算例子_有效数字_146,在计算过程中,其误差绝对值是不断减小的,因而该算法是数值稳定的。

  • 离散Fourier变换与快速Fourier变换(简化计算步骤)
  • 离散Fourier变换】已知一离散信号 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_147,则其对应的Fourier系数为机器学习 绝对误差 绝对误差计算例子_有效数字_148
  • 相应地,如果已知Fourier系数 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_149,那么可以反推出机器学习 绝对误差 绝对误差计算例子_有效数字_150
  • 上述两式分别是离散Fourier变换和离散Fourier 逆变换,观察后发现主要是计算自然指数部分,若令 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_151(着眼于正向变换),即我们想得到 机器学习 绝对误差 绝对误差计算例子_有效数字_152
  • 上式 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_153 计算需要进行 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_154 次复数乘法,完成整个变换共需要 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_155 次复数乘法,一般取 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_156.
  • 快速Fourier变换】FFT的基本思想是利用 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_157 减少乘法运算的次数,将 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_155 量级的乘法次数降低到 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_159. 在上面介绍的计算 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_153 式中,将相同的 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_161 提取,对应的 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_162 相加,就能够减少乘法运算的次数。在 机器学习 绝对误差 绝对误差计算例子_有效数字_163 中,设 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_164,则有机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_165
  • 机器学习 绝对误差 绝对误差计算例子_有效数字_166 为例,机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_167,将 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_168 以二进制表示,即 机器学习 绝对误差 绝对误差计算例子_有效数字_169,同理 机器学习 绝对误差 绝对误差计算例子_有效数字_170,记 机器学习 绝对误差 绝对误差计算例子_有效数字_171,则有机器学习 绝对误差 绝对误差计算例子_有效数字_172
  • 将FFT表示如下:机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_173
  • 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_156 时,单个系数的FFT分为 机器学习 绝对误差 绝对误差计算例子_有效数字_175 步,每步进行2次复数乘法运算,共需要 机器学习 绝对误差 绝对误差计算例子_机器学习 绝对误差_176