Qu'est-ce que le traitement du langage naturel ?
Le traitement du langage naturel vise à créer des machines qui comprennent et répondent à des données texte ou vocales, et qui répondent par leur propre texte ou parole, de la même manière que les êtres humains
Arrière-plan noir avec points bleus
Qu'est-ce que le traitement du langage naturel ?

Le traitement du langage naturel (NLP) fait référence à la branche de l'informatique, et plus particulièrement à la branche de l'intelligence artificielle (IA), qui vise à donner aux ordinateurs la capacité de comprendre les textes et les mots prononcés de la même manière que les êtres humains.

Le traitement du langage naturel combine la linguistique informatique (modélisation du langage humain basée sur des règles) avec des modèles statistiques, d'apprentissage automatique et d'apprentissage en profondeur. Ensemble, ces technologies permettent aux ordinateurs de traiter le langage humain sous la forme d'un texte ou sous forme de données vocales et d'en « comprendre » le sens complet, avec l'intention et le ressenti du locuteur ou de l'auteur.

Le traitement du langage naturel fait fonctionner des programmes informatiques qui traduisent des textes d'une langue dans une autre, répondent à des commandes vocales et résument rapidement, voire en temps réel, de gros volumes de texte. Il y a de fortes chances que vous ayez eu affaire au traitement du langage naturel sous la forme de systèmes GPS à commande vocale, d'assistants numériques, de logiciels de dictée vocale, de chatbots de service à la clientèle et d'autres commodités pour les consommateurs. Mais le traitement du langage naturel joue également un rôle croissant dans les solutions d'entreprise qui permettent de simplifier les opérations commerciales, d'augmenter la productivité des employés et de simplifier les processus commerciaux essentiels.

Tâches de traitement du langage naturel

Le langage humain est rempli d'ambiguïtés qui rendent incroyablement difficile l'écriture d'un logiciel capable de déterminer avec précision le sens d'un texte ou de données vocales. Les homonymes, les homophones, le sarcasme, les expressions idiomatiques, les métaphores, les exceptions de grammaire et d'usage, les variations dans la structure des phrases ne sont que quelques-unes des irrégularités du langage humain qui nécessitent de nombreuses années d'apprentissage pour l'homme, mais que les applications basées sur le langage naturel doivent apprendre à reconnaître et à comprendre avec précision dès le départ, si l'on veut qu'elles soient utiles.

Plusieurs tâches de traitement du langage naturel décomposent le texte humain et les données vocales de manière à aider l'ordinateur à donner un sens à ce qu'il ingère. Certaines de ces tâches comprennent :

  • La reconnaissance vocale, également appelée « parole-texte », consiste à convertir de manière fiable des données vocales en données textuelles. La reconnaissance vocale est nécessaire pour toute application qui suit des commandes vocales ou répond à des questions orales. Ce qui rend la reconnaissance vocale particulièrement difficile, c'est la façon dont les gens parlent, rapidement, en déformant les mots, avec des accentuations et des intonations variables, avec des accents différents et en utilisant souvent une grammaire incorrecte.
  • Le marquage des parties du discours, également appelé marquage grammatical, est le processus qui consiste à déterminer la partie du discours d'un mot ou d'un élément de texte particulier en fonction de son utilisation et du contexte. La partie du discours identifie « arrêtés » comme un verbe dans la phrase « ils ont été arrêtés », et comme un nom dans « La municipalité affiche les arrêtés municipaux ».
  • La désambiguïsation du sens d'un mot consiste à sélectionner le sens d'un mot ayant plusieurs significations par un processus d'analyse sémantique qui détermine le mot qui a le plus de sens dans le contexte donné. Par exemple, la désambiguïsation du sens d'un mot permet de distinguer le sens du verbe « faire » dans « faire un gâteau » (confectionner) et « faire un aller-retour » (effectuer).
  • La reconnaissance des entités nommées , ou NEM, identifie les mots ou les phrases comme des entités utiles. NEM identifie le « Kentucky » comme un lieu ou « Fred » comme un nom d'homme.
  • La résolution de coréférence est la tâche qui consiste à identifier si et quand deux mots font référence à la même entité. L'exemple le plus courant consiste à déterminer la personne ou l'objet auquel un certain pronom se réfère (par exemple, « elle » = « Marie »), mais il peut également s'agir d'identifier une métaphore ou une expression idiomatique dans le texte, par exemple, quand un « ours » n'est pas un animal mais une personne désagréable.
  • L'analyse du ressenti tente d'extraire des qualités subjectives telles que les attitudes, les émotions, le sarcasme, la confusion, la suspicion, dans un texte.
  • La génération de langage naturel est parfois décrite comme le contraire de la reconnaissance vocale ou de la conversion de la parole en texte. Il s'agit de traduire des informations structurées en langage humain.

