Vecteurs de mots et traitement automatique du langage naturel (TALN)

Le “deep learning”, apprentissage profond par réseau de neurones présente d’innombrables applications. Cependant, dans le cadre de la communication technique, le traitement automatique du langage naturel (TALN) représente la solution la plus pertinente. Le TALN utilise les technologies de traduction automatique, d’analyse des sentiments et de synthèse vocale de dernière génération. Une fois de plus, dans cet article, je fais le choix d’aborder le thème du TALN, dont j’ai entendu parler pour la première fois lors d’un cours passionnant dispensé par le Dr. François Massion à l’Université de Strasbourg, en automne 2017.

vecteurs de mots et TALN

Les vecteurs de mots, fondement du TALN

Le premier défi de toute application de la technologie du TALN réside en le fait de mettre les données linguistiques à la disposition des réseaux neuronaux profonds.  

Les spécialistes du TALN ont souvent recours aux vecteurs de mots. Le blog intitulé “The amazing power of word vectors m’a aidé à comprendre les concepts mathématiques les plus obscurs indispensables à la bonne compréhension du système.

L’image ci-dessous représente l’exemple largement simplifié d’un vecteur de mot.

vecteurs de mots TALN

Le vecteur de mot du mot “chat” est constitué de huit variables. Chaque variable se caractérise par une des significations du mot. Ce schéma rend compte de la réelle complexité du concept de signification pour un mot. Le TALN excelle lorsqu’il s’agit d’esquiver les débats philosophiques houleux, puisque cette technologie quantifie la signification d’un mot et traite des similitudes et différences en termes de relations géométriques.

Exploitation des espaces vectoriels pour le TALN

En pratique, la plupart des mots peuvent être transformés en vecteurs de mots, composés de 25 à 300 variables. Les vecteurs de ce type sont souvent qualifiés de vecteur “multidimensionnels”, pour lesquels chaque variable représente une dimension sémantique supplémentaire.

Un vecteur composé de 300 variables est ainsi considéré comme étant un vecteur à 300 dimensions. Dans certains domaines d’application du TALN de haut niveau, les vecteurs de mots peuvent comporter jusqu’à mille dimensions.

Afin de faciliter les calculs des plus grands vecteurs, on attribue souvent des valeurs flottantes ou décimales aux variables individuelles, dans le but d’optimiser le traitement des données et simplifier les calculs de probabilité. En pratique, le vecteur de mot représentant le mot “chat” pourrait ressembler à un schéma de ce type.

vecteurs de mots TALN dimensions

Certaines opérations de machine learning précisent les conditions initiales ou les valeurs prédéfinies des variables. Pourtant, certaines des structures de deep learning non supervisées les plus efficaces, principalement les réseaux neuronaux profonds, commencent leurs itérations avec des variables aux valeurs aléatoires, en les modifiant au fur et à mesure, selon les calculs effectués.

En général, plus un vecteur occupe d’espace dimensionnel, plus il est facile de trouver des similitudes entre les mots. Voici la raison pour laquelle de nombreuses formes d’application du TALN impliquent des opérations vectorielles statistiques dans des espaces vectoriels à dimension élevée. Ceci est particulièrement valable pour les techniques fonctionnant selon les vecteurs de support plus anciennes. Cependant, il en va de même pour les réseaux neuronaux profonds.

 

Le TALN : des statistiques…dopées à la stéroïde

Etant donné que les êtres humains rencontrent de grandes difficultés à représenter visuellement des objets de plus de trois dimensions, il n’est pas surprenant que des similitudes entre les vecteurs soient souvent présentées dans des graphiques de deux ou trois dimensions, tout au plus. Lorsque les technologies de machine learning sont appliquées à des ensembles de vecteurs de mots par des itérations successives, l’espace entre ces vecteurs diminue, et les mots commencent à s’assembler en groupes. Des techniques statistiques avancées peuvent être utilisées pour établir des relations entre des vecteurs de mots spécifiques, basées sur des relations géométriques entre eux, ce qui peut inclure des distances et des angles.

Il s’agit exactement des techniques utilisées par DeepL et Google Translate, pour trouver des similitudes entre des mots de langues différentes, rendant ainsi la traduction automatique possible.

C’est ici que toute la magie se produit et les techniques exactes utilisées sont soigneusement gardées. Toutefois, les principes sur lesquelles ces techniques reposent relèvent du domaine public. J’ai trouvé un cours particulièrement instructif de l’Université de Stanford traitant du deep learning appliqué au TALN (Deep Learning for Natural Language Processing). Il convient de préciser que ce cours est de nature très technique. Ainsi, je le recommande aux personnes ayant un fort intérêt pour le TALN.  

 

Il est important de souligner que les vecteurs de mots peuvent être étendus afin d’englober des propositions entières, des phrases ou même des paragraphes.

Plus l’échantillon de mots est important, plus les comportements observés sont complexes, notamment lorsque des relations grammaticales existent au niveau d’une phrase.

Les thèmes de l’apprentissage machine et du TALN sont exhaustifs et spécifiques. Ces thèmes vont bien au-delà d’un simple article de blog. Davantage d’articles traitant de l’apprentissage machine sont prévus dans les mois à venir. Restez connectés !

 

Pour d’informations sur le traduction automatique, consultez notre article « L’intelligence artificielle révolutionne la traduction automatique« .

Sources :

  • https://blog.acolyer.org/2016/04/21/the-amazing-power-of-word-vectors
  • http://cs224d.stanford.edu

 

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

quatre × 5 =