Word2Vec 揭秘:如何让计算机“理解“词语?

一、核心思想:从"上下文"猜词义

语言学家有个发现:"看一个词的朋友,就知道它的意思"

语境 推断
"猫坐在垫子上" "垫子"≈ 某种平面物体
"咖啡洒在垫子上" "垫子"≈ 可吸水的东西

Word2Vec 把这个直觉变成数学:让模型通过"猜词游戏"学习词语的向量表示


二、两种玩法:CBOW vs Skip-gram

就像做填空题和造句题,Word2Vec 提供两种训练模式:

模式 A:CBOW(完形填空)

任务:用周围的词,猜中间的词

复制代码
上下文:[the, cat, on, the]  →  预测中心词:sits

模式 B:Skip-gram(一词造多句)

任务:用中间的词,猜周围的词(更常用,效果更好)

复制代码
中心词:sits  →  预测上下文:the, cat, on, the

三、神经网络长什么样?

结构出奇地简单------只有三层

复制代码
输入层(One-hot)    隐藏层(投影)      输出层(Softmax)
   50000 维  ──→     300 维      ──→    50000 维
  (词表大小)      (嵌入维度)       (预测概率分布)
         ↑___________________________|
                  这两个权重矩阵
                  就是我们要的词向量

关键设计 :隐藏层没有激活函数 ,纯线性变换。输入→隐藏的权重矩阵 WWW 的第 iii 行,就是第 iii 个词的向量。


四、训练技巧:如何让大词表跑得动?

原始 Softmax 要遍历整个词表(比如 5 万个词),计算量爆炸。Word2Vec 用两招解决:

1. 负采样(Negative Sampling)⭐

思路:把多分类变成二分类

  • 正样本:真实的上下文词对(sits, cat)→ 标签 1
  • 负样本:随机采样几个词组成假样本(sits, apple)→ 标签 0

效果:每次只更新 1 个正样本 + 5-20 个负样本,速度提升 1000 倍。

2. 高频词降采样

"the"、"a" 这类词出现太频繁,信息量少还干扰训练。按概率丢弃:

P(wi)=1−tf(wi)P(w_i) = 1 - \sqrt{\frac{t}{f(w_i)}}P(wi)=1−f(wi)t

频率越高,被丢弃概率越大。


五、训练完成后,发生了什么?

神奇现象:向量空间里的"语义几何"

python 复制代码
# 经典例子
vector("国王") - vector("男人") + vector("女人") ≈ vector("女王")

# 其他例子
巴黎 - 法国 + 意大利 ≈ 罗马
跑步 - 跑 + 跳 ≈ 跳跃

原理 :Word2Vec 把语义关系编码成了向量的方向。"性别"对应某个固定方向的偏移,"首都-国家"对应另一个方向。

相似度计算

余弦相似度找近义词:

复制代码
cos(向量A, 向量B) = 1  →  语义完全相同
cos(向量A, 向量B) = 0  →  完全无关
cos(向量A, 向量B) = -1 →  语义相反

六、Word2Vec 的局限与进化

问题 原因 后继方案
一词一义 "bank"(银行/河岸)共享同一个向量 ELMo:上下文相关向量
局部窗口 只能看到附近 5-10 个词 BERT:Transformer 全局注意力
无句法结构 不懂"猫追狗"和"狗追猫"的区别 GPT/BERT:深层语义理解

七、一句话总结

Word2Vec 用浅层神经网络 玩"猜词游戏",把词语共现统计 压缩成低维向量 ,让语义关系变成可计算的空间几何------这是现代 NLP 的奠基之作。


相关推荐
love在水一方18 小时前
【Voxel-SLAM】Data Structures / 数据结构文档(二)
数据结构·人工智能·机器学习
ConardLi18 小时前
开源我的 GPT-Image2 生图 Skill,附大量玩法指南
前端·人工智能·后端
QYR_1118 小时前
2026卷绕式扣式电池产业洞察:智能制造如何重塑微型储能格局?
人工智能·市场调研
白熊18818 小时前
【大模型Agent】LangGraph 深度科普:为智能体而生的“有状态”编排框架
人工智能·langchain·agent·langgraph
数智工坊19 小时前
【SIoU Loss论文阅读】:引入角度感知的框回归损失,让检测收敛更快更准
论文阅读·人工智能·深度学习·机器学习·数据挖掘·回归·cnn
bloglin9999919 小时前
向量大模型升级可能改变向量空间(需要回归)
人工智能·数据挖掘·回归
AI技术增长19 小时前
Pytorch图像去噪实战(三):ResUNet图像去噪模型实战,解决UNet深层训练不稳定问题
人工智能·pytorch·深度学习
TDengine (老段)19 小时前
工业软件的未来:构建在工业数据底座之上的 AI Agent
大数据·数据库·人工智能·时序数据库·tdengine
aLTttY19 小时前
Spring Boot集成AI大模型实战:从0到1打造智能应用
人工智能·spring boot·后端
FlyIer55619 小时前
2026 个人网站建站软件实测
人工智能