目录
[1、CBOW(Continuous Bag of Words)](#1、CBOW(Continuous Bag of Words))
[十四、词嵌入 vs 上下文嵌入](#十四、词嵌入 vs 上下文嵌入)
一、前言
在Natural Language Processing中,一个核心问题始终存在:
如何让机器理解"词语的语义"
早期方法把词当作离散符号(one-hot),但这种方式存在严重问题:
词与词之间"没有任何语义关系"
为了解决这个问题,词嵌入(Word Embedding)技术被提出。
二、什么是词嵌入
(一)基本定义
词嵌入是指:
将词语映射到一个低维、稠密的向量空间
(二)一句话理解
用"坐标"表示词语的语义
(三)示例
"国王" → [0.25, -1.3, 0.8, ...]
"皇后" → [0.22, -1.2, 0.85, ...]
三、词嵌入的核心思想
(一)分布式假设
一个词的意义由其上下文决定
(二)经典观点
You shall know a word by the company it keeps
(三)核心目标
语义相近的词在向量空间中距离更近
四、词嵌入与One-hot对比
(一)One-hot表示
"猫" = [0,0,1,0,0,...]
问题
-
高维稀疏
-
无语义关系
(二)词嵌入表示
"猫" = [0.12, -0.8, 0.3, ...]
优点
-
低维稠密
-
可计算语义
五、词嵌入的几何意义
(一)向量空间模型
词 → 向量 → 空间坐标
(二)语义距离
\text{similarity}(a,b)=\cos(\theta)=\frac{a\cdot b}{|a||b|}
(三)意义
语义相似 ≈ 向量夹角小
六、经典词嵌入方法
七、Word2Vec模型
Word2Vec 是词嵌入的里程碑方法。
(一)核心思想
通过预测上下文学习词向量
(二)两种训练方式
1、CBOW(Continuous Bag of Words)
上下文 → 预测中心词
2、Skip-gram
中心词 → 预测上下文
(三)训练目标
最大化上下文预测概率
八、GloVe模型
GloVe
(一)核心思想
基于全局词共现矩阵学习词向量
(二)特点
-
利用统计信息
-
全局语义建模
(三)优势
兼顾局部与全局语义
九、FastText模型
FastText
(一)核心思想
词 = 子词(n-gram)组合
(二)优势
-
解决OOV问题
-
支持形态变化
(三)示例
playing → play + ing
十、词嵌入的训练方式
(一)监督信号来自文本
无需人工标注
(二)训练方式
- 自监督学习
(三)目标函数
最大化上下文预测能力
十一、词嵌入在NLP中的作用
(一)输入表示
token → embedding → model
(二)模型基础
-
RNN
-
CNN
-
Transformer
(三)公式表达
x_i = Embedding(w_i)
十二、词嵌入的语义能力
(一)语义相似
- 猫 ≈ 狗
(二)语义关系
king - man + woman ≈ queen
(三)线性结构
语义关系 ≈ 向量运算
十三、词嵌入的局限性
(一)静态表示
一个词只有一个向量
(二)多义词问题
- bank(银行 / 河岸)
(三)无法动态变化
十四、词嵌入 vs 上下文嵌入
(一)词嵌入
-
Word2Vec / GloVe
-
静态向量
(二)上下文嵌入
BERT
同一个词在不同句子中向量不同
十五、词嵌入的发展趋势
(一)从静态到动态
- Word2Vec → BERT
(二)从词到子词
- Subword embedding
(三)从浅层到深层语义
- Transformer表示
十六、词嵌入应用
(一)搜索引擎
- 语义检索
(二)推荐系统
- 用户兴趣建模
(三)文本分类
- 情感分析
(四)问答系统
- 语义匹配
十七、词嵌入结构总结
Text
↓
Tokenization
↓
Embedding Layer
↓
Vector Representation
↓
Neural Network
十八、总结
词嵌入是自然语言处理中的基础技术,它将离散的语言符号转化为连续的向量空间,使机器能够理解语义关系,并为后续深度学习模型提供统一输入表示。
本文系统讲解了:
1、词嵌入基本概念
2、与One-hot对比
3、向量空间语义
4、Word2Vec模型
5、GloVe模型
6、FastText模型
7、训练方式
8、语义能力
9、局限性
10、上下文嵌入发展
11、应用场景
可以将词嵌入理解为:
"将语言从符号世界映射到几何空间,使语义关系变得可计算。"
掌握词嵌入,就掌握了语言进入神经网络世界的第一层表示方式。