Natural language understanding (NLU) : définition, process et modèles

En machine learning, le natural language understanding (NLU) est un programme qui s'attache approfondir la compréhension des mots et du langage naturel humain. Quel est le fonctionnement du NLU ?

Qu'est-ce que le natural language understanding (NLU) ?

Le natural language understanding (NLU), ou la compréhension du langage naturel, est un sous-domaine du traitement du langage naturel en matière d’intelligence artificielle faisant l’objet de recherches depuis les années 60. Il s'agit d’un ensemble de briques technologiques visant à développer des solutions capables de comprendre le sens d’un texte écrit par et pour les humains. Les algorithmes de NLU sont conçus dans chaque langage cible, dotés de leur propre lexique et de règles grammaticales à suivre dans une langue, ainsi que d’un parser révélant les corrélations entre les mots ou groupes de mots. Le NLU intervient en amont de la chaîne du traitement du langage naturel.

Comment fonctionne le natural language understanding (NLU) ?

Diverses approches permettent de développer un programme comprenant le langage humain. Malgré leur diversité, tous les outils ont un fonctionnement commun. Le système nécessite d’abord une vaste base de données de textes pour construire un lexique riche sur lequel s’appuyer, en s’entraînant grâce aux solutions de machine learning. Il est ensuite nécessaire de coder une théorie syntaxique et sémantique guidant la compréhension du programme. Les algorithmes de NLU peuvent ainsi décrypter un texte, extraire les informations importantes et en comprendre le sens.

Quelles sont les différentes étapes du natural language understanding (NLU) ?

La compréhension du langage naturel se déroule en quatre étapes :

  • la tokenisation des mots et groupes de mots pour les analyser séparément avant d’étudier les phrases ;
  • la lemmatisation pour déterminer la racine des mots afin d’analyser cette forme canonique (dont la définition est fournie en dictionnaire) au lieu de son dérivé ;
  • l’étiquetage morphosyntaxique ou balisage grammatical pour définir le rôle des mots au sein des phrases selon leur contexte dans le texte ;
  • l’analyse syntaxique pour affiner la compréhension des phrases dans leur ensemble en rapprochant les mots identifiés les uns des autres.

Quels sont les bibliothèques/modèles Python de natural language understanding les plus populaires ?

Python s’est imposé comme l’un des principaux langages de programmation en intelligence artificielle et machine learning. Il est aussi très utilisé dans le domaine du traitement de langage naturel, et en particulier en natural language understanding (NLU), avec des bibliothèques comme TensorFlow, Scikit-learn, Keras, PyTorch, Theano, NumPy, etc.

Natural language understanding (NLU) vs natural language processing (NLP) : quelle différence ?

Là où le traitement du langage naturel (NLP) vise à convertir des données linguistiques non structurées en un format de données structuré pour permettre aux machines de comprendre le texte, la compréhension du langage naturel (NLU) va se concentrer sur la compréhension de la grammaire et du contexte pour déterminer le sens des mots.

Dictionnaire de l'intelligence artificielle