Word2Vec:核心思想

一、 核心思想:分布式表示假设(Distributional Hypothesis)

要理解这个假设,得先搞懂它解决了什么问题 ------在 Word2Vec 出现前,NLP 里词的表示是 One-Hot Encoding(独热编码),这个方法有两个致命缺陷:

  1. 维度爆炸:如果词表有 10 万个词,每个词就是一个 10 万维的向量,只有对应位置是 1,其余全是 0。这种向量太稀疏,计算成本极高。
  2. 无语义关联:独热向量之间的内积为 0,模型完全学不到词与词的关系。比如"苹果"和"香蕉"的向量没有任何相似性,模型不知道它们都是水果。

分布式表示假设 就是为了破解这个困境,它的核心一句话就能说透:

"A word is characterized by the company it keeps."

(词的含义,由它周围的词决定)

举个例子:

  • 句子 1:我爱吃苹果
  • 句子 2:他爱吃香蕉
  • 句子 3:猫爱吃鱼干

"苹果""香蕉""鱼干"的上下文都有"爱吃",所以它们的词向量会比较接近;而"苹果"和"手机"的上下文完全不同(比如"苹果手机"的上下文是"买""用"),词向量就会相差很远。

Word2Vec 做的事,就是把每个词映射成一个低维、稠密的实数向量(比如 100 维) ,这个向量就叫词嵌入(Word Embedding),向量的维度可以自己设定。向量之间的距离(比如余弦相似度)就代表了词的语义相似度------这是它最核心的价值。

二、 两种实现范式:Skip-gram & CBOW

Word2Vec 本质是一个浅层神经网络 ,两种范式的区别,就是训练任务的输入输出反过来了 。我们用同一个简单句子举例:【我 爱 吃 苹果】,设定窗口大小=2(即每个词的上下文是左右各 2 个词,边界不足则补全)。

1. CBOW(Continuous Bag-of-Words,连续词袋模型)
  • 核心逻辑用上下文词的向量,预测中心词
  • 输入:中心词的上下文词向量。比如中心词是"吃",上下文就是"我、爱、苹果" → 把这 3 个词的向量做平均,作为模型输入。
  • 输出:中心词的概率分布 → 模型输出一个和词表大小一样的向量,通过 Softmax 归一化后,概率最高的位置就是预测的中心词。
  • 训练目标:让预测的中心词概率尽可能接近真实值(用交叉熵损失函数)。
  • 特点
    • 训练速度快:上下文词的信息被"平均",计算量小。
    • 低频词更友好:低频词的上下文样本少,但平均后能减少噪声。
2. Skip-gram(跳字模型)
  • 核心逻辑用中心词的向量,预测它的上下文词
  • 输入:中心词的向量。比如中心词是"吃",输入就是"吃"的词向量。
  • 输出:上下文词的概率分布 → 模型输出多个概率分布(对应上下文的每个位置),预测哪些词会出现在中心词周围。
  • 训练目标:让预测的上下文词概率尽可能接近真实值。
  • 特点
    • 训练速度慢:要预测多个上下文词,计算量比 CBOW 大。
    • 高频词生僻词的表示更精准:不会像 CBOW 那样"平均"掉上下文的细节,能学到更细的语义差异。比如能区分"苹果(水果)"和"苹果(手机)"的不同上下文。
两者核心对比表
维度 CBOW Skip-gram
任务逻辑 上下文 → 中心词 中心词 → 上下文
训练速度
适用场景 低频词多、小数据集 高频词多、大数据集
语义表示效果 中等 更优(尤其是多义词)

三、 优缺点分析 & 典型应用场景

1. 优点
  • 轻量高效:模型只有一个输入层、一个隐藏层、一个输出层,训练速度快,即使是百万级词表也能快速训练。
  • 语义关联性强 :生成的词向量支持语义推理 ,经典例子就是向量计算:国王 - 男人 + 女人 = 女王,向量空间中这个等式成立。
  • 迁移性好:可以在大规模通用语料上预训练,然后将词向量迁移到下游任务(比如文本分类、情感分析),作为初始词嵌入,大幅提升下游任务效果。
2. 缺点
  • 静态词向量 :一个词只有一个固定向量,无法处理多义词。比如"苹果"在"吃苹果"和"苹果手机"里的向量是一样的,模型无法区分语义。
  • 依赖窗口大小:窗口太小会漏掉长距离上下文,窗口太大会引入噪声,且窗口大小是固定的,无法自适应不同词的上下文范围。
  • 忽略语序:CBOW 是"词袋模型",上下文词的顺序不影响输入(比如"我 爱 吃"和"吃 爱 我"的输入是一样的),这不符合语言的时序逻辑。
  • 对生僻词/未登录词(OOV)处理差:训练语料里没出现过的词,无法生成词向量。
3. 典型应用场景
  • 下游 NLP 任务的预训练词嵌入:这是最核心的用途。比如在做文本分类、命名实体识别、机器翻译时,先用 Word2Vec 预训练词向量,再喂给 RNN/LSTM 等模型,比随机初始化词向量效果好得多。
  • 词相似度计算 & 同义词检索:比如搜索引擎里,输入"汽车",能推荐"轿车""车辆"等近义词。
  • 类比推理 & 语义聚类:比如教育领域的词汇分类(把"苹果、香蕉"归为水果类),或者知识图谱的实体关系挖掘。
  • 简单的文本相似度计算:比如比较两个句子的相似度,可以把句子里的词向量平均,再计算余弦相似度。

相关推荐
人工智能AI技术2 小时前
10亿美元合作启发:AIGC正版IP应用开发,迪士尼+OpenAI技术拆解
人工智能
光羽隹衡3 小时前
深度学习——卷积神经网络实现手写数字识别
人工智能·深度学习·cnn
莫非王土也非王臣3 小时前
深度学习之对比学习
人工智能·深度学习·学习
AI_56783 小时前
Selenium+Python可通过 元素定位→操作模拟→断言验证 三步实现Web自动化测试
服务器·人工智能·python
冰西瓜6003 小时前
国科大高级人工智能期末复习(四)联结主义(下)——深度学习
人工智能·深度学习
檐下翻书1733 小时前
世界模型:AI理解物理空间的关键一步
人工智能
2013092416273 小时前
1968年 Hart, Nilsson, Raphael 《最小成本路径启发式确定的形式基础》A* 算法深度研究报告
人工智能·算法
InterestOriented3 小时前
破解银发学习痛点 兴趣岛 “普惠 + 品质” 模式打造积极老龄化范本
大数据·人工智能·学习
Mark_Aussie4 小时前
ADALog 日志异常检测
人工智能
Jouham4 小时前
教培获客破局:AI智能体如何重塑需求捕捉与转化新范式
人工智能