机器学习中为什么要用混合精度训练

目录

  • FP16与显存占用关系
  • 机器学习中一般使用混合精度训练:FP16计算 + FP32存储关键变量。

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:

    前向传播的中间激活值

    反向传播的梯度

你可能感兴趣的:(机器学习,机器学习,人工智能)