Article
Pourquoi utiliser le traitement du langage naturel ?
Le traitement du langage naturel, ou NLP, est le futur du traitement de l’information textuelle. Chaque jour, un demi-milliard de tweets, plus de 40 milliards de messages sur WhatsApp et 700 millions sur Messenger sont échangés ou partagés en ligne. Une grande quantité de données textuelles est générée sur tous supports de communication : applications de messagerie, réseaux sociaux, recherches Google, blogs…
Toutes ces sources réunies génèrent en permanence une grande quantité de données textuelles chaque seconde. Comment analyser et comprendre ce volume de données ? C’est là où le traitement du langage naturel (NLP) rentre en jeu.
Qu’est-ce que le langage naturel ?
Le langage naturel est le terme qui désigne le langage humain et toutes ses subtilités, selon la langue parlée (abréviations, argot…). Il s’oppose au langage formel tel que les écritures mathématiques ou le code informatique. Pratiqué au quotidien par tous, le langage naturel nous est intuitif et normal. Pour que les machines comprennent ce langage, nous utilisons des outils dit de NLP.
Le traitement automatique du langage naturel fait référence à la branche de l’Intelligence Artificielle qui donne aux machines la capacité à lire, comprendre et tirer un sens du langage humain.
Les premières méthodes de NLP sont apparues dans les années 50 et se sont popularisées grâce à l’essor des technologies de Deep Learning dans les années 2000. Nous utilisons quotidiennement le NLP, par le correcteur orthographique de notre téléphone portable, la traduction automatique d’une phrase ou pour mettre sa musique préférée grâce à un assistant vocal.
Quel est le principe du traitement du langage naturel ?
Toutes ces technologies utilisent des algorithmes de traitement de langage pour comprendre et traiter nos demandes. Plus formellement, le NLP s’effectue grâce à l’association de deux champs, la linguistique, ou étude du langage, et l’informatique par des algorithmes de traitement.
A quelles problématiques répond le NLP ?
- La Traduction : Le langage naturel étant ambigu et variable, fournir une traduction précise ne repose pas sur un travail de remplacement mot à mot, mais nécessite une véritable analyse et modélisation de texte.
- L’Analyse de sentiments : On utilise aussi le NLP pour identifier les informations subjectives d’un texte comme le niveau de satisfaction des clients vis-à-vis d’un produit fourni par une entreprise.
- Le ciblage marketing : Il s’appuie sur le comportement des internautes sur les sites et les réseaux sociaux et permet d’avoir une vue d’ensemble des tendances. C’est d’ailleurs ce principe qui est utilisé par Amazon dans les choix d’articles « recommandés » ou dans les annonces ciblées par Google pour booster leurs ventes.
- Les Chatbots et assistants vocaux : Les Chatbots utilisant le NLP sont les plus performants des Chatbots sur le marché même s’ils sont complexes à mettre en place. Plus globalement, leur développement s’est accéléré lors de leur mise en place sur Messenger (Facebook) en 2016. Contrairement aux Chatbots sans NLP, ils peuvent aujourd’hui gérer plus que de simples tâches : ils sont fluides et peuvent même apprendre après leur déploiement sur les nouvelles conversations générées.
Comment fonctionne un chatbot ?
Prenons l’exemple d’un couple voulant réserver un hôtel sur un site en ligne. Une conversation avec un chatbot pourrait commencer de cette façon :
Comment le traitement s’est-il effectué ?
1. L’utilisateur exprime son besoin, par exemple « J’aimerais réserver un hôtel d’une semaine avec mon épouse en Europe»
2. Le chatbot analyse la requête et commence son traitement.
- Il segmente la phrase par mot : j’aimerais réserver = j’ + aimerais + réserver
- Et il associe à chaque mot sa racine : j’ + aimerais + réserver = Je + aimer + réserver
Cette action permet de traiter une à une chaque information et d’uniformiser le texte. Si un mot est mal orthographié, il pourra être traité et substitué à ce moment grâce à un dictionnaire interne.
3. Chaque mot sera analysé pour retrouver le contexte de la phrase et y extraire les informations clés de la requête.
L’algorithme va associer mot par mot un ensemble de sens qui par analyse du contexte de la phrase seront supprimés au fur et à mesure.
- Aimer = Sens 1 : éprouver de l’affection ; Sens 2 : vouloir faire une action
- Aimer + réserver + hôtel = Sens 2 : vouloir faire une action
Cette étape permet d’extraire les informations clés de la requête sans ambiguïté.
4. Une fois l’extraction des mots clés terminée, le chatbot va ensuite interroger le serveur pour y trouver toutes les informations nécessaires à la requête (disponibilité d’une chambre d’hôtel).
5. Le chatbot récupère ensuite la réponse du serveur et l’intègre dans une réponse personnalisée à la demande initiale. Selon la demande, il déclenche une ou plusieurs actions : ajout dans le panier, réservation ou envoi d’un mail de confirmation.
6. S’il manque des informations pour effectuer une réservation, le chatbot les demandera à l’utilisateur au fur et à mesure de la conversation tout en sauvegardant l’historique de la conversation.
Les Chatbots NLP ont alors ici une mission de bout en bout avec l’utilisateur. Ils se doivent comprendre toutes les questions posées, d’en garder la trace et de savoir y répondre par une action ou une question jusqu’à la fin de l’échange. La diversité des questions et actions possibles met en lumière la complexité qui réside derrière la construction d’un agent conversationnel NLP efficace.
Comment sortir de la complexité du traitement de l'information ?
Selon l’application, comprendre la langue parfaitement est rarement un but en soi. Le plus important pour la machine est par exemple de construire une représentation d’une phrase pour résumer ou traduire un texte. Chacune de ces perspectives permet d’ignorer certains aspects du langage, peu ou pas pertinents.
Malgré une forte complexité au niveau de l’analyse du langage, les nouvelles avancées dans l’Intelligence Artificielle permettent d’avoir aujourd’hui des interfaces hommes-machines fiables et pertinentes pour de nombreux cas d’usages.
Il ne fait aucun doute que l’essor du NLP permettra aux entreprises traitant de vastes quantités de données non structurées de donner de la valeur à des informations qui étaient jusqu’alors non exploitées. Cela nous ouvre de belles perspectives pour les mois et années à venir sur les futurs usages du NLP.