Les dernières avancées dans le Traitement Automatique des Langues

4 questions à Mehdi Mirzapour, chercheur spécialisé en Natural Language Processing (NLP) chez ContentSide

Dans le domaine du langage naturel, les technologies mises en œuvre ont beaucoup évolué depuis les deux ou trois dernières années.

Le domaine du Natural Language Processing (NLP) ou traitement automatique des langues (TAL) a été décliné en plusieurs disciplines comme le Natural Language Understanding (NLU), le Natural Language Generation (NLG).

Les “Word/Document Embeddings” sont également des techniques essentielles pour tout système NLP.

Chacune de ces déclinaisons a des objectifs distincts et se base sur des familles d’algorithmes et des approches spécifiques. Mehdi Mirzapour dresse un état de l’art.

L’analyse du langage naturel est aujourd’hui déclinée dans plusieurs domaines. Les experts parlent notamment de NLU et de NLG. Pouvez-vous présenter succinctement ces deux approches ?

Rappelons que l’analyse du langage naturel à partir de services logiciels fait appel à plusieurs disciplines : l’intelligence artificielle, les sciences cognitives et la linguistique.

La linguistique utilisée dans ce contexte est dite computationnelle. Il s’agit de représenter le texte sous une forme numérique afin de pouvoir lui appliquer des traitements.

Dans ce contexte, le NLU et le NLG représentent les composantes principales d’un système global de NLP.

Le NLG a pour objectif la construction de systèmes logiciels capables de produire des textes signifiants. Il s’agit par exemple d’automatiser la génération de résumés à partir de textes. Une potentialité qui peut être mise à profit dans de nombreux cas : commerce électronique pour générer des fiches produit, édition, assistant virtuel, analyse commerciale… ou encore dans la santé, pour générer le rapport d’un patient à l’hôpital à partir de comptes rendus médicaux.

Le système NLU idéal est destiné à analyser un texte pour lui attribuer le meilleur sens parmi les multiples interprétations ou représentations de sens possibles. Ces représentations peuvent être utilisées à des fins différentes telles que la classification de texte ou l’étiquetage de séquence. Dans une perspective simplifiée de haut niveau, le NLU peut être vu comme un processus inverse du NLG.

Le NLU et le NLG bénéficient depuis quelques années des potentialités du deep learning. Pouvez-vous nous parler de cette technologie et de ses avantages ?

Le NLU comme le NLG bénéficient du développement des réseaux de neurones qui apportent la possibilité d’apprentissage en profondeur, et ce pour différentes tâches (traduction…).

Plusieurs architectures de ces réseaux, c’est-à-dire l’organisation physique entre les différentes couches de neurones, sont utilisées aujourd’hui : le MLP (Multi-Layer Perceptron), le LSTM (Long-Short-Term-Memory), le GRU (Gated Recurrent Units) et le CNN (Convolutional Neural Networks). Sur le terrain, la pratique la plus courante est de construire des modèles basés sur une combinaison entre plusieurs de ces architectures.

Ces approches fournissent de bons résultats, que l’on mesure en fonction de la précision obtenue, plus exactement de l’absence d’erreurs. A ce jour, le NLU présente les avancées les plus remarquables, en particulier pour des tâches de classification.

Basé sur les réseaux de neurones, une approche baptisée « Word Embedding », est aujourd’hui utilisée en amont du NLU et NLG. Pouvez-vous en résumer le fonctionnement et les bénéfices ?

Rappelons que les ordinateurs ne comprennent pas les mots et ne fonctionnent qu’avec des nombres.

La première étape est donc de les représenter sous forme numérique. Auparavant, les chercheurs utilisaient une approche statistique basée sur le nombre d’occurrences de chaque mot dans un document, une approche baptisée « Bag of Words ».

Plus évoluées, des méthodes comme LSA (Latent Semantic Analysis) ou encore, TF-IDF (Term Frequency- Inverse Document Frequency) prenaient en compte conjointement la présence de mots dans un document et dans un corpus (un ensemble de documents).

Toutes ces représentations permettaient d’appliquer différents algorithmes d’apprentissage automatique comme les arbres de décision.

L’émergence de techniques plus modernes, y compris du Deep Learning, a façonné de nouveaux algorithmes statistiques tels que les algorithmes statiques Word2Vec, Glove ou FastText, dans lesquels les mots sont représentés comme des vecteurs basés sur des cooccurrences trouvées à partir de grandes quantités de données textuelles.

Surnommées « Word Embedding », ces approches améliorent la désambiguïsation par rapport aux méthodes précédentes. Ces approches servent à alimenter les NLU et les NLG pour une variété de cas d’utilisation.

Les avancées les plus récentes, les « Dynamic Embedding » en particulier lancées avec le BERT (Bidirectional Encoder Representations from Transformers) de Google fin 2018, améliorent encore les résultats. Quelles en sont les spécificités ?

Ces « transformer models », notamment BERT et ses déclinaisons pour les langues anglaises et françaises (RoBERTa, ALBERT, CamemBERT et FlauBERT), sont encore plus performants en termes de résultats, car ils utilisent le « Dynamic Embedding», c’est-à-dire différentes représentations vectorielles pour différents mots polysémiques, qui sont obtenues via un entraînement initial sur une énorme quantité de données, sans avoir besoin d’annotation humaine.

Pour obtenir de bons résultats avec BERT, il n’est pas utile de l’ajuster sur un ensemble de données aussi volumineux que celui sur lequel il a été initialement formé. Cela permet d’économiser du temps et des coûts de création d’ensembles de données.

Le “tokenizer” (analyseur lexical) BERT ne fonctionne pas sur des mots mais sur des portions de mots, ce qui résout le problème du manque de vocabulaire pour les mots inconnus.

Ce sujet vous intéresse ?

NOUS CONTACTER