pretraining of three types of architectures
pretraining encoders
BERT模型
1. 基本流程
步骤:随机遮盖输入序列中 15% 的 (sub)word tokens,要求模型预测这些被遮盖的词。
遮盖策略(关键创新):
概率 | 操作 | 示例(原句:went to store ) |
---|---|---|
80% | 替换为 [MASK] |
→ went to [MASK] |
10% | 替换为随机词 | → pizza to store (随机替换"went") |
10% | 保留原词 | → went to store (但仍需预测"store") |
2. 为什么这样设计?
策略 | 目的 | 解决的核心问题 |
---|---|---|
80% [MASK] | 强制模型学习从上下文重建被删除的信息 | 核心训练任务:建立双向上下文理解能力(如 [MASK] 的位置应预测 "store" ) |
10% 随机替换 | 引入噪声,防止模型过度依赖 [MASK] 标记 |
避免模型认为"被遮盖的位置才需预测"(微调时没有 [MASK] !)→ 提升鲁棒性 |
10% 保留原词 | 迫使模型对所有词建立高质量表示(即使未被遮盖) | 防止模型"偷懒":仅学习预测被遮盖词,而忽视未被遮盖词(如 "to" 也需要强表征)→ 避免表征退化 |
✨ 关键洞察:
预训练与微调的一致性
在微调阶段(如文本分类),模型处理的是完整无掩码的文本。若训练时只接触
[MASK]
,模型会对[MASK]
产生依赖,遇到真实文本时性能暴跌。混合策略迫使模型:
- 学会利用所有上下文(无论是否被掩码)
- 适应非对称噪声(某些词被随机替换)