# Compréhension du langage naturel

La compréhension du langage naturel (NLU en anglais) ou l'interprétation du langage naturel (NLI) est une branche du traitement automatique des langues en intelligence artificielle qui traite de la compréhension de texte. La compréhension du langage naturel est encore considérée dans les années 2010 comme un problème difficile en IA.
Il existe un intérêt commercial considérable dans ce domaine en raison de son application à la collecte de nouvelles, à la catégorisation des textes, à l'activation vocale, à l'archivage et à l'analyse de contenu à grande échelle.

## Historique

Le programme STUDENT, écrit en 1964 par Daniel Bobrow pour sa thèse de doctorat au MIT, est l'une des premières tentatives de compréhension du langage naturel par un ordinateur$^,$$^,$$^,$$^,$. Huit ans après que John McCarthy a inventé le terme d'intelligence artificielle, la dissertation de Bobrow (intitulée Natural Language Input for a Computer Problem Solving System) a montré comment un ordinateur peut comprendre un langage naturel simple pour résoudre des problèmes de mots algébriques.
Un an plus tard, en 1965, Joseph Weizenbaum du MIT a écrit ELIZA, un programme interactif qui portait sur un dialogue en anglais sur n'importe quel sujet, le plus populaire étant la psychothérapie. ELIZA a travaillé par simple analyse et par substitution de mots clés dans des phrases en boîte et Weizenbaum a évité le problème de donner au programme une base de données de connaissances du monde réel ou un riche lexique. ELIZA a pourtant acquis une popularité surprenante et peut être considérée comme un précurseur très précoce des systèmes commerciaux relativement plus récents tels que ceux utilisés par Ask.com.
En 1969, Roger Schank à l'Université de Stanford a présenté la théorie de la dépendance conceptuelle pour la compréhension du langage naturel. Ce modèle, en partie influencé par le travail de Syndney Lamb, a été largement utilisé par les étudiants de Schank à l'Université de Yale, tels que Robert Wilensky, Wendy Lehnert, et Janet Kolodner.
En 1970, William A. Woods a introduit le réseau de transition augmentée (ATN) pour représenter la contribution du langage naturel. Au lieu des règles de structure de phrase, les ATN utilisaient un ensemble équivalent d'automates d'états finis appelés récursivement. Les ATN et leur format plus général appelé « ATN généralisé » ont continué à être utilisés pendant un certain nombre d'années.
En 1971, Terry Winograd a terminé l'écriture de SHRDLU pour sa thèse de doctorat au MIT. SHRDLU pouvait comprendre des phrases anglaises simples dans un monde restreint de blocs d'enfants pour diriger un bras robotisé pour déplacer des objets. La démonstration réussie de SHRDLU a fourni un élan important pour poursuivre la recherche sur le terrain. Winograd a continué d'exercer une influence majeure sur le terrain avec la publication de son livre Language as a Cognitive Process. À Stanford, Winograd sera plus tard le conseiller de Larry Page, qui a co-fondé Google.
Dans les années 1970 et 1980, le groupe de traitement des langues naturelles de SRI International a poursuivi ses activités de recherche et développement sur le terrain. Des efforts commerciaux axés sur la recherche ont été entrepris, par exemple, en 1982, Gary Hendrix a formé Symantec Corporation à l'origine en tant que société pour développer une interface en langage naturel pour les requêtes de base de données sur les ordinateurs personnels. Cependant, avec l'avènement des interfaces utilisateur graphiques pilotées par la souris, Symantec a changé de direction. D'autres efforts commerciaux ont été lancés à peu près au même moment, par exemple par Larry R. Harris à l'Artificial Intelligence Corporation et Roger Schank et ses étudiants à Cognitive Systems corp$^,$. En 1983, Michael Dyer a développé le système BORIS à Yale, ce qui était à rapprocher des travaux de Roger Schank et W. G. Lehnart.
Le troisième millénaire a vu l'introduction de systèmes utilisant l'apprentissage automatique pour la classification des textes, comme Watson d'IBM. Cependant, il ne s'agit pas de compréhension du langage naturel. Selon John Searle, Watson n'a même pas compris les questions.
John Ball, cogniticien et inventeur de la Pathom Theory soutient cette évaluation. Le traitement du langage naturel a fait des percées dans les applications pour soutenir la productivité humaine dans le service et le commerce électronique, mais cela a été largement rendu possible en réduisant la portée de l'application.Il y a des milliers de façons de demander quelque chose dans un langage humain qui défie encore le traitement conventionnel du langage naturel. Selon Wibe Wagemans, « avoir une conversation significative avec les machines n'est possible que si l'on associe chaque mot à la signification correcte en fonction des significations des autres mots de la phrase - tout comme un enfant de 3 ans ne fait aucune conjecture. »