Consultez l'article de blogue « NLP, NLU et NLG : les différences entre trois concepts de traitement du langage naturel » pour mieux comprendre la relation entre ces concepts.

Outils de NLP et approches

Python et le Natural Language Toolkit (NLTK)

Le langage de programmation Python fournit un large éventail d'outils et de bibliothèques pour exécuter des tâches spécifiques de traitement du langage naturel. La plupart d'entre eux se trouvent dans le Natural Language Toolkit, ou NLTK, une collection open source de bibliothèques, de programmes et de ressources pédagogiques de création de programmes NLP.

Le NLTK comprend des bibliothèques pour de nombreuses tâches NLP énumérées ci-dessus, ainsi que des bibliothèques pour des tâches secondaires, telles que l'analyse syntaxique des phrases, la segmentation des mots, la coupure et la lemmatisation (méthodes permettant de réduire les mots à leur racine), et la segmentation en unités (pour décomposer les phrases, paragraphes et passages en unités qui aident l'ordinateur à mieux comprendre le texte). Il comprend également des bibliothèques permettant d'implémenter des fonctionnalités telles que le raisonnement sémantique, c'est-à-dire la capacité de tirer des conclusions logiques à partir de faits extraits d'un texte.

NLP statistique, apprentissage automatique et apprentissage en profondeur

Les premières applications de traitement du langage naturel étaient des systèmes codés à la main, basés sur des règles, qui pouvaient effectuer certaines tâches de NLP, mais ne pouvaient pas être mises à l'échelle facilement pour s'adapter à un flux apparemment sans fin d'exceptions ou aux volumes croissants de données textuelles et vocales.

C'est ici qu'intervient le NLP statistique, qui combine des algorithmes informatiques avec des modèles d'apprentissage automatique et d'apprentissage en profondeur pour extraire, classer et étiqueter automatiquement des éléments de texte et de données vocales, puis attribuer une probabilité statistique à chaque signification possible de ces éléments. Aujourd'hui, les modèles d'apprentissage en profondeur et les techniques d'apprentissage basées sur les réseaux neuronaux convolutifs (CNN) et les réseaux neuronaux récurrents (RNN) permettent aux systèmes NLP d'"apprendre" au fur et à mesure qu'ils travaillent et d'extraire un sens toujours plus précis d'énormes volumes de textes bruts, non structurés et non étiquetés, et d'ensembles de données vocales. 

Pour mieux comprendre les nuances entre ces technologies et leurs approches d'apprentissage, voir « Différence entre l'IA, l'apprentissage automatique, l'apprentissage en profondeur et les réseaux de neurones ».

Cas d'utilisation du NLP

