GLM-130B-一个开放的双语通用预训练模型-论文精读

GLM-130B是一个1300亿参数的双语预训练模型,采用GLM架构,利用自回归填空和旋转位置编码(RoPE)增强双向注意力。论文重点介绍了模型的训练策略,包括使用DeepNorm归一化和FP16混合精度训练,以及在处理梯度爆炸和训练稳定性方面的改进。模型在中文和英文的多项任务中表现出高精度,并支持高效的推理和量化。

本文为作为类ChatGPT的模型ChatGLM的前期基础论文2《AN OPEN BILINGUAL PRE-TRAINED MODEL》的精读笔记,基础论文1的精读笔记请见《GLM论文精读-自回归填空的通用语言模型》。希望对大家有帮助,欢迎讨论交流。GLM-130B,主要思想概述:一个双语(英文和中文)的基于GLM的双向稠密模型。并没有使用GPT风格的架构,而是采用通用语言模型(GLM)算法(Du et al.,2022)来利用其双向注意力优势和自回归空白填充目标,模型参数为1300亿,语料约训练了4000亿个文本标记,在语义理解和文本生成任务上性能强大。

论文地址: https://arxiv.org/abs/2210.02414

论文代码: GitHub - THUDM/GLM-130B: GLM-130B: An Open Bilingual Pre-Trained Model (ICLR 2023)

官方博客: GLM-130B:开源的双语预训练模型 | GLM-130B

学习完后的最大感受是这是一个非常扎实的工作,论文的附录里把相关架构的选择思考、数据的构成乃至训练的log和主要失败的实验都记录公开了,不愧是T大!

目录

论文架构概述

论文的主要贡献包括:

架构

训练目标

位置编码

DeepNorm 归一化,使用DeepNet的Post-LN。

FFN改成GLU

训练

训练的难题

浮点数格式:FP16混合精度

嵌入层:梯度缩减

训练稳定性提升与注意力计算选择FP32 softmax

训练数据集

训练成本估算

超参数配置

​编辑 

工程实现与优化

并行策略:高效训练千亿模型

其他优化-算子融合

其他优化-流水线平衡

跨平台兼容,swDeepSpeed训练库

GLM模型量化

效果-优势

参考与致谢:

论文架构概述

  • 论文的主要贡献包括:

    • 1)架构选择

      • 通用语言模型GLM

      • 组件改进:旋转位置编码、DeepNorm、GeGLU

    • 2)工程实现

      • 并行策略:数据、张量、流水线3D并行

      • 多平台高效适配

    • 3)训练策略改进

      • 梯度爆炸的问题,采用了嵌入层梯度缩减策略

      • 解决注意力数值溢出问题,采用了FP32的softmax计算策略,训练稳定性有提升

  • GLM-130B的代码: 目前只开源了evaluate部分代码和checkpoint,并没有直接开源train的代码,基于研究目的可以申请获得。

架构

  • 训练目标

    • 自监督的自回归文本填空(95%tokens)。GLM利用自回归文本填空作为其主要的预训练目标。它掩盖了随机的连续跨度(例如,下面的例子中的 "complete unknown"),并对其进行自回归预测。上下文之间的注意力(例如,"like a [MASK], like a rolling stone")是双向的。相反,被掩盖的标记之间的注意力,和从上下文到被掩盖的标识符的注意力是自回归掩码的。

    • (注: glm的注意力双向和单向的介绍,刘潇的视频大概在14min左右)

      • 在GLM-130B的实现中,有两种不同的MASK标识符,表示两个不同的目的(To support both understanding and generation, it mixes two corruption objectives, each indicated by a special mask token):

        • [MASK]根据泊松分布 (λ=3)对输入中标识符进行短跨度的采样,主要服务对文本的理解能力目标;([MASK]: short blanks in sentences whose lengths add up to a certain portion of the input.)

        • [gMASK]掩盖一个长的跨度,从其位置到整个文本的结束,主要服务对文本的生成目标能力目标。 ([gMASK]: random-length long blanks at the end of sentences with prefix contexts provided) 

    • 多任务学习预训练(5%tokens)。T5(Raffel et al.,2020)和ExT5(Aribandi et al.,2022)表明,预训练中的多任务学习比微调更有帮助,因此论文建议在GLM-130B的预训练中包括各种指令提示数据集,包括语言理解、生成和信息抽取。

从概念上讲,与GPT风格的模型相比,具有双向注意力的填空目标能够更有效地理解上下文:当使用[MASK]时,GLM-130B表现为BERT(Devlin et al.,2019)和T5(Raffel et al.,2020);当使用[gMASK]时,GLM-130B的行为与Pre

评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值