GLM: General Language Model Pretraining with Autoregressive Blank Infilling
前言
论文:GLM: General Language Model Pretraining with Autoregressive Blank Infilling
Github:https://github.com/THUDM/GLM
一、原理
训练任务:三个
mask x3 & x5 x6, 掩盖部分使用mask替代的原句作为Part A的输入,打乱【x5,x6】【x3】的顺序。
position 1 为原来的位置信息;position 2 标识正文、两个部分的起始终止,保证片段的完整性
PartA 蓝色框,full attention
PartB 黄和绿色框,单向可见
打乱的目的是解决:生成的顺序不依赖前后关系
模型部分:
1、使用单个transformer结构,并进行改进
2、重新排序LN和残差的顺序
3、使用单层的linear作为token的预测输出
4、使用relu替代gelu
5、2d positional encoding
6、finetuning-PET
特定的任务有特定的prompt
T5预训练中和FT中使用PE的策略不一致。推理总是从左到右。
实验