ACL 2022杰出论文:为什么生成式大规模预训练模型难以量化?
©PaperWeekly 原创 · 作者 | BNDSBilly
研究方向 | 自然语言处理
论文标题:
Compression of Generative Pre-trained Language Models via Quantization
ACL 2022
https://arxiv.org/abs/2203.10705
基于 Transformer 架构的生成式 PLMs 展现了其少样本学习的能力以及在多种任务上的 SOTA 表现。然而过多的参数量以及逐个 token 生成的模式导致模型并行效果不好,计算量和内存需求过大。现有的模型压缩方法主要针对于如 BERT 等的理解型任务,然而,针对生成式 PLMs 的模型压缩一直没有取得如 BERT 一样的成功,其潜在的失败原因也并不清楚。
本文中,作者研究了生成式 PLMs 的量化压缩方法,发现主要有以下两点失败原因:(1)模型精度下降导致的词嵌入同质化;(2)不同模块和 Transformer 层的权重分布差异。由于生成式 PLMs 的从左到右预测的性质,量化误差会逐步累积,导致这两个问题被进一步的放大。
3.1 Quantization
float
)量化到低精度(例如 位 int
),从而实现模型压缩。本文中,作者使用了[1]中的训练方式:设全精度模型权重向量化为 ,首先通过一个裁剪因子 将其修剪到 范围内(不在此范围内的分量会被设为 或 )并等比例缩放到 。然后通过量化函数 将其映射到离散集合 中,其中 , 为量化的目标 数,也即权重位宽。量化后权重为 ,计算其损失函数,并用其梯度来更新全精度模型下的参数 [2]。3.2 Token-level Contrastive Distillation
作者首先将全精度模型和量化后模型的词嵌入分布进行了可视化,如下图所示,全精度模型的词嵌入是分散可区分的,而之前的量化方法(如 PACT,LSQ 等)学习到的词嵌入是同质的(聚在一起且不易区分)。作者推测这是由 GPT 的顺序计算性质引起的。具体来说,与 BERT 并行计算不同,GPT 需要以从左到右的顺序计算每个 token,量化误差逐步累积,使得学习噪声逐步增大,导致了最终学习到的词嵌入信息量较少,不同 token 之间的依赖性越低。
本文提出的 token 级别对比学习蒸馏受 [5] 的启发,在学习量化模型中一个 token 的 embedding 时,利用该 token 在全精度教师模型中的 embedding 作为正例,所在序列中不同 token 的 embedding 作为负例,进行对比学习。同时,作者还设置了一个 memory bank 来存储量化模型中各 token 的 embedding,以提升计算 loss 和更新 embedding 的速度。
3.3 Module-dependent Dynamic Scaling
NUP 的任务是根据给定的句子生成其下一句,本文中使用了大规模对话数据集 Persona-Chat 做实验。如上表所示,尽管量化后的模型有较为明显的精度损失,但本文量化的模型得到了当前最高的准确率。
如下图所示,本文作者还比较了对比学习中的 loss 函数,实验表明,如果仅考虑模型蒸馏而不加入对比学习,虽然训练时间能够加快,内存消耗能够减小,但是模型表现也会变差。
作者还对比了对比学习时使用的 token 表征的选取,表明选取解码器最后一层输出作为 token 表征效果最好。可能原因是最后一个解码器块的隐藏状态包含来自所有先前层的丰富信息。
Conclusion
本文研究了生成式 PLMs 的量化。首先作者研究发现,量化生成式 PLMs 的困难主要是由于词嵌入同质化和权重分布差异化引起的。为了解决这两个问题,本文提出了 token 级的对比蒸馏方法以学习可区分的词嵌入,提出了模块级动态缩放方法以实现更精确的权重量化。本文量化得到的模型 QuanGPT 和 QuanBART 在语言模型,NUP 和摘要任务上都取得了较好的表现,全部优于现有模型压缩方法。
参考文献
[1] Matthieu Courbariaux, Yoshua Bengio, and Jean-Pierre David. 2015. Binaryconnect: Training deep neural networks with binary weights during propagations. In Advances in neural information processing systems, pages 3123–3131.
[2] Yoshua Bengio, Nicholas Léonard, and Aaron Courville. 2013. Estimating or propagating gradients through stochastic neurons for conditional computation. Technical Report arXiv:1308.3432
[3] Jungwook Choi, Zhuo Wang, Swagath Venkataramani, Pierce I-Jen Chuang, Vijayalakshmi Srinivasan, and Kailash Gopalakrishnan. 2018. Pact: Parameterized clipping activation for quantized neural networks. Preprint arXiv:1805.06085.
[4] Steven K Esser, Jeffrey L McKinstry, Deepika Bablani, Rathinakumar Appuswamy, and Dharmendra S. Modha. 2020. Learned step size quantization. In International Conference on Learning Representations.
[5] Wei Zhang, Lu Hou, Yichun Yin, Lifeng Shang, Xiao Chen, Xin Jiang, and Qun Liu. 2020. Ternarybert: Distillation-aware ultra-low bit bert. In Conference on Empirical Methods in Natural Language Processing
更多阅读
#投 稿 通 道#
让你的文字被更多人看到
如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。
总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。
PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析、科研心得或竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。
📝 稿件基本要求:
• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注
• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题
• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算
📬 投稿通道:
• 投稿邮箱:[email protected]
• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者
• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿
△长按添加PaperWeekly小编
🔍
现在,在「知乎」也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」订阅我们的专栏吧
微信扫码关注该文公众号作者