Pour Doc2Vec de gensim, vos exemples de texte doivent être des objets similaires à la classe TaggedDocument
de l'exemple: avec les propriétés words
et tags
. La propriété tags
doit être une liste de 'tags', qui servent de clés aux vecteurs doc qui seront appris à partir du texte correspondant.
Dans le cas classique/original, chaque document a une seule étiquette - essentiellement un identifiant unique pour ce document. (Les balises peuvent être des chaînes, mais pour les très grands corpus, Doc2Vec utilisera un peu moins de mémoire si vous utilisez plutôt des balises Python, à partir de 0, sans valeurs ignorées.)
les vecteurs appris après l'entraînement. Si vous aviez un document au cours de la formation avec l'étiquette unique 'mars'
, vous regarderait-le vecteur appris:
model.docvecs['mars']
Si vous étiez faire un appel model.docvecs.most_similar['mars']
, les résultats seront communiqués par leurs clés de tag, comme bien.
Les balises sont seulement clés dans la collection doc-vecteurs - ils ont pas de sens sémantique, et même si une chaîne est répétée du mot-jetons dans le texte, il n'y a aucune relation nécessaire entre cette clé de l'étiquette et la mot. Autrement dit, si vous avez un document dont le seul identifiant est «mars», il n'y a pas de relation essentielle entre le doc-vecteur appris accédé via cette touche (model.docvecs['mars']
) et tout mot-vecteur appris accédé avec la même chaîne key (model.wv['mars']
) - ils proviennent de collections de vecteurs distinctes.