视频封面

视频元信息

  • 所属课程:吴恩达深度学习专项课程 · 序列模型 · 自然语言处理与词嵌入
  • 本讲主题:GloVe 词向量(Global Vectors for Word Representation)
  • 授课人:吴恩达(Andrew Ng)
  • 前置内容:Word2Vec(Skip-gram、CBOW)、负采样、词嵌入的类比推理

内容摘要(TL;DR)

本讲介绍 GloVe 词向量算法:先统计词共现计数矩阵 X_ij,再通过最小化加权最小二乘目标(θ_iᵀe_j 拟合 log X_ij)学习词向量。相比 Word2Vec,GloVe 目标更简洁,θ 与 e 完全对称可平均。最后强调词向量各维度不可解释,但线性变换下类比推理仍成立。


一、GloVe 算法简介 [00:00]

  • GloVe 是 NLP 社区中具有一定影响力的词嵌入算法,由 Jeffrey Pennington、Richard Socher、Chris Manning 提出。
  • GloVe = Global Vectors for Word Representation(全局词向量表示)。
  • 使用频率不如 Word2Vec 或 Skip-gram 模型高,但因其简洁性而拥有一批拥趸。

理解:Word2Vec 通过局部窗口采样训练,而 GloVe 直接利用全局共现统计量,是"基于计数"与"基于预测"两大流派融合的产物。


二、共现计数矩阵 X_ij [00:30]

2.1 核心定义

  • 之前的算法是采样词对(上下文词 c 与目标词 t),挑选语料中相邻出现的两个词。
  • GloVe 的第一步是把这个过程显式化:令 X_ij 表示词 i 出现在词 j 上下文中的次数。
  • 这里 i 扮演目标词 t 的角色,j 扮演上下文词 c 的角色,因此可把 X_ij 视为 X_tc。

2.2 对称性讨论

  • 若上下文定义为"两词在 ±10 词窗口内共现",则关系对称,X_ij = X_ji。
  • 若上下文定义为"紧邻目标词之前的那个词",则 X_ij 与 X_ji 可能不对称。
  • GloVe 算法中通常采用对称定义(±10 词窗口),因为这样便于后续推导。

易错点:X_ij 是词对共现的原始计数,不是概率,也不是归一化后的值。它捕捉的是"词 i 与词 j 一起出现的频繁程度"。


三、GloVe 的目标函数 [02:25]

3.1 优化目标形式

GloVe 要最小化如下目标:

Σ_i Σ_j f(X_ij) · (θ_iᵀ e_j − log X_ij)²
  • θ_iᵀ e_j:词 i 与词 j 的向量内积,用于衡量两词的关联度。
  • log X_ij:词对共现次数的对数,作为"真实关联度"的代理。
  • 目标是让内积成为共现次数的良好预测器。

3.2 参数求解

  • 使用梯度下降求解参数 θ 和 e。
  • 双重求和范围:i 从 1 到 10,000,j 从 1 到 10,000(假设词表大小为 10,000)。

推导:为什么用 log X_ij 而不是 X_ij?因为词频分布遵循 Zipf 定律,共现计数跨度极大,取对数可以压缩动态范围,使内积更容易拟合。


四、加权函数 f(X_ij) 的作用 [03:47]

4.1 处理 X_ij = 0 的情况

  • 问题:若 X_ij = 0,则 log 0 无定义(负无穷)。
  • 解决方案:约定 0 log 0 = 0,即不对比 X_ij = 0 的词对求和。
  • 因此,求和仅针对在语料中至少共现过一次的词对。

4.2 平衡高频词与低频词

  • 英语中有些词(如 "this"、"is"、"of"、"a")出现极其频繁——有时被称为停用词(stop words)。
  • 有些词(如 "durian" 榴莲)虽然也出现在语料中,但频率远低于常见词。
  • 加权函数 f(X_ij) 的作用:
    • 给高频词(this、is、of)适当权重,但不能过大;
    • 给低频词(durian)足够的计算权重,不能过小。

易错点:f(X_ij) 的设计需满足两个条件——不能给高频词过多权重,也不能给低频词过少权重。具体形式可参考 GloVe 原论文。

思考:这实际上是一种"频率归一化"策略,类似于 TF-IDF 中抑制高频词权重的思路,但 GloVe 用连续函数 f 而非硬性截断。


五、θ 与 e 的对称性 [05:52]

