【科普】大模型涉及到的精度有多少种?FP32、TF32、FP16、BF16、FP8、FP4、NF4、INT8都有什么关联,一文讲清楚

大模型的训练和推理,经常涉及到精度的概念,种类很多,而且同等精度级别下,还分不同格式,网上没看到一篇能够介绍全面的,这里梳理总结一份全面的介绍。

1、整体介绍

浮点数精度:双精度(FP64)、单精度(FP32、TF32)、半精度(FP16、BF16)、8位精度(FP8)、4位精度(FP4、NF4)

量化精度:INT8、INT4 (也有INT3/INT5/INT6的)

另外,实际使用场景中,还有多精度和混合精度的概念

2、什么是精度

假设你每秒钟赚到的钱是1块钱,那一个月的收入是160602430=216000,如果每秒钟赚到1块1呢,那一个月的收入是237600,就一个1毛钱的小数点,让你月收入少了1万多,这就是精度不同导致的差异。

另外一个典型的例子是π,常用3.14表示,但是如果要更高精度,小数点后面可以有无数位。

当然,这些都是数学里面的精度概念,在计算机里面,浮点数的精度,跟存储方式有关,占用的bit越多,精度越高。

3、为什么要有这么多精度

因为成本和准确度。

都知道精度高肯定更准确,但是也会带来更高的计算和存储成本。较低的精度会降低计算精度,但可以提高计算效率和性能。所以多种不同精度,可以让你在不同情况下选择最适合的一种。

双精度比单精度表达的更精确,但是存储占用多一倍,计算耗时也更高,如果单精度足够,就没必要双精度。

4、不同的浮点数精度

在计算机中,浮点数存储方式,由由符号位(sign)、指数位(exponent)和小数位(fraction)三部分组成。符号位都是1位,指数位影响浮点数范围,小数位影响精度。

FP精度

Floating Point,是最原始的,IEEE定义的标准浮点数类型。由符号位(sign)、指数位(exponent)和小数位(fraction)三部分组成。

FP64,是64位浮点数,由1位符号位,11位指数位和52位小数位组成。

img

FP32、FP16、FP8、FP4都是类似组成,只是指数位和小数位不一样。

但是FP8和FP4不是IEEE的标准格式。IEEE标准:https://en.wikipedia.org/wiki/I

FP8是2022年9月由多家芯片厂商定义的,论文地址:https://arxiv.org/abs/2209.05433

FP4是2023年10月由某学术机构定义,论文地址:https://arxiv.org/abs/2310.16836

FP8格式有两种变体,E4M3(4位指数和3位尾数)和E5M2(5位指数和2位尾数)

符号位、指数位、小数位的位数如下表所示:

img

不同浮点数类型构成

特殊精度

TF32

Tensor Float 32,英伟达针对机器学习设计的一种特殊的数值类型,用于替代FP32。首次在A100 GPU中支持。

由1个符号位,8位指数位(对齐FP32)和10位小数位(对齐FP16)组成,实际只有19位。在性能、范围和精度上实现了平衡。

img

TF32和FP32、FP16的关系

python中查看是否支持:

import torch
//是否支持tf32
torch.backends.cuda.matmul.allow_tf32
//是否允许tf32,在PyTorch1.12及更高版本中默认为False
torch.backends.cudnn.allow_tf32

BF16

Brain Float 16,由Google Brain提出,也是为了机器学习而设计。由1个符号位,8位指数位(和FP32一致)和7位小数位(低于FP16)组成。所以精度低于FP16,但是表示范围和FP32一致,和FP32之间很容易转换。

img

BF16和FP32/FP16的关系

在 NVIDIA GPU 上,只有 Ampere 架构以及之后的GPU 才支持。

python中查看是否支持:

import transformers
transformers.utils.import_utils.is_torch_bf16_gpu_available()

NF4

4-bit NormalFloat,一种用于量化的特殊格式,于23年5月由华盛顿大学在QLoRA量化论文中提出,论文地址:https://arxiv.org/abs/2305.14314

NF4是建立在分位数量化技术的基础之上的一种信息理论上最优的数据类型。把4位的数字归一化到均值为 0,标准差为 [-1,1] 的正态分布的固定期望值上,知道量化原理的应该就会理解。

FP精度和特殊精度加上,位数总结如下表

img

多精度和混合精度

多精度计算,是指用不同精度进行计算,在需要使用高精度计算的部分使用双精度,其他部分使用半精度或单精度计算。

混合精度计算,是在单个操作中使用不同的精度级别,从而在不牺牲精度的情况下实现计算效率,减少运行所需的内存、时间和功耗

不同的量化精度

量化的概念

