Exemple de traitement du langage naturel – Les assistants virtuels
Valérie Bécaert Valérie Bécaert
3 mars 7 min

Exemple de traitement du langage naturel – Les assistants virtuels

Le traitement du langage naturel est peut-être l’une des plus grandes réussites des technologies de l’IA. Il y a à peine dix ans, la plupart des gens auraient considéré l’idée de machines comprenant le langage comme futuriste, issue de la science-fiction. Aujourd’hui, ces technologies sont très répandues, et la plupart d’entre nous les utilisent dans notre vie quotidienne, souvent sans le savoir. En effet, avec l’essor de l’apprentissage machine et de l’intelligence artificielle, les difficultés liées au traitement du langage naturel peuvent désormais être gérées beaucoup plus facilement qu’auparavant. Et il n’y a pas de meilleur exemple de traitement du langage naturel que les assistants virtuels comme Cortana, Siri et Alexa.

Dans cet article, nous abordons les défis que représente le traitement du langage naturel et la manière dont les assistants virtuels les ont relevés.

En quoi consiste le traitement du langage naturel?

Le traitement du langage naturel fait référence aux algorithmes qui permettent aux programmes informatiques de comprendre le langage humain. Le terme « naturel » désigne ici un langage qui évolue de façon organique, comme l’espagnol, plutôt qu’une langue inventée comme le klingon, ou un langage informatique comme JavaScript. La clé ici est le mot « comprendre ».

Depuis des décennies, les machines interagissent avec le langage grâce à des directives rudimentaires, sans comprendre l’intention sémantique du texte. Pensez aux récupérateurs de mots-clés classiques ou aux correcteurs orthographiques. Ils peuvent arriver à associer des mots qui se ressemblent ou à reconnaître qu’un mot se terminant par « -er » est un verbe, mais leur compréhension ne va pas plus loin.

Le processus de traitement du langage naturel d’un assistant virtuel doit comprendre les mots que vous utilisez afin de les traiter. Cela présente une série de nouveaux défis que, jusqu’à récemment, les algorithmes n’étaient pas assez perfectionnés pour relever.

Le défi du traitement du langage naturel

Le traitement des langues naturelles pose des problèmes très similaires à ceux de la traduction automatique. Il est donc logique que les deux technologies se soient améliorées en parallèle au cours des dernières années.

S’il est difficile pour les ordinateurs de nous comprendre, c’est parce que les langues sont complexes, et qu’il y en a beaucoup. Pensez à la quantité de mots que contient une seule langue, puis multipliez cela par le nombre de langues parlées dans le monde. Ensuite, pensez aux différentes façons dont le sens est transmis sans passer par les mots – grammaire, syntaxe, sémantique, niveau de langue, dialecte, ironie... la liste est longue. Il serait impossible pour l’humain de quantifier les règles qui régissent toutes les langues, et encore moins de les enseigner à un algorithme.

Les difficultés liées au traitement du langage naturel étant si nombreuses, si différentes et si complexes, les solutions doivent l’être aussi. Il n’existe pas d’algorithme unique capable d’interpréter le langage. Cependant, une combinaison plus complexe d’algorithmes variés aux objectifs différents, travaillant en harmonie, peut apporter la réponse.

Exemple de traitement du langage naturel : le fonctionnement des assistants virtuels

Bien que la recherche vocale offerte par les assistants virtuels soit l’utilisation la plus connue du traitement du langage naturel, il en existe de nombreuses autres. Mais, quelle que soit l’utilisation, la première étape consiste à convertir la parole en texte que l’algorithme peut comprendre, avant qu’il puisse le traiter. Cela se fait à l’aide d’un algorithme parole-texte.

On pourrait croire que la traduction de la voix en texte est la partie la plus simple du processus. Mais c’est en fait une tâche qui a donné du fil à retordre aux machines pendant des années, et l’un des obstacles les plus importants à un traitement efficace du langage naturel. En fait, c’est l’apprentissage profond qui a fourni la clé ici, un type d’apprentissage machine. Aujourd’hui, lorsque vous demandez à votre assistant virtuel « Où est le restaurant le plus proche? », la machine a une fonction fiable qui convertit l’information audio en quelque chose qu’elle peut traiter.

Vient ensuite le processus de compréhension de la langue. Celui-ci se déroule en deux grandes étapes : l’analyse de la structure, puis celle du sens.

Structure

À ce stade, l’assistant virtuel analyse les mots de votre phrase et la relation entre eux pour comprendre où se trouve l’information importante. Il doit donc déterminer où se trouvent les verbes et les noms, ainsi que d’autres renseignements. À l’aide de techniques comme la racinisation et la lemmatisation, l’ordinateur réduit votre vocabulaire à sa signification première, transformant des phrases comme « s’en allait », « le plus proche » et « des chats » en « aller », « près » et « chat ». En termes linguistiques, cela signifie supprimer les désinences, les conjugaisons et les déclinaisons. Cette simplification de la langue facilite l’analyse plus tard dans le processus.

Ensuite, des techniques comme la segmentation des mots et des phrases sont utilisées pour diviser le texte en parties analysables, et la décomposition syntaxique permet l’analyse grammaticale des sections résultantes.

Sémantique

La sémantique est un terme linguistique qui fait référence à la signification d’un mot. C’est ce qui permet aux gens d’associer les sons et les lettres qui composent le mot « chien » à la créature poilue à quatre pattes que nous connaissons tous.

Dans ce processus, des techniques comme la reconnaissance des entités nommées sont utilisées pour déterminer les parties du texte qui peuvent être identifiées et classées dans des groupes prédéfinis. Encore une fois, si vous demandez où se trouve le restaurant le plus proche, l’assistant doit comprendre à partir de votre discours que vous parlez de « distance » et de « restaurant/nourriture ». Cette technique permet de résumer une phrase relativement complexe en catégories concrètes, du type que les moteurs de recherche sont capables de traiter depuis plusieurs années.

Mais évidemment, tout n’est pas aussi simple. Les significations changent souvent en fonction du niveau de langue, de la signification et du contexte. Le système doit donc utiliser la désambiguïsation du sens des mots et la génération de langage naturel pour comprendre une sémantique plus complexe, en fonction du contexte et de la structure plus générale de la phrase. Ces processus permettent aux assistants vocaux de convertir des commandes comme « Où est-ce qu’on peut bien manger ici » en éléments « distance » et « restaurant », comme s’il s’était agi d’une commande plus simple comme « Trouver le restaurant le plus proche ».

Une fois ces processus effectués, il est facile pour l’assistant vocal de demander aux applications ou aux moteurs de recherche d’agir comme ils l’ont toujours fait. Une fois le résultat trouvé, les algorithmes sont utilisés en sens inverse pour reconvertir ces données en langage humain compréhensible.

Un avenir pour le traitement du langage naturel

Ce qui est peut-être le plus fascinant dans le traitement du langage naturel, c’est la façon dont il a rendu plus harmonieuse et dynamique la manière fondamentale dont nous interagissons avec la technologie, en nous évitant d’avoir à taper l’information. Au fur et à mesure que la technologie s’améliore, nous verrons des changements encore plus profonds dans la façon dont elle est utilisée, et notre relation classique avec la technologie se transformera encore davantage.

Le traitement du langage naturel a fait des progrès considérables ces dernières années, mais il reste encore beaucoup de chemin à parcourir. La question qui se pose maintenant est la suivante : où allons-nous maintenant?