Метод Doc2vec most_s Similar возвращает оценку сходства выше 1 - PullRequest
0 голосов
/ 04 июня 2018

Я обучил модель doc2vec, следуя этому руководству для 500.000 документов.https://github.com/abtpst/Doc2Vec/blob/master/trainDoc2Vec.py

Однако, когда я пытаюсь найти большинство_подобных документов для данного документа, результаты имеют сходство выше 1. Как вы можете видеть в коде и выходных данных, docvecs.shoity возвращает 0,246 и docvecs.most_simil возвращает 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))

Вывод:

True

True

0,24682570854972158

[( '0109201716181', 9,996172904968262), ( '0120201611372', 9,853036880493164), ( '010120166996', 9,613503456115723), ( '012020173027', +8,97104263305664), ( '01202017423', 8,886014938354492), ( '01002009541', 8,783470153808594),('00002004106', 8.682585716247559), ('0109201616963', 8.671405792236328), ('011020171931', 8.659266471862793), ('011020175199', 8.573907852172852)]

*
.1020 * Linux-4.9.0-6-amd64-x86_64-with-debian-9.4

Python 3.5.3 (по умолчанию, 19 января 2017 г., 14:11:04)

NumPy 1.14.3

SciPy 1.1.0

gensim 3.4.0

FAST_VERSION 1

...