Le traitement du langage naturel est le moteur de l'intelligence artificielle dans de nombreuses applications modernes du monde réel. Voici quelques exemples :

  • Détection du spam : Vous ne pensez peut-être pas que la détection du spam est une solution NLP, mais les meilleures technologies de détection du spam utilisent les capacités de classification de texte du NLP pour analyser les courriers électroniques afin de détecter les termes qui indiquent souvent un spam ou un hameçonnage. Ces indicateurs peuvent inclure l'utilisation excessive de termes financiers, une mauvaise grammaire caractéristique, un langage menaçant, une urgence inappropriée, des noms de sociétés mal orthographiés, etc. La détection du spam est l'un des rares problèmes de NLP que les spécialistes considèrent comme « en grande partie résolus » (bien que que cela ne puisse pas correspondre à votre expérience de la messagerie électronique).
  • Traduction automatique : Google Translate est un exemple de technologie NLP largement disponible. Une traduction automatique vraiment utile ne se limite pas à remplacer des mots d'une langue par des mots d'une autre langue.  Une traduction efficace doit saisir avec précision le sens et le ton de la langue source et le traduire en un texte ayant le même sens et l'impact souhaité dans la langue cible. La précision des outils de traduction automatique s'améliorent de jour en jour. Un excellent moyen de tester un outil de traduction automatique est de traduire un texte dans une langue, puis de revenir à l'original. Un exemple classique souvent cité était, naguère, de traduire « The spirit is willing but the flesh is weak » de l'anglais vers le russe, qui retraduit vers l'anglais donnait « The vodka is good but the meat is rotten. » Aujourd'hui, le résultat est « The spirit desires, but the flesh is weak », ce qui n'est pas parfait, mais inspire beaucoup plus de confiance dans la traduction de l'anglais vers le russe.
  • Agents virtuels et chatbots : Les agents virtuels, tels que Siri d'Apple et Alexa d'Amazon, utilisent la reconnaissance vocale pour reconnaître des modèles dans les commandes vocales et la génération de langage naturel pour répondre par une action appropriée ou des commentaires utiles. Les chatbots ou assistants conversationnels effectuent la même magie en réponse à des saisies de texte. Les meilleurs d'entre eux apprennent également à reconnaître les indices contextuels des demandes humaines et à les utiliser pour fournir des réponses ou des options encore meilleures au fil du temps. La prochaine amélioration de ces applications est la réponse aux questions, c'est-à-dire la capacité de répondre à nos questions, anticipées ou non, par des réponses pertinentes et utiles avec leurs propres mots.
  • Analyse du ressenti sur les médias sociaux : Le traitement du langage naturel est devenu un outil commercial essentiel pour découvrir des informations cachées sur les médias sociaux. L'analyse du ressenti permet d'analyser le langage utilisé dans les messages des médias sociaux, les réponses, les critiques, etc., afin d'extraire les attitudes et les émotions en réponse aux produits, aux promotions et aux événements. Ces informations peuvent ensuite être utilisées par les entreprises dans la conception des produits, les campagnes publicitaires, etc.
  • Synthèse de texte : La synthèse de texte utilise des techniques NLP pour digérer d'énormes volumes de texte numérique et créer des résumés et des synopsis pour les index, les bases de données de recherche ou les lecteurs occupés qui n'ont pas le temps de lire le texte complet. Les meilleures applications de synthèse de texte utilisent le raisonnement sémantique et la génération de langage naturel (NLG) pour ajouter un contexte et des conclusions utiles aux résumés.
Solutions connexes
Watson Natural Language Processing

Trouvez des réponses et des informations stratégiques dans vos données d'entreprise, à l'aide d'une technologie de recherche pour entreprise basée sur l'IA.

Explorer IBM Watson Natural Language Processing
Watson Natural Language Understanding

Le service de traitement du langage naturel pour l'analyse avancée de textes.

Explorer IBM Watson Natural Language Understanding
Watson Assistant

Résoudre les problèmes des clients du premier coup, sur n'importe quel canal.

Explorer IBM Watson Assistant
Pour aller plus loin

IBM a innové dans le domaine de l'intelligence artificielle en créant des outils et des services axés sur le traitement du langage naturel qui permettent aux entreprises d'automatiser leurs processus métier complexes tout en obtenant des informations essentielles. Analysez du texte dans des formats de données non structurés, notamment HTML, des pages Web, des médias sociaux, etc. Développez votre compréhension du langage humain en utilisant ce kit d'outils de langage naturel pour identifier les concepts, les mots-clés, les catégories, la sémantique et les émotions, et pour effectuer la classification de textes, l'extraction d'entités, la reconnaissance d'entités nommées (NER), l'analyse du ressenti et produire des résumés.

Explorer Watson Natural Language Understanding dès aujourd'hui