Skip to main content
QUICK REVIEW

[论文解读] CPM-2: Large-scale Cost-effective Pre-trained Language Models

Zhengyan Zhang, Yuxian Gu|arXiv (Cornell University)|Jun 20, 2021
Natural Language Processing Techniques被引用 15
一句话总结

CPM-2 为大规模预训练语言模型提出了一种成本效益高的流水线,利用知识继承加速预训练,通过提示调优减少微调存储需求,并采用 InfMoE——一种动态卸载推理工具包——实现 MoE 模型在单张 GPU 上的高效推理。该框架支持一个 110 亿参数的双语模型和一个 1980 亿参数的 MoE 版本,其在通用语言理解任务上的表现优于 mT5,同时大幅降低了计算和存储成本。

ABSTRACT

In recent years, the size of pre-trained language models (PLMs) has grown by leaps and bounds. However, efficiency issues of these large-scale PLMs limit their utilization in real-world scenarios. We present a suite of cost-effective techniques for the use of PLMs to deal with the efficiency issues of pre-training, fine-tuning, and inference. (1) We introduce knowledge inheritance to accelerate the pre-training process by exploiting existing PLMs instead of training models from scratch. (2) We explore the best practice of prompt tuning with large-scale PLMs. Compared with conventional fine-tuning, prompt tuning significantly reduces the number of task-specific parameters. (3) We implement a new inference toolkit, namely InfMoE, for using large-scale PLMs with limited computational resources. Based on our cost-effective pipeline, we pre-train two models: an encoder-decoder bilingual model with 11 billion parameters (CPM-2) and its corresponding MoE version with 198 billion parameters. In our experiments, we compare CPM-2 with mT5 on downstream tasks. Experimental results show that CPM-2 has excellent general language intelligence. Moreover, we validate the efficiency of InfMoE when conducting inference of large-scale models having tens of billions of parameters on a single GPU. All source code and model parameters are available at https://github.com/TsinghuaAI/CPM.

研究动机与目标

  • 解决训练和部署大规模预训练语言模型(PLMs)所伴随的高计算、存储和推理成本问题。
  • 通过知识继承复用现有 PLMs 的知识,在预训练过程中实现加速。
  • 通过用提示调优替代传统微调,将微调存储成本降低至模型参数量的 0.01% 以下。
  • 通过新型动态卸载框架 InfMoE,实现在有限硬件条件下对大规模 MoE 模型的高效推理。
  • 开发两个高性能、低成本的 PLM:CPM-2(110 亿参数)和 CPM-2-MoE(1980 亿参数),用于中英文双语任务。

提出的方法

  • 在预训练过程中应用知识继承,通过使用先前训练好的 PLM 的权重初始化新模型,将过程划分为三个阶段:中文预训练、双语预训练和 MoE 预训练。
  • 采用提示调优替代完整微调,仅更新可学习的提示嵌入,将特定任务的参数量减少至全模型参数量的 0.01% 以下。
  • InfMoE 是一种高性能、内存高效的推理框架,通过动态调度实现参数移动与计算的重叠,支持在单张 GPU 上推理参数量达数百亿的模型。
  • 模型架构为混合编码器-解码器 Transformer,采用针对跨度预测设计的掩码语言建模目标,其中跨度被替换为特殊标记,由解码器进行预测。
  • MoE 变体使用门控机制将 token 路由至稀疏专家,评估中观察到专家使用均衡,支持高效扩展。
  • 通过基于发音和字形的分词方法增强分词效果,在中文 NLP 任务中表现出比基于字符的分词更高的鲁棒性和性能。

实验结果

研究问题

  • RQ1通过复用现有模型,知识继承是否能显著降低大规模 PLM 预训练的时间和计算成本?
  • RQ2与完整微调相比,提示调优在保持或提升下游性能的同时,是否能有效降低存储成本?
  • RQ3像 InfMoE 这类动态卸载推理框架,是否能实现对参数量达数百亿的大型 MoE 模型在单张 GPU 上的高效推理?
  • RQ4在大规模 PLM 中,提示的最佳放置位置和结构应如何设计,以在下游任务中实现最佳性能?
  • RQ5非欧几里得架构(如双曲 Transformer)在参数更少的情况下,是否能显著提升效率和性能?

主要发现

  • CPM-2 在通用语言智能方面达到最先进水平,在下游任务的七项具体语言能力上表现优异,超越 mT5。
  • 通过优化提示位置并结合混合提示-微调策略,提示调优性能优于单独使用任一方法。
  • InfMoE 实现了 CPM-2-MoE(1980 亿参数)在单张 GPU 上的高效推理,计算时间与参数移动重叠,显著降低延迟。
  • 知识继承通过从已有 PLM 初始化,减少了预训练时间和成本,通过在中文、双语和 MoE 数据上的分阶段预训练实现训练加速。
  • 基于发音和字形的分词方法在中文 NLP 任务中,相比基于字符的分词,表现出更高的鲁棒性和性能。
  • 双曲 Transformer 框架在参数量仅为欧几里得 Transformer 一半的情况下,实现了相当的性能,表明未来 PLM 架构具备更高的效率潜力。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。