量化
量化通过以较低精度存储数字来缩小人工智能模型,因此需要数据中心 GPU 的模型有时可以在笔记本电脑或手机上运行。
概述
It is the main trick that makes large language models cheap and fast enough to deploy widely.
深入探讨
神经网络主要是一大堆称为权重的数字,通常存储为 16 位或 32 位浮点值。量化使用更少的位(通常是 8 位 (INT8) 甚至 4 位整数)来重新存储这些权重。从 16 位到 4 位可将内存减少大约四倍,因此 700 亿个参数的模型在 16 位时需要约 140GB,在 4 位时可容纳约 35GB。较小的数字在内存中的移动速度也更快,这通常会加快生成速度。问题在于准确性:将大范围的值压缩到几个级别会引入舍入误差。好的方法可以通过仔细选择比例因子并保护最敏感的权重来最大限度地减少损失,因此模型在使用一小部分资源时表现几乎相同。
技术洞察
每组权重都有一个比例因子,将实际值映射到一小组整数上;乘以比例即可近似重建原始数字。 GPTQ 和 AWQ 等训练后量化方法会分析小型校准数据集,以确定哪些权重最重要,并设置比例以最小化输出误差,而不是盲目舍入所有内容。激活通常保持较高的精度,因为它们在运行时变化更大。结果是一个存储 4 位整数但计算结果非常接近全精度版本的模型。
战略影响
速度与规模
语言工作流程可以在不牺牲一致性的情况下更快地移动。
交通与覆盖范围
它扩展了跨语言和沟通方式的访问。
更清晰的判决
团队可以花更多时间进行判断,而自动化则可以处理重复。
量化的未来
预计量化将成为默认设置而不是优化。硬件供应商正在添加原生 4 位甚至更低位支持,并且量化感知训练等技术从一开始就将低精度的容差融入到模型中,从而进一步减少精度损失。对 2 位和 1 位(二进制)表示形式的研究正在进行中,旨在在手机和嵌入式芯片上运行可用的模型。随着设备上和私有人工智能的发展,高效的量化模型将成为本地运行助手而不将数据发送到云端的核心。
现实世界的实施
使用 4 位 GGUF 或 GPTQ 文件在消费者 GPU 上本地运行 Llama 等聊天模型,而不需要多个数据中心卡。
手机上的设备助手,其中 8 位或 4 位型号允许在没有网络连接的情况下运行语音和文本功能。
通过提供 INT8 模型,在每个 GPU 上适应更多请求,降低客户支持机器人的云推理成本。
智能相机或物联网传感器等边缘设备在严格的内存限制内运行紧凑的量化视觉语言模型。
风险与防护栏
幻觉的事实可以悄悄地进入报告、支持流程或研究成果。
及时的敏感性可能会在类似的请求中产生不一致的结果。
如果访问控制薄弱,敏感文本数据可能会暴露。
实施路线图
在推出之前定义输出格式、语气和质量标准。
当准确性很重要时,请使用可信来源进行地面响应。
为高风险输出保留人工审查检查点。
跟踪故障模式并定期重新训练提示或工作流程。
不断探索
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the Quantization quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
常见问题
What is Quantization?
量化通过以较低精度存储数字来缩小人工智能模型,因此需要数据中心 GPU 的模型有时可以在笔记本电脑或手机上运行。这是使大型语言模型足够便宜且足够快以进行广泛部署的主要技巧。
量化主要改变神经网络的什么?
量化以较低的数值精度重新存储模型的权重,例如 8 位或 4 位整数,而不是 16 位或 32 位浮点数。
将权重从 16 位移至 4 位大约可以节省多少内存?
4 位是 16 位的四分之一,因此权重存储下降到大约四分之一,大约减少了 4 倍。
激进量化的主要缺点是什么?
用较少的级别表示值会引入舍入误差,如果不仔细管理,可能会降低输出质量。
GPTQ 和 AWQ 等方法使用小型校准数据集有何用途?
这些训练后方法分析一些样本输入以设置比例因子并保护敏感权重,使输出保持接近原始值。
为什么量化通常会使模型更快,而不仅仅是更小?
较低精度的值需要较少的内存带宽来加载和移动,这通常是生成过程中的瓶颈,因此推理速度会加快。