Doc2vec most_similar方法返回高于1

时间:2018-06-04 16:21:57

标签: python python-3.x gensim doc2vec

我已经按照500.000文档的本教程培训了doc2vec模型。 https://github.com/abtpst/Doc2Vec/blob/master/trainDoc2Vec.py

但是,当我尝试为给定文档查找most_similar文档时,结果的相似度高于1.正如您在代码和输出中看到的,docvecs.similarity返回0.246,docvecs.most_similar返回9.996之间的相似性同样的两个文件。您可以在下面看到代码和输出:

from gensim.models import doc2vec
def myhash(obj):
    return hash(obj) % (2 ** 32)    
model = doc2vec.Doc2Vec(hashfxn=myhash)
model = doc2vec.Doc2Vec.load("d2v.model")

tag1 = "012020171590"
tag2 = "0109201716181"

print(tag1 in model.docvecs.doctags)
print(tag2 in model.docvecs.doctags)

print(model.docvecs.similarity(tag1, tag2))
print(model.docvecs.most_similar(tag1))

输出:

  

     

     

0.24682570854972158

     

[(' 0109201716181',9.996172904968262),(' 0120201611372',9.853036880493164),(' 010120166996',9.613503456115723),(' 012020173027&# 39;,8.97104263305664),(' 01202017423',8.886014938354492),(' 01002009541',8.783470153808594),(' 00002004106',8.682585716247559),(' 0109201616963',8.671405792236328),(' 011020171931',8.659266471862793),(' 011020175199',8.573907852172852)]

图书馆和系统版本:

的Linux-4.9.0-6-AMD64的x86_64的与 - Debian的9.4

Python 3.5.3(默认,2017年1月19日,14:11:04)

NumPy 1.14.3

SciPy 1.1.0

gensim 3.4.0

FAST_VERSION 1

0 个答案:

没有答案