千家信息网

Word2Vec是如何工作的及和LDA有什么区别与联系

发表于:2025-02-05 作者:千家信息网编辑
千家信息网最后更新 2025年02月05日,Word2Vec是如何工作的及和LDA有什么区别与联系,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Question:Word2Vec是
千家信息网最后更新 2025年02月05日Word2Vec是如何工作的及和LDA有什么区别与联系

Word2Vec是如何工作的及和LDA有什么区别与联系,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

Question:Word2Vec是如何工作的?它和LDA有什么区别与联系?

CBOW的目标是根据上下文出现的词语来预测当前词的生成概率,如图(a)所示;而Skip-gram是根据当前词来预测上下文中各词的生成概率,如图(b)所示。

Word2Vec的两种网络结构

其中w(t)是当前所关注的词,w(t−2)、w(t−1)、w(t+1)、w(t+2)是上下文中出现的词。这里前后滑动窗口大小均设为2。

CBOW和Skip-gram都可以表示成由输入层(Input)、映射层(Projection)和输出层(Output)组成的神经网络。

输入层中的每个词由独热编码方式表示,即所有词均表示成一个N维向量,其中N为词汇表中单词的总数。在向量中,每个词都将与之对应的维度置为1,其余维度的值均设为0。

在映射层(又称隐含层)中,K个隐含单元(Hidden Units)的取值可以由N维输入向量以及连接输入和隐含单元之间的N×K维权重矩阵计算得到。在CBOW中,还需要将各个输入词所计算出的隐含单元求和。

同理,输出层向量的值可以通过隐含层向量(K维),以及连接隐含层和输出层之间的K×N维权重矩阵计算得到。输出层也是一个N维向量,每维与词汇表中的一个单词相对应。最后,对输出层向量应用Softmax激活函数,可以计算出每个单词的生成概率。Softmax激活函数的定义为

其中x代表N维的原始输出向量,xn为在原始输出向量中,与单词wn所对应维度的取值。

接下来的任务就是训练神经网络的权重,使得语料库中所有单词的整体生成概率最大化。从输入层到隐含层需要一个维度为N×K的权重矩阵,从隐含层到输出层又需要一个维度为K×N的权重矩阵,学习权重可以用反向传播算法实现,每次迭代时将权重沿梯度更优的方向进行一小步更新。但是由于Softmax激活函数中存在归一化项的缘故,推导出来的迭代公式需要对词汇表中的所有单词进行遍历,使得每次迭代过程非常缓慢,由此产生了Hierarchical Softmax和NegativeSampling两种改进方法。训练得到维度为N×K和K×N的两个权重矩阵之后,可以选择其中一个作为N个词的K维向量表示。

Word2Vec与LDA的区别和联系

首先,LDA是利用文档中单词的共现关系来对单词按主题聚类,也可以理解为对"文档-单词"矩阵进行分解,得到"文档-主题"和"主题-单词"两个概率分布。而Word2Vec其实是对"上下文-单词"矩阵进行学习,其中上下文由周围的几个单词组成,由此得到的词向量表示更多地融入了上下文共现的特征。也就是说,如果两个单词所对应的Word2Vec向量相似度较高,那么它们很可能经常在同样的上下文中出现。需要说明的是,上述分析的是LDA与Word2Vec的不同,不应该作为主题模型和词嵌入两类方法的主要差异。主题模型通过一定的结构调整可以基于"上下文-单词"矩阵进行主题推理。同样地,词嵌入方法也可以根据"文档-单词"矩阵学习出词的隐含向量表示。主题模型和词嵌入两类方法最大的不同其实在于模型本身,主题模型是一种基于概率图模型的生成式模型,其似然函数可以写成若干条件概率连乘的形式,其中包括需要推测的隐含变量(即主题);而词嵌入模型一般表达为神经网络的形式,似然函数定义在网络的输出之上,需要通过学习网络的权重以得到单词的稠密向量表示。

看完上述内容,你们掌握Word2Vec是如何工作的及和LDA有什么区别与联系的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!

单词 向量 主题 矩阵 输出 上下 上下文 模型 权重 概率 方法 维度 网络 输入 函数 生成 联系 文档 学习 工作 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 服务器运行生命周期是什么意思 科怡系统怎么拷数据库 陕西掌宝互联网科技是干嘛的 手游方舟如何自己制作一个服务器 齐河租房网络安全 网络安全诙谐队名 云服务器一个月多少钱电费 肇庆考试软件开发设计 机器人用啥软件开发 网络安全意识知识体系与考核模型 湖北软件开发基地 监控转发服务器配置 小学生网络安全相关知识 计算机网络技术数据包的抓取 王牌战争怎么开服务器里面的商店 辽事通服务器连接错误代码 软件开发国企单位 北京花草网络技术有限公司 网络安全标准化专员是什么 软件开发用的甘特图 系统之星怎么添加服务器 手游方舟如何自己制作一个服务器 怎么删除数据库表中记录 心动网络安全ppt 房山区深信服数据库安全审计 网络安全法实施几周年了 远程水表服务器断网 沈阳网络安全技术培训课程 吉林网络软件开发公司 网络技术维护员自我评价
0