Le titre de cette question est une question distincte de son texte, je vais donc répondre aux deux séparément (étant donné que l'un mène à l'autre).
- Comment puis-je déduire des phrases invisibles:
# ... trained model stored in var model
list_of_words = ["this", "is", "a", "new","unseen", "sentence"]
inferred_embedding = model.infer_vector(list_of_words)
Comment cela marche-t-il ? Selon l'article original ( https://cs.stanford.edu/~quocle/ paragraph_vector.pdf ) nous avons deux matrices de poids initialisées au hasard qui est la même matrice de Word2Vec dans laquelle chaque colonne ou ligne correspond à un vecteur de mots et D ∈ R M × R qui est la matrice du document où chaque colonne ou ligne correspond à une phrase / un document. Lors de la formation, un classificateur softmax de mouvements de taille fixe de fenêtre k (dans une fenêtre mobile comme la mode) minimise la probabilité de log suivante (entropie croisée multi-classes):W∈RN×PD∈RM×Rk
1M∑i=1M1|Di|∑t=k|Di−1|−klog(p(wit|wit−k,...,wit+k,Di))
Diith|Di|wittthithD
WD
- Pouvons-nous en déduire qu'une phrase éventuellement invisible correspond exactement à une phrase de l'ensemble de formation?
D
Même la fixation de la graine aléatoire peut ne pas fonctionner, il y a tellement d'autres variables qui peuvent affecter sa convergence, veuillez voir la première réponse sur https://github.com/RaRe-Technologies/gensim/issues/374 .
Dans tous les cas, vous pouvez trouver l'étiquette la plus similaire dans votre ensemble de données à une phrase déduite simplement en itérant sur votre ensemble d'entraînement et en comparant la similitude avec le vecteur déduit. Mais pourquoi voudriez-vous faire une correspondance exacte avec quelque chose dans l'ensemble d'entraînement? c'est ce que sont les expressions régulières aux fins de l'intégration de ces documents pour les tâches d'apprentissage supervisées ou non (c.-à-d. classification et regroupement).