Durée: 12 mois
Rubrique: Ingénieur IA
Word2Vec est une technique de modélisation de langage inventée par une équipe dirigée par Tomas Mikolov chez Google en 2013. Ce modèle est utilisé pour générer des représentations vectorielles continues de mots dans un espace vectoriel de haute dimension. L'idée principale est de capturer les similitudes sémantiques entre les mots en fonction de leur contexte dans un large corpus de texte.
Les représentations vectorielles générées par Word2Vec permettent ainsi de réaliser des tâches telles que la découverte de synonymes ou la compréhension des relations sémantiques entre des mots.
Word2Vec utilise deux architectures principales pour créer des vecteurs de mots : CBOW (Continuous Bag of Words) et Skipgram.
L'architecture CBOW prédit le mot central (mot cible) à partir des mots contextuels environnants. Par exemple, dans la phrase "Le chat est sur le tapis", pour prédire le mot "est", CBOW utilise les mots contextuels "Le", "chat", "sur", et "le".
L'architecture Skipgram, à l'inverse, prédit les mots contextuels à partir du mot central. En reprenant le même exemple, pour le mot central "est", le modèle essayera de prédire les mots "Le", "chat", "sur", et "le".
Les deux architectures apprennent de manière efficace des représentations vectorielles, mais le choix entre CBOW et Skipgram dépend souvent du type de données et du contexte de l'entraînement.
L'entraînement de Word2Vec repose fondamentalement sur un réseau de neurones peu profond. Le modèle essaie de maximiser la proximité entre les vecteurs de mots sémantiquement similaires et de minimiser celle entre les mots sémantiquement différents, en se basant sur le concept de neighbor prediction. Deux des algorithmes couramment utilisés pour cette optimisation sont Negative Sampling et Hierarchical Softmax.
Ces méthodes permettent une accélération significative de l'entraînement par rapport à une simple approche de softmax classique.