Parlez-vous NLP ?
Les anglophones communiquent en anglais, les francophones en français et les hispaniques en espagnol.
Ainsi pour parler entre eux, les êtres humains utilisent le langage naturel ; mais comment peuvent-ils communiquer avec les ordinateurs ?
Les langages de programmation sont réservés à l’élite qu’est la partie de la population appelée « développeurs ». Pour permettre aux « gens normaux » de communiquer avec un programme informatique, deux cas de figures sont possibles :
- Leur apprendre le langage des ordinateurs, ce qui sur le papier est loin d’être la solution la plus adaptée. Dire « coucou toi » en binaire reviendrait à écrire « 01000011 01101111 01110101 01100011 01101111 01110101 00100000 01110100 01101111 01101001 ».
- Apprendre aux ordinateurs à comprendre le langage naturel. Ce domaine se nomme le Natural Language Processing (NLP), ou traitement automatique du langage naturel, mais c’est toujours plus classe en anglais.
Vous avez dit le NLP ?
Le NLP est le domaine regroupant les techniques permettant à un programme informatique de comprendre et d’analyser le langage naturel. Il dispose de deux composantes principales :
- La NLU (Natural Language Understanding), la composante chargée de la compréhension du langage naturel.
- La NLG (Natural Language Generation), la composante chargée de générer du langage naturel ; certaines intelligences artificielles sont capables par exemple d’écrire des scénarios de films. L’IA nommée Benjamin, conçue par le chercheur Ross Goodwin et le réalisateur Oscar Sharp, a créé le scénario du court métrage Sunspring.
Dire bonjour, un souci pour le NLP ?
Le Natural Language Processing étant un algorithme qui fait ce que l’on lui demande, il se retrouve confronté au problème de l’ambigüité du langage naturel. En effet, un algorithme est une suite d’instructions à exécuter sans ambigüité. Or le langage naturel est tout sauf non-ambiguë. Un mot peut avoir plusieurs significations en fonction du contexte. Par exemple, le mot « opéra » est à la fois un verbe (opérer) et un nom. Par ailleurs, on peut utiliser plusieurs mots pour dire la même chose. Pour dire bonjour, on peut utiliser « bonjour », « salut », « hey », « hello », « yo », « wesh », « coucou » …
Dans le cas d’un chat on peut aussi dire « bjr », « slt », « wsh », « cc », etc. Le fait d’abréger des mots rend la compréhension du texte encore plus complexe pour un programme informatique. Un autre soucis auquel est confronté le NLP est la coréférence. Prenons l’exemple suivant : « J’aime ce film Harry Potter car il me rappelle mon enfance » a-t-il dit. Pour nous humains, la compréhension de cette phrase est simple : le premier « il » renvoie au « film Harry Potter » et le second renvoie au « j’». Cette analyse n’est pas si évidente pour un programme informatique. A cela s’ajoutent l’alphabet et la syntaxe grammaticale qui varient en fonction des langues, les abus de langage et les nouveaux mots (tel que zlataner). En bref, parler une langue est déjà une prouesse intellectuelle. Si vous êtes capable de me lire et de me comprendre, vous êtes un génie. Du moins, vous battez l’intelligence artificielle sur ce point.
Un robot qui parle comme un humain ?
Le NLP est notamment présent dans le domaine des chatbots. En mai 2018, Google a présenté Google Duplex. Cet agent conversationnel est capable de prendre un rendez-vous par téléphone sans que la personne au bout du fil ne s’aperçoive qu’elle ne parle pas avec un humain. D’après Google, il est capable de gérer quatre appels sur cinq. S’il ne parvient pas à comprendre son interlocuteur, l’appel est redirigé vers un centre d’appel où un humain prend le relais. La présentation avait impressionné car elle montrait non seulement une bonne compréhension du langage naturel (NLU), mais surtout une maîtrise de la génération automatique de langage (NLG). Dans tous les cas, les agents conversationnels, bien qu’utiles et impressionnants dans certains cas, sont loin de leur potentiel maximal.
Le Siri du futur, un Jarvis Jr
« Eh Siri, tu ne veux pas trouver un job d’été pour ma fille à Singapour ? Fais-lui sa lettre de motivation, puis fais lui trois CV différents selon les boîtes afin de bien souligner ce que les boîtes peuvent vouloir. Et puis fais que cela soit compatible avec sa compétition équestre. Et enfin, trouve lui l’appartement le mieux placé en fonction du job que tu lui auras trouvé ! », Idriss Aberkane dans Regards Connectés, épisode 32.
Ça a l’air d’être de la science-fiction, pourtant nous y arrivons à grands pas. Aujourd’hui des IA sont capables de prendre des rendez-vous sans problème et d’écrire des scénarios de court métrage. Alors pourquoi ne pas accomplir ce genre de demande ? C’est le rôle de l’IA d’accomplir en quelques minutes des tâches qui nous prendraient énormément de temps.
Même si nous avons connu de nombreuses avancées dans le domaine de l’intelligence artificielle, cette dernière est encore loin du niveau de l’intelligence humaine. Bien que souvent diabolisée, l’IA sera (comme le téléphone portable et internet) domestiquée et popularisée. Il ne sera pas rare de voir des agents conversationnels être de réels assistants personnels.