计算机精度导致各种误差,大数吃小数

如果 p ∗ p^* p∗是p的近似, ∣ p ∗ − p ∣ |p^*-p| ∣p∗−p∣是绝对误差, ∣ p ∗ − p ∣ / ∣ p ∣ |p^*-p|/|p| ∣p∗−p∣/∣p∣是相对误差

舍入误差,就是数据表示精度不足带来的误差

a=0.1234564≈0.123456=fl(a)

b=0.1234546≈0.123455=fl(b)

在上面发生了舍入误差

fl(a)-fl(b)=0.000001

a-b=0.0000018

所以在计算a-b时绝对误差是0.0000008

但是想对误差是0.44

从绝对误差的角度看,差异很小,但是从相对误差的角度来看误差就非常大了

大数吃小数:

如果精度有限可能会发生下面的情况
100000000 + 0.5 = 100000000 100000000+0.5=100000000 100000000+0.5=100000000
100000000 + 0.5 − 100000000 = 0 100000000+0.5-100000000=0 100000000+0.5−100000000=0
( 100000000 + 0.5 − 100000000 ) ∗ 100000000 = 0 (100000000+0.5-100000000)*100000000=0 (100000000+0.5−100000000)∗100000000=0

这和真实结果差了很多,因为精度不够,大数加小数的时候把小数吃掉了,导致后续结果都出现问题,一个办法是交换顺序
100000000 − 100000000 = 0 100000000-100000000=0 100000000−100000000=0
100000000 − 100000000 + 0.5 = 0.5 100000000-100000000+0.5=0.5 100000000−100000000+0.5=0.5
( 100000000 − 100000000 + 0.5 ) − 100000000 = 50000000 (100000000-100000000+0.5)-100000000=50000000 (100000000−100000000+0.5)−100000000=50000000

相关推荐
学究天人13 小时前
数学公理体系大全:Comprehensive Collection of Mathematical Axiom Systems(卷2)
算法·数学建模·动态规划·图论·抽象代数·拓扑学
进击的小头15 小时前
第16篇:Buck-Boost 升降压电路:核心原理、参数计算与典型应用场景全讲解
经验分享·学习·数学建模
学究天人15 小时前
数学公理体系大全:Comprehensive Collection of Mathematical Axiom Systems(卷3.2)
线性代数·算法·机器学习·数学建模·动态规划·抽象代数·拓扑学
学究天人16 小时前
数学公理体系大全:Comprehensive Collection of Mathematical Axiom Systems(卷1)
线性代数·机器学习·数学建模·动态规划·图论·抽象代数·傅立叶分析
省四收割者4 天前
一文详解信号完整性(1)
python·嵌入式硬件·数学建模·信息与通信·信号处理·智能硬件
民乐团扒谱机5 天前
【数学建模题目翻译】保护区核心要素:野生生物与栖息地
数学建模·熵权法·网格搜索·层次分析法·野生动物保护
XLYcmy6 天前
核内调度问题的分层优化:缓存管理与性能均衡策略 模型评价 模型优点
数学建模·ai·论文·模型·研究生·鲁棒性·数模
学究天人6 天前
数学星球:等价性(第5-8章)
线性代数·数学建模·概率论·图论·抽象代数
兜里只有三分钱~24 天前
快递索赔场景评测|魔珐星云职场法务数字人线下落地实测
数学建模·数字人·数字
一切皆是因缘际会24 天前
RLHF奖励坍塌:大模型Reward漂移机理
人工智能·数学建模·ai