
深度探究深度学习常见数据类型INT8 FP32 FP16的区别即优缺点
·
定点和浮点都是数值的表示(representation),它们区别在于,将整数(integer)部分和小数(fractional)部分分开的点,点在哪里。定点保留特定位数整数和小数,而浮点保留特定位数的有效数字(significand)和指数(exponent)。
1.FP与INT
FP代表浮点运算数据格式,包括双精度FP64 单精度FP32 半精度FP16和FP8
INT代表整数数据格式,包括INT8和INT4
后面的数字越高意味着精度越高能够支持的运算复杂度也就越高 适配场景也就越广,同样对推理端的计算资源要求也就越高;
2.FP64、FP32、FP8 和INT8、INT4
双精度FP64 :浮点数使用64位表示,提供更好的精度和动态范围。通常应用在高精度计算的场景中,对存储空间以及计算资源要求较多 通常较少使用
单精度FP32:浮点数使用32位表示,适用于大多数科学计算和通用计算任务。通常我们训练神经网络模型的时候默认使用的数据类型为单精度FP32
半精度FP16:浮点数使用16位表示。相对于FP32提供了较低的精度,按照理论来说可以跑机器学习这些任务,但是FP16会出现精度溢出和舍入误差,所以很多应用都是使用混合精度计算的也就是FP16+FP32模式
浮点数在高精度图像处理有较大优势能够使图片中更多颜色、对比度、质感和清晰度得以保留。
但INT类型速度更快
- 第一部分为
sign
符号位 s,占 1 bit,用来表示正负号; - 第二部分为
exponent
指数偏移值 k,占 5 bits,用来表示其是 2 的多少次幂; - 第三部分是
fraction
分数值(有效数字) M,占 10 bits,用来表示该浮点数的数值大小。
固定点数INT8:固定点数使用固定的小数点位置来表示数值,可以使用定点数算法进行计算。相对于浮点数计算,算力和内存资源要求更低。
更多推荐
相关推荐
查看更多
DeepSeek-V3-0324

DeepSeek最新推出DeepSeek-V3-0324版本,参数量从6710亿增加到6850亿,在数学推理、代码生成能力以及长上下文理解能力方面直线飙升。
javascript

JavaScript 编程指南。
electron

使用Electron构建跨平台桌面应用程序,支持JavaScript、HTML和CSS
热门开源项目
活动日历
查看更多
直播时间 2025-03-13 18:32:35

全栈自研企业级AI平台:Java核心技术×私有化部署实战
直播时间 2025-03-11 18:35:18

从0到1:Go IoT 开发平台的架构演进与生态蓝图
直播时间 2025-03-05 14:35:37

国产工作流引擎 终结「996」开发困局!
直播时间 2025-02-25 14:38:13

免费开源宝藏 ShopXO,电商系统搭建秘籍大公开!
直播时间 2025-02-18 14:31:04

从数据孤岛到数据智能 - 企业级数据管理利器深度解析
目录
所有评论(0)