作者:Kyle Wiggers
量化是使人工智能模型更高效的最广泛使用的技术之一,但它也有局限性——业界可能正在快速接近这些局限性。
在人工智能的背景下,量化是指减少表示信息所需的位数(计算机可以处理的最小单位)。考虑这个类比:当有人问时间时,你可能会说“中午”,而不是“哦,一千二百一秒四毫秒”。两个答案都是正确的,但其中一个答案稍微精确一些。您实际需要多少精度取决于上下文。
人工智能模型由多个可量化的组件组成,特别是特定参数,即模型用于进行预测或决策的内部变量。考虑到模型在运行时执行数百万次计算,这很方便。表示其参数的位数较少的量化模型在数学上的要求较低,因此在计算上的要求也较低。(需要明确的是,这是一个与“蒸馏”不同的过程,“蒸馏”是对参数进行更复杂和有选择性的修剪。)
但量化可能需要比之前假设的更多的权衡。
根据一个学习哈佛大学、斯坦福大学、麻省理工学院、Databricks 和卡内基梅隆大学的研究人员表示,如果模型的原始非量化版本经过长时间的大量数据训练,量化模型的表现会更差。换句话说,在某个时刻,训练一个较小的模型实际上可能比简化一个大模型更好。
这对于人工智能公司来说可能是个坏消息,这些公司需要训练极大的模型(已知可以提高答案质量),然后对其进行量化,以降低服务成本。
效果已经显现。几个月前,开发商和学者报告称量化元骆驼3与其他模型相比,该模型往往“危害更大”,这可能是由于其训练方式所致。
“在我看来,人工智能领域每个人的头号成本现在和将来都是推理,我们的工作表明,减少推理的一种重要方法不会永远有效。”塔尼什克·库马尔 (Tanishq Kumar),哈佛数学系学生,该论文的第一作者告诉 TechCrunch。
与普遍看法相反,AI 模型推理 – 运行模型,例如聊天GPT回答一个问题——总体上通常比模型训练更昂贵。例如,考虑一下谷歌花费了估计的1.91 亿美元用于培训其旗舰之一双子座模型——当然是一笔巨款。但如果该公司要使用一个模型来为一半的 Google 搜索查询生成仅 50 个单词的答案,那么它就需要花费大致每年 60 亿美元。
主要人工智能实验室已经接受了基于海量数据集的训练模型,假设“扩大规模”——增加训练中使用的数据和计算量——将导致人工智能能力越来越强。
例如,Meta 在一组 15 万亿个代币上训练 Llama 3。(代币代表原始数据位;100 万个令牌大约等于 750,000 个单词。)上一代 Llama 2 仅接受了 2 万亿个令牌的训练。
有证据表明,扩大规模最终会带来收益递减;人择与谷歌据说最近训练的巨大模型未达到内部基准预期。但几乎没有迹象表明该行业已准备好有意义地摆脱这些根深蒂固的扩展方法。
那么,如果实验室不愿意在较小的数据集上训练模型,是否有办法使模型不易退化?可能吧。库马尔说,他和合著者发现“低精度”的训练模型可以使它们更加稳健。请耐心等待我们深入了解一下。
“精度”在这里指的是数值数据类型可以准确表示的位数。数据类型是数据值的集合,通常由一组可能的值和允许的操作指定;例如,数据类型 FP8 仅使用 8 位来表示浮点数。
如今,大多数模型都以 16 位或“半精度”进行训练,并“训练后量化”至 8 位精度。某些模型组件(例如其参数)会转换为较低精度的格式,但会牺牲一定的精度。可以把它想象成计算到小数点后几位,然后四舍五入到最接近的十位,通常会给你两全其美的结果。
Nvidia 等硬件供应商正在推动降低量化模型推理的精度。该公司的新型 Blackwell 芯片支持 4 位精度,特别是称为 FP4 的数据类型;英伟达将此视为内存和功耗受限的数据中心的福音。
但极低的量化精度可能并不理想。Kumar 表示,除非原始模型的参数数量非常大,否则低于 7 位或 8 位的精度可能会导致质量明显下降。
如果这一切看起来有点技术性,请不要担心 - 确实如此。但结论很简单,人工智能模型尚未被完全理解,并且适用于多种计算的已知捷径在这里不起作用。如果有人问他们什么时候开始百米冲刺,你不会说“中午”,对吗?当然,这并不那么明显,但想法是一样的:
“我们工作的关键点是,存在一些你无法天真地绕过的限制,”库马尔总结道。“我们希望我们的工作能够为通常寻求训练和推理的精度越来越低的默认值的讨论增添细微差别。”
库马尔承认,他和同事的研究规模相对较小,他们计划在未来用更多模型进行测试。但他相信,至少有一个见解是成立的:在降低推理成本方面,天下没有免费的午餐。
“位精度很重要,而且它不是免费的,”他说。– 你不可能永远减少它而不让模型受到影响。模型的容量是有限的,因此在我看来,与其试图将千万亿代币放入一个小模型中,不如将更多的精力投入到细致的数据管理和过滤中,以便只有最高质量的数据才能放入较小的模型中。我乐观地认为,旨在使低精度训练稳定的新架构在未来将很重要。”