🔍 从 Word2Vec 到 GPT:词向量的上下文进化史
在自然语言处理(NLP)的世界里,词向量(Word Embeddings)是最基础的构建块。它们不仅是"词语的数字化表示",更承载着语义和上下文理解能力。今天我们就来梳理一下 Word2Vec、ELMo、BERT、GPT 这些经典模型在 上下文建模能力 上的演进历程。
🧠 词向量上下文能力对比
模型 | 时代 | 向量类型 | 是否具备上下文感知 | 核心机制 | 示例:bank |
---|---|---|---|---|---|
Word2Vec | 2013 | 静态词向量 | ❌ 否 | Skip-gram / CBOW(预测上下文) | 无论是"river bank"还是"bank account",向量都相同。 |
GloVe | 2014 | 静态词向量 | ❌ 否 | 全局共现矩阵 + 词向量分解 | 与 Word2Vec 类似,只捕捉语义相似度,不看上下文。 |
ELMo | 2018 | 动态词向量 | ✅ 是 | 双向 LSTM,结合上下文生成词向量 | "bank" 在不同句子中会得到不同向量。 |
BERT | 2018 | 深度上下文向量 | ✅✅ 强 | 双向 Transformer(Masked LM) | 每个 token 的 embedding 依赖整个句子上下文。 |
GPT 系列 | 2018--今 | 深度上下文向量 | ✅✅ 强 | 单向 Transformer(自回归预测) | "bank"的向量依赖前文上下文(例如 "river")。 |
🔍 补充说明
-
静态词向量(Word2Vec, GloVe)
- 一个词只有一个固定 embedding,不论出现在什么语境中
- ✅ 优点:训练快,简单
- ❌ 缺点:语义模糊,无法区分多义词
-
动态词向量(ELMo, BERT, GPT)
- 每个词的 embedding 会根据上下文变化
- ✅ 优点:能理解多义词、捕捉语境
- ❌ 缺点:模型大,计算量高
🌱 一句话总结
🔸 Word2Vec 捕捉"词义"
🔸 ELMo 捕捉"句内语境"
🔸 BERT 捕捉"双向深度语境"
🔸 GPT 捕捉"前向生成语境"
⏳ 词向量演进时间线
scss
2013 ── Word2Vec (静态向量)
│ 捕捉词义相似性,但不区分上下文
2014 ── GloVe (静态向量)
│ 利用全局共现信息,提升语义表达
2018 ── ELMo (动态向量)
│ 双向 LSTM,上下文相关词向量,区分同词多义
2018 ── BERT (深度上下文向量)
│ 双向 Transformer,Masked LM,深度语境理解
2018--至今 ── GPT 系列 (深度上下文向量)
│ 单向 Transformer,自回归预测,前向生成语境
🔑 核心演进逻辑
- 静态 → 动态:解决多义词问题
- 浅层 → 深层:提升语境理解能力
- 双向 → 单向/生成:BERT 强调理解,GPT 强调生成
🚀 为什么理解上下文建模很重要?
在实际应用中,理解上下文能力直接决定了 NLP 模型的表现:
- 问答系统:准确理解问题语境,给出精准答案
- 机器翻译:捕捉句子整体语义,避免字面翻译
- 文本生成:GPT 系列通过前文生成合理、连贯的内容
📌 总结
从 Word2Vec 的静态词向量到 GPT 的深度上下文向量,词向量的演进体现了 NLP 模型从"看词义"到"懂语境"的飞跃。
如果你正在学习 NLP 或准备做文本处理项目,理解这些差异能帮你更好地选择模型与策略。
💡 延伸阅读 / 推荐
- ELMo 原论文:Deep Contextualized Word Representations
- BERT 原论文:BERT: Pre-training of Deep Bidirectional Transformers
- GPT 系列博客与文档:OpenAI GPT