在做模型量化的時候,經常遇到這幾個類精度表示,做下記錄:
類型 | 位 | |
float16 | 半精讀 | 2個字節 |
float32 | float | 4個字節 |
float64 | 雙精度 | 8個字節 |
注:
bits:位數
bytes:字節 1bytes = 8 bits
單精度用小數用23位存儲,加上默認的小數點前的1為1,2^(23+1) = 16777216.
因為10^7<16777216<10^8,所以說單精度浮點數的有效位數是7位。
雙精度的小數位數是52位存儲,2^(52+1) = 9007199254740992.
因為10^16<9007199254740992<10^17,所以雙精度的有效位數是16位。