gpt4 book ai didi

algorithm - 浮点除法与乘法的精度差异

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:30:24 25 4
gpt4 key购买 nike

这之间有区别吗:

average = (x1+x2)/2;
deviation1 = x1 -average;
deviation2 = x2 -average;
variance = deviation1*deviation1 + deviation2*deviation2;

还有这个:

average2 = (x1+x2);
deviation1 = 2*x1 -average2;
deviation2 = 2*x2 -average2;
variance = (deviation1*deviation1 + deviation2*deviation2) / 4;

请注意,在第二个版本中,我试图尽可能晚地延迟除法。第二个版本 [delay divisions] 是否总体上提高了准确性?

上面的片段只是一个例子,我并不是要优化这个特定的片段。

顺便说一句,我问的是一般除法,而不仅仅是除以 2 或 2 的幂,因为它们简化为 IEEE 754 表示中的简单移位。我除以 2,只是为了用一个非常简单的例子来说明这个问题。

最佳答案

这样做没有任何好处。您只是在更改比例,但您不会在计算中获得更多有效数字。

Wikipedia article on variance以稳健的方式在较高层次上解释了一些计算方差的选项。

关于algorithm - 浮点除法与乘法的精度差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6482660/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com