Traitement du langage naturel : comment l'IA comprend nos langues

Visuel article #22 Virtual Agent conversation

Il est utile de savoir comment une IA comprend les langues pour créer son propre agent virtuel intelligent (AVI) ou sélectionner une plateforme d'IA conversationnelle "prête à l'emploi". Nous parlons bien d'agent virtuel intelligent et non de chatbot, car les compétences en matière de traitement du langage naturel placent les agents virtuels dans une autre catégorie. Voici donc les principaux éléments techniques qui permettent à une IA de comprendre une variété de langues écrites et parlées.

Introduction au NLU et au NLP

Letraitement du langage naturel (TLN) est un sous-domaine de la linguistique, de l'informatique, de l'ingénierie de l'information et de l'intelligence artificielle.Le NLP se concentre sur les interactions entre les ordinateurs et les langues humaines. Il peut utiliser des algorithmes d'apprentissage profond (un sous-ensemble de l'apprentissage automatique) et la reconnaissance vocale pour détecter des modèles dans le langage.

Le mot "naturel" se rapporte aux humains, par opposition aux langages "artificiels" ou "machine" utilisés par les développeurs.

Lacompréhension du langage naturel (NLU) est la première étape nécessaire pour parvenir au traitement du langage naturel. En effet, la compréhension du langage naturel est la science qui consiste à déduire une intention (Intent) et des informations connexes (Entity) à partir de conversations naturelles grâce à l'extraction d'informations.

La compréhension du langage naturel se décompose en trois niveaux linguistiques : la syntaxe (compréhension de la grammaire, dans différentes langues), la sémantique (compréhension du sens) et la pragmatique (compréhension des entités et des intentions).

En voici un exemple

Basé sur l'énoncé (input) d'un utilisateur réel dans une conversation avec l'agent virtuel de Konverso :

Conversation with Konverso's Intelligent Virtual Agent

L'intention de l'utilisateur est de "changer un mot de passe" et "Windows" est une entité. L'agent virtuel a identifié la bonne intention et demande ensuite des précisions sur le mode de connexion.

En fonction de la réponse de l'utilisateur, l'agent virtuel peut envoyer des informations sur "Comment changer un mot de passe Windows via VPN".

Les demandes plus complexes peuvent inclure plusieurs entités relatives à des objets, des dates, des éléments de contexte.

Par exemple, des noms de logiciels, mais aussi des noms spécifiques à une entreprise, comme des références à un portail interne ou des noms de départements.

Identification des entités

Lerôle des entités dans le traitement du langage naturel (NLP) est de collecter des éléments d'information spécifiques auprès de l'utilisateur au cours de la conversation avec l'agent virtuel. Grâce à cette reconnaissance automatique de la parole, une IA conversationnelle peut comprendre l'intention de l'utilisateur et son contexte, afin de déterminer la meilleure réponse à une demande.

Le moteur NLP de Konverso comprend des milliers d'entités liées aux domaines suivants service desk informatique et à la lieu de travail numérique (par exemple pour nos Microsoft Virtual Agent et Service Now Virtual Agent).

Nous utilisons les approches suivantes pour identifier les entités dans l'énoncé de l'utilisateur: Reconnaissance d'entités nommées (NER) basée sur l'apprentissage automatique ; NER basée sur une ontologie d'entités (une description formelle de la connaissance en tant qu'ensemble de concepts dans un domaine et les relations qui existent entre eux) ; et NER basée sur des règles de grammaire.

Comprendre les intentions

La compréhension des interactions humaines repose sur la capacité à identifier l'intention de l'utilisateur, à extraire des informations utiles de ses propos et à les mettre en correspondance avec des actions ou des tâches pertinentes.

Konverso a construit un modèle NLU riche qui permet à notre agent virtuel de détecter les intentions et les entités d'un utilisateur avec une très grande précision grâce à l'analyse sémantique. En fait, la méthode de Konverso est unique car nous utilisons plusieurs moteurs NLP pour traiter l'entrée de l'utilisateur contre plusieurs algorithmes NLU que nous classerons.

En conséquence, l'agent virtuel fera correspondre l'intention de l'utilisateur avec les connaissances les plus pertinentes disponibles dans ses bases de connaissances, ses FAQ ou tout autre contenu d'entreprise auquel il a été autorisé à accéder.

La précision de l'agent virtuel s'améliorera également et intégrera les nouvelles connaissances aux conversations passées avec les utilisateurs grâce à des algorithmes d'apprentissage automatique et à des modèles d'apprentissage.

Comprendre les erreurs humaines

Pour comprendre les langues naturelles, une IA a besoin de plus que du vocabulaire et des règles de grammaire. Une IA conversationnelle doit également comprendre les erreurs humaines, car elles sont inhérentes à la nature humaine.

Cela signifie que pour comprendre pleinement le langage humain, une IA doit reconnaître le type d'erreurs qu'un être humain pourrait commettre au cours d'une conversation ou d'une demande.