5.1 对称性的数学含义

  • 在 GloVe 的目标函数中,θ_i 和 e_j 扮演完全对称的角色。
  • 交换 θ 和 e,优化目标不变。
  • 这与之前学过的 Word2Vec 等模型不同——那些模型中 θ 和 e 角色不同,不能简单平均。

5.2 训练与最终嵌入

  • 训练方式:θ 和 e 都均匀随机初始化,然后运行梯度下降最小化目标函数。
  • 最终词向量:对每个词 w,取平均: e_final(w) = (e_w + θ_w) / 2
  • 因为 θ 和 e 对称,平均后得到更稳定的嵌入。

理解:这种对称性设计让 GloVe 的优化更简单,也避免了"哪个矩阵才是最终词向量"的歧义。


六、为什么这么简单的目标函数有效? [07:01]

  • 困惑点:目标函数看起来过于简单——只是最小化一个平方差,怎么能学到有意义的词嵌入?
  • 答案:这确实有效。
  • 历史背景:
    • 发明者是在更复杂的算法基础上逐步简化而来的;
    • 早期有神经语言模型(Neural Language Model);
    • 后来出现 Word2Vec 的 Skip-gram 模型;
    • GloVe 在此基础上进一步简化了所有早期算法。

思考:GloVe 的简洁性正是其魅力所在——它把"预测"和"计数"两种思路统一到一个优雅的最小二乘框架中。


七、词向量各维度不可解释性 [07:47]

7.1 特征化视角的局限

  • 最初学习词向量的动机是"特征化"视角:
    • 第一维可能编码性别;
    • 第二维可能编码"是否皇室";
    • 第三维可能编码年龄;
    • 第四维可能编码"是否食物"等。
  • 但实际学到的嵌入无法保证各维度可解释。

7.2 线性变换的证明

  • 假设存在某个空间,第一轴是性别,第二轴是皇室。
  • 但学习算法可能选择完全不同的轴作为第一维、第二维,甚至两轴不正交。
  • 数学证明:若存在可逆矩阵 A,则: θ_iᵀ e_j = θ_iᵀ Aᵀ A⁻ᵀ e_j = (Aθ_i)ᵀ (A⁻ᵀ e_j) 中间项 AᵀA⁻ᵀ 抵消,结果不变。
  • 因此,词向量的轴可以任意线性变换而不影响内积。

考点:词嵌入的维度不可解释性——不要试图给单个维度赋予人类可理解的含义(如"第一维=性别")。第一维可能是性别、皇室、年龄、食物、大小等多种特征的组合。

7.3 类比推理仍然有效

  • 尽管存在任意线性变换,平行四边形类比推理仍然成立。
  • 例如:king − man + woman ≈ queen 的类比关系不受影响。

理解:这说明词向量空间中的"相对关系"(方向与距离)比"绝对坐标"更有意义。类比推理依赖的是向量差,而向量差在线性变换下保持结构。


八、总结与过渡 [10:48]

  • 本讲完成了词嵌入学习算法的介绍:
    • Word2Vec(Skip-gram、CBOW)
    • 负采样
    • GloVe
  • 本周编程练习中将进一步实践这些算法。
  • 下一讲预告:如何使用这些算法进行情感分类(Sentiment Classification)。

关键标签 / 关键词

GloVe #词向量 #词嵌入 #Word2Vec #共现矩阵 #自然语言处理 #NLP #吴恩达 #深度学习 #序列模型 #类比推理 #情感分类 #梯度下降 #加权最小二乘 #全局向量


补充:核心概念速查

概念 含义
X_ij 词 i 出现在词 j 上下文中的次数(共现计数)
θ_i, e_j 两组词向量参数,对称角色
θ_iᵀ e_j 词 i 与词 j 的内积,衡量关联度
log X_ij 共现次数的对数,作为拟合目标
f(X_ij) 加权函数,平衡高频/低频词,处理 X_ij=0
e_final 最终词向量 = (e_w + θ_w) / 2
0 log 0 = 0 约定,避免 log 0 无定义

拓展:GloVe 与 Word2Vec 的本质区别——Word2Vec 是"预测式"(用上下文预测目标词),GloVe 是"计数式"(直接拟合共现统计量)。两者在实践中效果相近,GloVe 训练更快,Word2Vec 更灵活。


生成时间:2026-10-11 00:23:34 生成平台:VideoNote www.xygy.top