更改

添加2,640字节 、 2025年6月8日 (日) 15:34
第307行: 第307行:     
===== 技术原理: =====
 
===== 技术原理: =====
 +
 +
====== ·基础架构:Transformer Encoder: ======
 +
BERT 构建在 '''Transformer 架构'''之上,具体使用了 '''多层 Transformer 编码器堆叠'''(通常 BERT-base 为 12 层,BERT-large 为 24 层)。Transformer 由 Vaswani 等人在 2017 年提出,其最大特点是 '''完全基于注意力机制(Self-Attention)''',无需使用 RNN 或 CNN,可并行处理任意长度的输入。
 +
 +
每层包含:
 +
 +
多头自注意力机制(Multi-Head Self-Attention);
 +
 +
前馈神经网络(Feed-Forward Layer);
 +
 +
残差连接 + 层归一化。
 +
 +
Transformer 中每个词的表示会综合考虑所有其他词对它的影响,因此能捕捉复杂的依赖结构。
 +
 +
====== ·输入方式表示: ======
 +
BERT 的输入不只是单词序列,而是'''词 + 位置 + 句子类型'''三重嵌入之和:Input Embedding = Token Embedding + Position Embedding + Segment Embedding
 +
 +
例如用于句子对任务(如问答)时,Segment A 表示第一句话,Segment B 表示第二句话。输入序列结构为:[CLS] 句子A [SEP] 句子B [SEP],其中[CLS] 用于分类任务的特殊标记;[SEP] 是句子分隔符。
 +
 +
====== ·预训练阶段: ======
 +
BERT 采用两种 '''自监督学习任务'''在大规模语料(如 Wikipedia 和 BooksCorpus)上进行训练:
 +
 +
(1)Masked Language Model(MLM):随机遮蔽输入序列中约 15% 的词,模型需预测被 []MASK 替换的词是什么,本质上是一个多分类任务:
 +
 +
<math>L_{\text{MLM}} = - \sum_{i \in M} \log P(w_i \mid x_{\text{masked}})
 +
</math>
 +
 +
(2)Next Sentence Prediction(NSP):输入两个句子 A 和 B,任务是判断 B 是否是 A 的真实下一句,是一个二分类任务:
 +
 +
<math>L_{\text{NSP}} = -\log P(\text{IsNext} \mid A, B)
 +
 +
</math>
 +
 +
====== ·微调阶段: ======
 +
在预训练后,BERT 可被快速迁移到下游任务,如:文本分类(情感分析)、序列标注(命名实体识别)、问答系统,只需在最后加上一层简单的任务特定结构,并用少量数据进行微调即可。
    
===== 总结与对比: =====
 
===== 总结与对比: =====
 +
深度双向建模:BERT 同时利用左上下文与右上下文,解决传统语言模型单向建模的局限;
 +
 +
动态词表示:同一个词在不同句子中的表示不同,能处理多义词与上下文依赖;
 +
 +
Transformer 架构支持全局依赖建模,相比 RNN 更并行高效;
 +
 +
统一多任务结构:BERT 能处理分类、标注、问答等多类任务,具备高度迁移能力;
 +
 +
与 Word2Vec/GloVe 对比:Word2Vec/GloVe 生成的是固定词向量、语境无关,BERT 输出的是上下文相关的词表示,能捕捉复杂句法语义关系;
    
==== 动态词嵌入(如 ELMo) ====
 
==== 动态词嵌入(如 ELMo) ====
130

个编辑