Par exemple, nous devons anticiper les fautes d'orthographe de l'utilisateur pour permettre aux agents virtuels d'effectuer des corrections typographiques automatiques dans les entrées.

Pour résoudre ce problème, il est possible d'utiliser une approche typographique pour déterminer la disposition du clavier de l'utilisateur en fonction de sa langue (QWERTY, QWERTZ, AZERTY). L'IA corrigera alors les fautes d'orthographe en fonction des touches rapprochées ou d'autres erreurs typographiques prédictives.

Pour être vraiment précises, ces corrections doivent être effectuées non seulement par rapport à des dictionnaires standard, mais aussi par rapport au corpus intégré de l'agent virtuel et au corpus de l'entreprise.

Le corpus de l'entreprise est constitué de tous les termes personnalisés définis dans les entités extraites et d'autres contenus textuels validés. Par exemple, le nom des départements de l'entreprise, ou les solutions internes, un autre jargon de l'entreprise que les utilisateurs utiliseraient naturellement dans une conversation.

L'utilisation d'un corpus générique sans personnalisation conduit souvent à des corrections "abusives" et rappelle de manière trompeuse à l'utilisateur qu'il parle avec une machine.

Les langues naturelles impliquent aussi le "Small Talk" (conversation à bâtons rompus)

Pour atteindre le niveau maximal de compréhension des langues naturelles et ne pas "ressembler à un robot", un agent virtuel doit également comprendre le "small talk". En effet, le bavardage ou la conversation légère est un moyen naturel de mettre de l'huile dans les rouages d'une interaction et de créer un lien avec les utilisateurs.

Être capable de répondre "super" à une question simple comme "Comment allez-vous" et de répondre "de rien" à un message de remerciement contribue à donner à l'agent virtuel un air plus naturel. C'est aussi une façon de montrer à l'utilisateur qu'il est vraiment entendu et que ses demandes sont comprises, et pas seulement traitées.

Cette capacité à exprimer de l'empathie par le biais de messages sociaux, également appelés "phatiques", est très importante. En particulier dans les contextes où les utilisateurs expriment leur frustration ou ont des idées fausses sur les chatbots.

C'est pourquoi les agents virtuels les plus avancés intègrent des "phatiques" affinées, voire des blagues et la possibilité de parler du temps qu'il fait en fonction de l'endroit où se trouve l'utilisateur.

Small talk with Konverso's Intelligent Virtual Agent

Une conversation bidirectionnelle à plusieurs voix

Nous avons détaillé comment l'IA comprend les langues, mais n'oublions pas que notre véritable objectif est d'avoir un agent virtuel capable de tenir une conversation.

Cela implique la capacité d'identifier non pas une seule intention mais plusieurs intentions et d'orchestrer une conversation et des actions multiples dans un ordre pertinent. Cette capacité est appelée "gestion du dialogue".

Un exemple typique de cette capacité à hiérarchiser les réponses est la manière dont un agent virtuel pourrait d'abord diriger l'utilisateur vers un article de connaissance en "libre-service" avant de proposer une action corrective sur un système.

En cas d'ambiguïté entre plusieurs intentions, l'agent virtuel peut poser des questions de désambiguïsation, proposer des alternatives et poursuivre la conversation pour trouver des solutions plus pertinentes.

Un autre aspect important de l'"intelligence conversationnelle" d'un agent virtuel est sa capacité à gérer les digressions.

Les digressions sont une autre façon très humaine de mener une conversation. Si l'utilisateur décide de sauter certaines questions, l'agent virtuel ne doit pas rester bloqué dans son scénario. Cela signifie que l'agent virtuel doit être capable de revenir à des questions de clarification et de "remplissage de créneaux" (en posant à l'utilisateur des questions spécifiques pour restreindre sa demande) afin de rester concentré sur l'intention de l'utilisateur.

Les défis des langues étrangères

Même si la langue anglaise est largement utilisée dans le monde, il est important de se rappeler que tous les utilisateurs ne peuvent pas avoir des conversations écrites ou vocales en anglais. Pour être considérée comme une "main-d'œuvre numérique" travaillant en véritable partenariat avec les utilisateurs humains, une IA conversationnelle doit donc maîtriser couramment les langues locales.

Pour être multilingue, une IA peut soit intégrer des versions linguistiques spécifiques des capacités NLU et NLG (ensembles d'entraînement, entités, etc.). Elle peut également traduire directement les données saisies par l'utilisateur et les réponses du robot à l'aide d'un composant de traduction automatique.

Avec l'introduction de la traduction automatique neuronale (NMT) dans les techniques de traduction automatique, la qualité de la traduction s'est considérablement améliorée au cours des dernières années. Et cette technologie linguistique s'améliore de mois en mois.

Grâce aux agents virtuels de Konverso, nos clients augmentent la satisfaction des utilisateurs finaux de 80 %.

Contactez notre équipe pour en savoir plus sur les agents virtuels de Konverso.