【Word2Vec】传统词嵌入矩阵训练方法

目录

  • [1. Word2Vec 简介](#1. Word2Vec 简介)
  • [2. Word2Vec 的训练方法](#2. Word2Vec 的训练方法)
    • [2.1 Skip-Gram模型](#2.1 Skip-Gram模型)
    • [2.2 CBOW(Continuous Bag of Words)模型](#2.2 CBOW(Continuous Bag of Words)模型)
  • [3. Word2Vec 中的词嵌入表示](#3. Word2Vec 中的词嵌入表示)
  • [4. 训练过程中是否使用独热编码?](#4. 训练过程中是否使用独热编码?)

1. Word2Vec 简介

Word2Vec 是一种词嵌入模型,主要通过无监督学习来训练词汇的稠密向量表示。它通过分析大量的语料库,学习到每个词(token)在该语料库中的上下文关系。Word2Vec 使用神经网络模型来生成每个词的嵌入向量,嵌入向量的维度通常远小于词汇表的大小。

2. Word2Vec 的训练方法

Word2Vec 主要有两种训练方式:

  • 连续词袋模型 (Continuous Bag of Words, CBOW
  • 跳字模型(Skip-gram)

无论是 CBOW 还是 Skip-gram ,Word2Vec 都是通过上下文关系来训练词向量的,而不是像 独热编码 那样直接表示每个词。

2.1 Skip-Gram模型

Skip-Gram 模型的目标是,给定一个中心词(target word),预测它的上下文词(context words)。这种方法适用于小数据集,能够更好地捕捉到词汇的稀有用法。

  • 输入:中心词(target word)
  • 输出:上下文词(context words)
  • 例子
    • 如果上下文窗口为 2,给定句子 "The cat sat on the mat" ,在 "sat" 这个词的中心下,模型会尝试预测 "The"、"cat"、"on" 和 "the" 这四个词作为上下文。

训练时,Skip-Gram 模型通过最大化目标词和上下文词的条件概率,更新模型中的参数。

2.2 CBOW(Continuous Bag of Words)模型

CBOW 模型的目标是,给定上下文词(context words),预测目标词(center word)。CBOW 适合较大数据集,计算上通常比 Skip-Gram 更高效。

  • 输入:上下文词(context words)
  • 输出:中心词(target word)
  • 例子
    • 给定上下文窗口为 2,句子 "The cat sat on the mat" ,在上下文词 "The""cat""on""the" 下,CBOW 模型会尝试预测 "sat" 作为中心词。

在训练时,CBOW 模型通过最大化目标词的条件概率来更新参数。

联想成物理中的向量分量合并与分解的操作即可

3. Word2Vec 中的词嵌入表示

在 Word2Vec 中,输入词汇并不直接使用 独热编码 ,而是通过 嵌入矩阵(embedding matrix)将每个词映射到一个稠密向量空间。这些向量是在训练过程中学习到的。

  • 独热编码 :独热编码(One-Hot Encoding)是将每个词表示为一个维度为词汇表大小的稀疏向量,其中只有对应词的位置是 1,其他位置是 0。例如,如果词汇表大小是 5,"dog" 在词汇表中的位置是 3,那么它的独热编码表示为 [0, 0, 1, 0, 0]。这种表示方式通常会导致非常稀疏的高维向量,维度非常大,并且无法有效地捕捉词与词之间的关系。

  • 词嵌入 :而在 Word2Vec 中,每个词会被映射到一个固定维度的 密集向量(通常是 50 到 300 维)。这些向量表示了词与词之间的语义关系,例如,"king" 和 "queen" 会有相似的向量表示。

Word2Vec 的训练方式实际上是通过 嵌入矩阵 来进行的。在训练过程中,模型会根据上下文词来调整每个词的向量,使得在语义空间中,相似的词会有相似的向量。

4. 训练过程中是否使用独热编码?

是的,在 Word2Vec 中,一般会先将词转换成独热编码(one-hot encoding)向量,再通过嵌入矩阵转换成稠密的低维嵌入向量。

这里是一个简化的流程:

  1. 独热编码 :假设词汇表大小为 V,每个词用一个 V 维的独热编码向量表示。例如,如果"喜欢"是词汇表中的第 i 个词,则它的独热编码在第 i 个位置为 1,其他位置为 0。

  2. 嵌入矩阵 :设嵌入矩阵 W 的维度是 V × d,其中 d 是嵌入的维度。嵌入矩阵 W 存储了每个词的嵌入向量(每行对应词汇表中的一个词)。

  3. 嵌入向量 :将独热编码向量 o 乘以嵌入矩阵 W,得到词的嵌入向量 e。计算过程为 e = o × W,结果就是一个 d 维的嵌入向量。

这样,每个词的独热编码就被映射到一个稠密、低维的嵌入空间中,用以捕获词与词之间的语义关系。

相关推荐
泰迪智能科技019 分钟前
高校企业数据挖掘平台推荐
人工智能·数据挖掘
劳工小朋友38 分钟前
为什么神经网络的可解释性差?
人工智能·深度学习·神经网络
炸膛坦客40 分钟前
神经网络入门实战:(一)神经网络解决的两种问题,以及AI、机器学习、深度学习三者之间的逻辑关系
人工智能·深度学习·机器学习
CoderIsArt43 分钟前
基于 RBF 神经网络整定的 PID 控制
人工智能·深度学习·神经网络
ZStack开发者社区1 小时前
云轴科技ZStack亮相2024 IDC中国生态峰会,共塑AI时代IT生态新格局
人工智能·科技
Guofu_Liao1 小时前
大语言模型---ReLU函数的计算过程及其函数介绍
人工智能·语言模型·自然语言处理
码蜂窝编程官方1 小时前
【含开题报告+文档+PPT+源码】基于SSM的电影数据挖掘与分析可视化系统设计与实现
java·vue.js·人工智能·后端·spring·数据挖掘·maven
遗落凡尘的萤火-生信小白1 小时前
转录组数据挖掘(生物技能树)(第11节)下游分析
人工智能·数据挖掘
XinZong2 小时前
【OpenAI】获取OpenAI API Key的多种方式全攻略:从入门到精通,再到详解教程!
人工智能
没有余地 EliasJie2 小时前
深度学习图像视觉 RKNN Toolkit2 部署 RK3588S边缘端 过程全记录
人工智能·嵌入式硬件·深度学习