使用gensim框架及Word2Vec词向量模型获取相似词

举报
Python新视野 发表于 2021/09/10 00:42:53 2021/09/10
【摘要】 使用gensim框架及Word2Vec词向量模型获取相似词 预备知识Word2Vec模型下载加载词向量模型 预备知识 gensim框架 gensim是基于Python的一个框架...

使用gensim框架及Word2Vec词向量模型获取相似词

预备知识

gensim框架

gensim是基于Python的一个框架,它不但将Python与Word2Vec做了整合,还提供了基于LSA、LDA、HDP的主体框架。

Word2Vec

Word2Vec属于一种神经网络架构的概率语言模型


两个重要模型
CBOW模型:CBOW模型是Word2Vec最重要的模型,输入是周围词的词向量,输出是当前词的词向量。即通过周围词来预测当前词。
Skip-Gram模型:它与CBOW正相反,它是通过当前词来预测周围词。


优化方式
Negative Sample(负采样):在训练神经网络时,每接受一个训练样本后,通过调整所有神经单元的权重参数,来使神经网络的预测更加准确。negative sampling 每次让一个训练样本仅仅更新一小部分的权重参数,从而降低梯度下降过程中的计算量。

Hierarchical Softmax:传统的词向量模型,一般具有输入层(词向量)、隐藏层和输出层(softmax)。最耗时的就是softmax层,它的计算量很大。word2vec对这个模型做了改进,首先,对于从输入层到隐藏层的映射,没有采取神经网络的线性变换加激活函数的方法,而是采用简单的对所有输入词向量求和并取平均的方法。第二个改进就是从隐藏层到输出的softmax层这里的计算量个改进。为了避免要计算所有词的softmax概率,word2vec采样了霍夫曼树来代替从隐藏层到输出softmax层的映射。


Word2Vec模型下载

词向量模型下载地址

下载完成后保存到本地

加载词向量模型

from gensim.models import KeyedVectors

# 加载词向量模型
model = KeyedVectors.load_word2vec_format(read_path1, binary=False)

# 获取与term最接近的10个相似词, 返回值格式为[('xx', 0.89123), ('xx', 0.88123)...]
result_list = model.most_similar(term, topn=10)

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

在这里插入图片描述



哪怕对自己的一点小小的克制,也会使人变得强而有力在这里插入图片描述

文章来源: blog.csdn.net,作者:Dream丶Killer,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/qq_43965708/article/details/111241754

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。