预训练语言模型之:Encoder-only PLM
1. 基础架构:Transformer Encoder
所有模型的基石都是Transformer Encoder结构,其核心是自注意力机制:
Attention ( Q , K , V ) = softmax ( Q K T d k ) V \text{Attention}(Q,K,V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V Attention(Q,K,V)=softmax(dkQKT)V
其中 Q , K , V Q,K,V Q,K,V分别表示查询、键和值向量, d k d_k dk为维度缩放因子。这种设计使模型能动态捕捉任意位置间的语义依赖。
2. BERT:双向预训练的开创者
2018年问世的BERT首次实现真正意义上的深度双向预训练,突破性创新包括:
掩码语言建模(MLM)
随机掩盖输入序列中15%的token,要求模型基于上下文预测被掩盖词:
L MLM = − ∑ i ∈ M log P ( x i ∣ x \ M ) \mathcal{L}_{\text{MLM}} = -\sum_{i \in M} \log P(x_i | x_{\backslash M}) LMLM=−i∈M∑logP(xi∣x\M)
其中 M M M为掩盖位置集合。这种设计迫使模型学习全局上下文表征。
下一句预测(NSP)
输入两个句子A和B,预测B是否为A的后续句子:
L NSP = − log P ( y ∣ segment A , segment B ) \mathcal{L}_{\text{NSP}} = -\log P(y | \text{segment}_A, \text{segment}_B) LNSP=−logP(y∣segmentA,segmentB)
该任务使模型理解句子间逻辑关系。
输入表示创新
融合词嵌入、位置嵌入和段落嵌入:
Input = TokenEmbed + PositionEmbed + SegmentEmbed \text{Input} = \text{TokenEmbed} + \text{PositionEmbed} + \text{SegmentEmbed} Input=TokenEmbed+PositionEmbed+SegmentEmbed
这种三维编码能有效区分句子对任务。
BERT-base(110M参数)在GLUE基准上提升7.6%,证明双向预训练的优越性。
3. RoBERTa:BERT的极限优化
2019年提出的RoBERTa通过训练策略革新释放BERT架构潜力:
动态掩码机制
摒弃静态掩码,改为每个epoch动态生成掩码模式,提升数据利用率。
取消NSP任务
实验证明NSP会引入噪声,改为纯MLM训练后效果提升:
L = L MLM \mathcal{L} = \mathcal{L}_{\text{MLM}} L=LMLM
超参调优
- 批量大小从256增至8K
- 训练数据从16GB扩至160GB
- 序列长度从512扩展至更大
字节对编码优化
采用更细粒度的BPE分词,词汇表扩充至50K词符。
在SQuAD 2.0上,RoBERTa-large的F1值达89.8%,较BERT提升3.2%。
4. ALBERT:轻量化架构大师
ALBERT(2019)通过参数压缩技术解决BERT的内存瓶颈:
嵌入分解(Factorized Embedding)
将词嵌入矩阵分解为两个低秩矩阵:
V × H → V × E + E × H V \times H \rightarrow V \times E + E \times H V×H→V×E+E×H
其中 E ≪ H E \ll H E≪H(通常 E = 128 , H = 768 E=128, H=768 E=128,H=768),参数量减少80%。
跨层参数共享
所有Transformer层共享参数,使层数增加时参数不显著增长:
θ layer i = θ layer j , ∀ i , j \theta_{\text{layer}_i} = \theta_{\text{layer}_j}, \quad \forall i,j θlayeri=θlayerj,∀i,j
句子顺序预测(SOP)
替代NSP的新任务:判断两个连续句子是否被故意调换顺序:
L SOP = − log P ( y ∣ 顺序正确性 ) \mathcal{L}_{\text{SOP}} = -\log P(y|\text{顺序正确性}) LSOP=−logP(y∣顺序正确性)
该任务更关注句间连贯性而非文档差异。
ALBERT-base仅12M参数,却在GLUE基准达到BERT-base 90%性能,推理速度提升1.7倍。
5. 核心对比与技术演进
维度 | BERT | RoBERTa | ALBERT |
---|---|---|---|
预训练任务 | MLM + NSP | MLM(动态) | MLM + SOP |
参数效率 | 基准 | 相近 | 提升10倍 |
关键创新 | 双向建模 | 训练策略优化 | 参数共享 |
典型配置 | Base: 110M | Large: 355M | Base: 12M |
训练数据量 | 16GB | 160GB+ | 16GB |
6. 应用场景与影响
- BERT:通用NLP任务基线,适合快速部署
- RoBERTa:计算资源充足时的高精度选择
- ALBERT:移动端/嵌入式设备的首选方案
这些模型催生了工业级应用变革:
- 搜索引擎理解长尾查询意图
- 智能客服的上下文对话管理
- 金融文本的风险实体识别
Encoder-only架构持续证明:通过更高效的参数利用和更精细的训练策略,语言模型能在性能与效率间取得突破性平衡。