一般情况下,精度越低,模型尺寸和推理内存占用越少,为了尽可能的减少资源占用,量化算法被发明。FP32占用4个字节,量化为8位,只需要1个字节。

常用的是INT8和INT4,也有其他量化格式(6位、5位甚至3位)。虽然资源占用减少,但是推理结果差不了多少。

img

量化算法不详细展开,有兴趣的可以自行搜索。

那么,如何系统的去学习大模型LLM?

作为一名从业五年的资深大模型算法工程师,我经常会收到一些评论和私信,我是小白,学习大模型该从哪里入手呢?我自学没有方向怎么办?这个地方我不会啊。如果你也有类似的经历,一定要继续看下去!这些问题啊,也不是三言两语啊就能讲明白的。

所以我综合了大模型的所有知识点,给大家带来一套全网最全最细的大模型零基础教程。在做这套教程之前呢,我就曾放空大脑,以一个大模型小白的角度去重新解析它,采用基础知识和实战项目相结合的教学方式,历时3个月,终于完成了这样的课程,让你真正体会到什么是每一秒都在疯狂输出知识点。

由于篇幅有限,⚡️ 朋友们如果有需要全套 《2025全新制作的大模型全套资料》,扫码获取~
在这里插入图片描述

👉大模型学习指南+路线汇总👈

我们这套大模型资料呢,会从基础篇、进阶篇和项目实战篇等三大方面来讲解。
在这里插入图片描述
在这里插入图片描述

👉①.基础篇👈

基础篇里面包括了Python快速入门、AI开发环境搭建及提示词工程,带你学习大模型核心原理、prompt使用技巧、Transformer架构和预训练、SFT、RLHF等一些基础概念,用最易懂的方式带你入门大模型。
在这里插入图片描述

👉②.进阶篇👈

接下来是进阶篇,你将掌握RAG、Agent、Langchain、大模型微调和私有化部署,学习如何构建外挂知识库并和自己的企业相结合,学习如何使用langchain框架提高开发效率和代码质量、学习如何选择合适的基座模型并进行数据集的收集预处理以及具体的模型微调等等。
在这里插入图片描述

👉③.实战篇👈

实战篇会手把手带着大家练习企业级的落地项目(已脱敏),比如RAG医疗问答系统、Agent智能电商客服系统、数字人项目实战、教育行业智能助教等等,从而帮助大家更好的应对大模型时代的挑战。
在这里插入图片描述

👉④.福利篇👈

最后呢,会给大家一个小福利,课程视频中的所有素材,有搭建AI开发环境资料包,还有学习计划表,几十上百G素材、电子书和课件等等,只要你能想到的素材,我这里几乎都有。我已经全部上传到CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费
在这里插入图片描述
相信我,这套大模型系统教程将会是全网最齐全 最易懂的小白专用课!!

### 关于压电陶瓷传感器与电压放大电路的技术资料 #### 压电陶瓷传感器的工作原理 压电陶瓷传感器利用特定材料的压电效应,当受到机械应力作用时会产生电荷。这种特性使得压电陶瓷能够将物理量的变化转换成电信号输出。为了提高检测灵敏度并适应不同的应用场景需求,在实际应用中通常需要配合相应的前置放大器一起使用。 #### 电压放大电路的作用及其重要性 由于压电陶瓷产生的初始信号非常微弱,因此必须通过专门设计的电压放大电路对其进行增强处理。这样的做法不仅有助于提升测量精度,而且可以有效减少外界干扰因素带来的负面影响。在某些情况下,还需要加入滤波环节以去除不必要的噪声成分[^4]。 #### 设计方案概述 针对上述提到的要求,一种常见的解决方案是在靠近传感元件的位置安装低噪声音频运算放大器作为初级增益级;随后再经过多级放大多路传输至数据采集卡或其他终端装置完成进一步的信息加工任务。此外,考虑到系统的整体性能表现,建议选用具有较高输入阻抗特性的元器件来降低负载效应对源端的影响程度。 #### 原理图示意 下面给出了一种典型的基于运放构建的单通道压电陶瓷传感器信号调理模块框图: ```plaintext +-------------------+ | | | Piezo Sensor |-----> Input Signal | | +--------+----------+ | \|/ +-----------+ | | | Op Amp |---> Amplified Output | (Low Noise)| +-----------+ ``` 请注意,这里仅展示了简化版结构,真实环境中可能还会涉及到更多辅助功能单元如电源稳压、温度补偿等。 #### 应用实例分享 在一个成功的工业监控项目里,工程师团队成功实现了对大型机械设备运行状态的有效跟踪。通过对关键部位加装多个定制化的压电振动拾音头,并搭配高性能的前端放大线路板,最终达到了实时预警潜在故障的目的。此案例充分证明了合理配置硬件资源对于保障生产安全的重要性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值