## Étendue et contexte

Le terme générique « compréhension du langage naturel » peut être appliqué à un ensemble d'applications informatiques variées, allant de petites tâches relativement simples comme des commandes courtes soumises à des robots à des tâches complexes telles que la compréhension d'articles de journaux ou de poèmes. De nombreuses applications du monde réel se situent entre les deux extrêmes, par exemple la classification de texte pour l'analyse automatique des courriels et leur acheminement vers un département approprié dans une société ne nécessite pas une compréhension approfondie du texte, mais doit traiter un vocabulaire beaucoup plus large et une syntaxe plus diverse que la gestion des requêtes simples dans une base de données dont les schémas sont fixes.
Au fil des ans, diverses tentatives de traitement de phrases en langage naturel ou en anglais présentées à des ordinateurs ont eu lieu à divers degrés de complexité. Certaines tentatives n'ont pas abouti à des systèmes avec une compréhension profonde, mais ont contribué à la convivialité globale du système. Par exemple, Wayne Ratliff a développé à l'origine le programme Vulcan avec une syntaxe de type anglais pour imiter l'ordinateur parlant anglais dans Star Trek. Vulcan est devenu plus tard le système dBase dont la syntaxe facile à utiliser a effectivement lancé l'industrie des bases de données informatiques personnelles$^,$. Les systèmes avec une syntaxe facile à utiliser ou en anglais sont, cependant, tout à fait distincts des systèmes qui utilisent un lexique riche et incluent une représentation interne (souvent comme logique de premier ordre) de la sémantique des phrases en langage naturel.
Ainsi, l'ampleur et la profondeur de la « compréhension » visée par un système déterminent à la fois la complexité du système (et les défis impliqués) et les types d'applications qu'il peut traiter. La « largeur » d'un système est mesurée par la taille de son vocabulaire et de sa grammaire. La « profondeur » est mesurée par le degré auquel sa compréhension se rapproche de celle d'un locuteur natif parlant couramment. Au niveau le plus étroit et le moins profond, les interprètes de commande de type anglais exigent une complexité minimale, mais ont un petit nombre d'applications. Les systèmes étroits mais profonds explorent et modélisent des mécanismes de compréhension, mais ils ont encore une application limitée. Les systèmes qui tentent de comprendre le contenu d'un document tel qu'un communiqué de presse au-delà de la simple correspondance des mots clés et de juger de son adéquation à un utilisateur sont plus larges et nécessitent une complexité considérable, mais ils sont encore peu profonds. Les systèmes à la fois très larges et très profonds dépassent l'état actuel de la technique.

## Composants et architecture

Quelle que soit l'approche utilisée, la plupart des systèmes de compréhension du langage naturel partagent certains éléments communs. Le système a besoin d'un lexique du langage, d'un parseur et de règles de grammaire pour fractionner les phrases en une représentation interne. La construction d'un lexique riche avec une ontologie appropriée nécessite un effort important, par exemple, le lexique Wordnet a nécessité de nombreuses années-personnes d'efforts.
Le système a également besoin d'une théorie sémantique pour guider la compréhension. Les capacités d'interprétation d'un système de compréhension du langage dépendent de la théorie sémantique qu'il utilise. Les théories sémantiques concurrentes du langage ont des compromis spécifiques dans leur pertinence comme base de l'interprétation sémantique informatisée. Celles-ci vont de la sémantique naïve ou de l'analyse sémantique stochastique à l'utilisation de la pragmatique pour dériver le sens du contexte$^,$$^,$.
Les applications avancées de la compréhension du langage naturel tentent également d'incorporer l'inférence logique dans leur cadre. Ceci est généralement réalisé en mappant la signification dérivée dans un ensemble d'assertions dans la logique de prédicat, puis en utilisant la déduction logique pour arriver à des conclusions. Par conséquent, les systèmes basés sur des langages fonctionnels tels que Lisp doivent inclure un sous-système pour représenter les assertions logiques, tandis que les systèmes orientés logique tels que ceux utilisant le langage Prolog reposent généralement sur une extension du cadre de représentation logique intégré$^,$.
La gestion du contexte dans la compréhension du langage naturel peut présenter des défis particuliers. Une grande variété d'exemples et de contre-exemples ont abouti à de multiples approches de la modélisation formelle du contexte, chacune avec des forces et des faiblesses spécifiques$^,$.