机器学习中为什么要用混合精度训练
EEE 754标准:FP64遵循该国际标准,用 64位(8字节) 存储一个浮点数。显存(Video RAM,简称 VRAM)是显卡(GPU)专用的内存。FP32(单精度浮点):传统深度学习默认使用32位浮点数。双精度浮点(FP64)占。
·
FP16与显存占用关系
显存(Video RAM,简称 VRAM)是显卡(GPU)专用的内存。
FP32(单精度浮点):传统深度学习默认使用32位浮点数
每个参数占用`4字节`
例如:1亿参数的模型 → 约400MB显存
FP16(半精度浮点):
每个参数占用`2字节`(直接减半)
相同模型 → 约200MB显存
双精度浮点(FP64)占 8字节。
EEE 754标准:FP64遵循该国际标准,用 64位(8字节) 存储一个浮点数
机器学习中一般使用混合精度训练:FP16计算 + FP32存储关键变量。
混合精度方案的解决方式:
关键部分保留FP32:
模型权重在优化时会保留FP32副本(主权重)
损失计算使用FP32
非关键部分使用FP16:
前向传播的中间激活值
反向传播的梯度
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)