预训练技术
预训练通过在大规模无标注文本上进行自监督学习,使模型获得强大的语言理解能力,是现代NLP的基石。
01掩码语言模型
掩码语言模型(Masked Language Model, MLM)通过预测被掩码的词来学习语言表示,是BERT等模型的核心预训练任务。
MLM原理
MLM将输入文本中一定比例的词替换为特殊符号 [MASK],然后让模型预测被掩码的词。
训练示例
原句:"The cat sat on the mat"
掩码后:"The cat [MASK] on the mat"
目标:预测 [MASK] = "sat"
BERT的MLM
掩码策略
BERT使用15%的词进行掩码,其中:
- 80%替换为 [MASK]
- 10%替换为随机词
- 10%保持不变
这样可以让模型学习处理各种情况。
双向编码
MLM允许模型同时看到上下文(左侧和右侧), 因此称为"双向"编码器。
代表模型
BERT、RoBERTa、ALBERT、ELECTRA等。 适合理解类任务(分类、问答、命名实体识别)。
NSP任务
BERT还使用了下一句预测(Next Sentence Prediction)任务, 帮助模型理解句子间关系。后来发现NSP任务效果有限, RoBERTa等模型去掉了NSP,只使用MLM。
02自回归预训练
自回归(Autoregressive)预训练通过预测下一个词来学习语言表示,是GPT系列模型的核心。
自回归原理
自回归模型从左到右逐词生成,每个词的预测只依赖前面的词(因果掩码)。
训练目标
L = - Σ log P(wt | w1, ..., wt-1)
最大化每个词在给定前文的条件概率的对数似然。
GPT系列
GPT-1 (2018)
首次提出"预训练+微调"范式,使用Transformer解码器。
开创了大语言模型的先河。
GPT-2 (2019)
放大模型规模(最大15亿参数),展示在海量WebText数据上的能力。
提出"语言模型是大模型多任务的通用解决方案"的观点。
GPT-3 (2020)
1750亿参数,展示了强大的上下文学习(In-Context Learning)能力。
无需梯度更新,仅通过prompt即可完成任务。
GPT-4 (2023)
多模态能力,支持图像输入。
在各种专业和学术基准上达到人类水平。
自回归 vs MLM
- 自回归:单向、生成式、适合文本生成
- MLM:双向、理解式、适合理解任务
- 最新趋势:混合两者,如UL2、GLM等
03对比学习
对比学习通过拉近相似样本、推远不相似样本来学习表示,是自监督学习的重要范式。
对比学习原理
对比学习的核心是学习一个编码器,使得相似的样本在向量空间中距离近,不相似的样本距离远。
对比损失 (InfoNCE)
L = - log exp(sim(q, k+)/Σ exp(sim(q, k)))
其中 q 是查询,k+ 是正样本(相似),k 是负样本(不相似)。
目标是让 q 与 k+ 的相似度高于 q 与任何 k 的相似度。
应用场景
SimCSE
使用Dropout作为数据增强,在BERT之上学习句子表示。 简单的设计但效果很好。
SimCLR
视觉领域的对比学习代表。
通过裁剪、翻转、颜色变换等增强图片。
CLIP
图文对比学习,将图像和文本编码到同一空间。
支持零样本图像分类和图文检索。
Sentence Embedding优化
对比学习被广泛用于改进句嵌入质量。
通过构造正负样本对,学习更好的语义表示。
对比学习的关键
- 数据增强:构造多样化的正负样本
- 负样本选择:困难负样本可以提升效果
- 温度系数:控制分布锐度
- 大批量训练:更多负样本通常更好