Le traitement du langage naturel vise à créer des machines qui comprennent et répondent à des données textuelles ou vocales, et qui répondent par leur propre texte ou discours, de la même manière que les êtres humains.
IBM Watson Assistant
IBM Watson Discovery
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 ou 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 automatique des langues 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 induit 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 forme de systèmes GPS à commande vocale, d'assistants numériques, de logiciels de conversion parole-texte, d'assistants conversationnels de centre de support 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 rationaliser les opérations business, d'augmenter la productivité des employés et de simplifier les processus métier critiques.
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 programmeurs doivent apprendre aux applications basées sur le langage naturel à reconnaître et à comprendre avec précision dès le départ, si ces applications doivent être 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 :
Consultez l'article de blog « NLP, NLU et NLG : les différences entre trois concepts de traitement du langage naturel » pour un examen plus approfondi de la relation entre ces concepts.
Le langage de programmation Python fournit un large éventail d'outils et de bibliothèques pour exécuter des tâches NLP spécifiques. 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.
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.
Les premières applications NLP étaient des systèmes codés à la main, basés sur des règles, qui pouvaient effectuer certaines tâches 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 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 de neurones convolutifs (CNN) et les réseaux de neurones récurrents (RNN) permettent aux systèmes de traitement automatique des langues d'« apprendre » au fur et à mesure qu'ils travaillent et d'extraire un sens toujours plus précis d'énormes volumes de données textuelles et vocales brutes, non structurées et non étiquetées.
Pour une immersion plus profonde dans les nuances entre ces technologies et leurs approches d'apprentissage, voir « IA, apprentissage automatique, apprentissage en profondeur et réseaux de neurones : Quelle est la différence ? »
Le traitement du langage naturel est le moteur de l'intelligence artificielle dans de nombreuses applications modernes du monde réel. Voici quelques exemples :
Conçu pour les domaines des soins de santé et des sciences de la vie, IBM Watson Annotator for Clinical Data extrait les concepts cliniques clés du texte en langage naturel, comme les conditions, les médicaments, les allergies et les procédures. Des informations contextuelles approfondies et des valeurs pour les attributs cliniques clés permettent d'obtenir des données plus significatives. Les sources de données potentielles comprennent les notes cliniques, les résumés de sortie, les protocoles d'essais cliniques et les données bibliographiques.
Inscrivez-vous pour obtenir un identifiant IBM et créer votre compte IBM Cloud.
Trouvez des réponses et des informations critiques à partir des vos données métier à l'aide de la technologie de recherche d'entreprise optimisée par l'IA.
Le service de traitement du langage naturel pour l'analytique avancée de texte.
Résolvez les problèmes des clients dès la première fois sur n'importe quel canal