J'ai implémenté la recherche de documents similaires basés sur un document particulier en utilisant le modèle LDA (en utilisant Gensim). La prochaine chose que je veux faire est de savoir si j'ai plusieurs documents puis comment obtenir un document similaire en fonction des documents multiples fournis en entrée.comment calculer la similarité de document en utilisant plus d'une requête?
I mis en œuvre à l'aide de cette LDA link
exemple de code pour la requête unique -
dictionary = corpora.Dictionary.load('dictionary.dict')
corpus = corpora.MmCorpus("corpus.mm")
lda = models.LdaModel.load("model.lda") #result from running online lda (training)
index = similarities.MatrixSimilarity(lda[corpus])
index.save("simIndex.index")
docname = "docs/the_doc.txt"
doc = open(docname, 'r').read()
vec_bow = dictionary.doc2bow(doc.lower().split())
vec_lda = lda[vec_bow]
sims = index[vec_lda]
sims = sorted(enumerate(sims), key=lambda item: -item[1])
print sims
Maintenant, si j'ai une autre doc alors comment la mettre en œuvre.
J'ai demandé l'évaluation de plusieurs doc. pas la mise à jour. – abhishek
@abhishek pourriez-vous élaborer votre doute s'il vous plaît, si vous avez plusieurs documents et vous voulez les fournir en entrée à la fois, alors vous pouvez diffuser les entrées en utilisant le générateur. La mise à jour est utilisée lorsque vous devez ajouter des documents après l'entraînement d'un modèle. S'il vous plaît voir le lien que j'ai fourni dans la réponse ci-dessus. J'espère que cela aide –