龙空技术网

5分钟学会用基于word2vec的doc2vec计算文本相似度

北京交通大学魏炜 349

前言:

此刻你们对“python曲线相似度”都比较关注,同学们都需要了解一些“python曲线相似度”的相关内容。那么小编同时在网上收集了一些有关“python曲线相似度””的相关资讯,希望我们能喜欢,小伙伴们快快来学习一下吧!

Gensim中的word2vec模型能够计算2个单词之间的相似度。

word2vec能够将单词转化为词向量。这种词向量能涵盖语义特征。

Mikolov在提出word2vec后,后续又提出Doc2vec 方法。

Gensim中的doc2vec是word2vec在短语,句子和文档级别的扩展,能够计算两段文本之间的相似度。

接下来,我们看一下用doc2vec计算文本相似度的核心步骤:

•首先要进行预处理,最主要的步骤为:

•语料清洗

•繁简转换

•分词(通常用jieba)

•去除停用词(例如用哈工大停用词表)

•接下来,通过Python的Gensim包调用Doc2Vec(gensim.models.doc2vec),训练生成句向量。训练语料通常为中文维基百科。

由于在gensim库中,Doc2Vec是Word2Vec的一个子类,因此二者参数的设置十分相似。

参数设置说明如下:

•PV-DM:训练算法为PV-DM

Word2vec 有两种词向量学习方式:CBOW 和Skip-Gram,对应地,Doc2vec 有两种文本向量学习方式:PV-DM 和文本向量的分布词袋模型PV-DBOWPV-DM 是在给定文本向量和上下文的情况下预测某个单词的概率PV-DBOW 是在仅给定文本向量的情况下预测文本中一组随机单词的概率。

•词向量上下文距离(最大预测长度)window:通常设置为5。如果文本较短,这个参数可以设置为3

•句向量维度vector_size=200维或300维。即生成维度为200维或300维的一维向量作为句向量

•优化方法:通常使用负采样,即默认值

•最小词频min_count=1 ,即将所有出现过的词均纳入训练

•其余参数通常为默认值。

然后,自定义一个余弦相似度计算函数,然后调用它,就得到句向量相似度。至此,大功告成!

自定义一个余弦相似度计算函数,然后调用它,就得到句向量相似度

标签: #python曲线相似度 #word分词器相似度算法 #word分词器相似度算法怎么用