A_D*_*A_D 7 python types numpy
我想了解之间的实际差异float16,并float32在结果精度方面.例如,Numpy允许您选择所需数据类型的范围(np.float16, np.float32, np.float64).我担心的是,如果我决定使用float 16来保留内存并避免可能的溢出,那么与float32相比,这会造成最终结果的丢失吗?
谢谢
Fur*_*sen 35
a = np.array([0.123456789121212,2,3], dtype=np.float16)
print("16bit: ", a[0])
a = np.array([0.123456789121212,2,3], dtype=np.float32)
print("32bit: ", a[0])
b = np.array([0.123456789121212121212,2,3], dtype=np.float64)
print("64bit: ", b[0])
Run Code Online (Sandbox Code Playgroud)
Gur*_*tap 29
float32 是一个 32 位数字 - float64 使用 64 位。
这意味着 float64 占用两倍的内存——并且在某些机器架构中对它们进行操作可能会慢很多。
但是,float64 可以比 32 位浮点数更准确地表示数字。
它们还允许存储更大的数字。
对于您的 Python-Numpy 项目,我相信您知道输入变量及其性质。
为了做出决定,我们作为程序员需要问自己
一个简单的例子是,如果我将我所在城市的天气数据存储为 [12.3, 14.5, 11.1, 9.9, 12.2, 8.2]
第二天预测输出可能是 11.5 或 11.5164374
您认为有必要存储 float 32 或 float 64 吗?