Chatbots et traitement du langage naturel

Un des vieux rêves de l’homme est de se cloner artificiellement dans une machine. Le Turc mécanique était la première tentative de cet anthropomorphisme de la machine, tout en étant une escroquerie, mais c’est une autre histoire. L’intelligence artificielle avance inexorablement au fur et à mesure de sa digestion de données et propose de nombreuses fonctionnalités anthropomorphiques, dont la compréhension d’un texte, sa traduction éventuelle et la réponse qu’elle peut fournir. La compréhension d’un texte n’est pas chose simple. Il suffit de voir combien de temps il faut à un être humain normalement constitué pour pouvoir comprendre et analyser un texte, même simple. Ce sont des années d’exposition à une langue, puis l’apprentissage de ses règles et enfin la capacité d’analyse du contexte et des nuances. J’en donne quelques exemples dans mon livre L’intelligence artificielle avec AWS.

Cependant, une des beautés de l’IA est sa capacité à apprendre vite et bien, d’autant mieux qu’elle dispose d’un corpus de données important. Quand il s’agit de langage et de texte, l’homme en produit des pétaoctets tous les jours et ce n’est donc pas ce qu’il manque. C’est ainsi que les grands du secteur, GAFAM et BAT, ont mis au point des algorithmes de traitement du langage naturel assez bluffant.

La vérité est dans le volume

Pour qu’un algorithme d’apprentissage supervisé fonctionne, il a besoin de données, de beaucoup de données. Beaucoup reste cependant vague… quelques dizaines de milliers de points de données au mimimum, idéalement plusieurs millions voire milliards. C’est une des raisons pour lesquelles les ténors du web sont aussi ceux de l’IA. Depuis toutes ces années où nous leur fournissons gratuitement toutes nos données, le plus souvent à notre insu (c’est aussi une autre histoire), ils ont eu le temps d’y découvrir des tas d’informations intéressantes qu’ils se sont empressés de « monétiser ».

Le fait est que sans un massif volume de données, il n’y a pas d’IA capable d’apprendre de façon dite supervisée. Un texte obéit à des règles, grammaire et orthographe, qu’il est possible de codifier et de mettre sous forme numérique pour les injecter dans un algorithme d’IA. Après quelques passages d’apprentissage plus ou moins long, complexe et complet, notre IA devient capable de comprendre ce qu’on lui dit et de fournir une réponse ou une interaction.

Quelle était la question ?

Posez une question à un moteur de recherche, il va interpréter votre demande et vous fournir un ensemble de réponses, dont la plus pertinente apparaîtra en tête. La notion de pertinence est malheureusement aujourd’hui souvent pervertie par des contingences économiques (les fameux liens sponsorisés ou les publicités ciblées), mais l’idée générale est de fournir une réponse pertinente, point.

Ajoutez un glossaire propre à votre sujet de prédilection et notre IA va compléter son vocabulaire avec les mots et idiomes qui vont la rendre plus pertinente. Injectez-lui une capacité à détecter des émotions et vous avez un ersatz d’humanité. Il ne reste plus qu’à lui adjoindre des capacités de traductions simultanées et vous obtenez la base d’un robot conversationnel. Lex chez Amazon, Azure Bot Service chez Microsoft ou Watson Assistant chez IBM sont des services qui permettent de rapidement et simplement créer des robots conversationnels. On peut parler de conversation en tant que service (CaaS, Conversation as a Service), avec lequel il suffit d’injecter un peu d’intelligence contextuelle pour créer une interface qui en bluffe plus d’un.

De l’art d’être plombier

Si la création du robot est un acte rapide et simple, ce qui va rendre ce dernier puissant est son interfaçage avec les autres systèmes. On passe alors de la conversation à l’action. Une question ou une recherche peut engendrer une commande qui va déclencher un paiement et une livraison. La possibilité de programmer des actions sans se préoccuper de l’infrastructure sous-jacente, merci le serverless, permet de démultiplier la puissance de la parole. Les Fonctions d’Azure ou Lambda d’AWS font partie de ces moyens d’interfaçage à la disposition des développeurs.

Le développeur (full stack ou pas) devient alors un plombier, qui fait se rejoindre des tuyaux en y adaptant des manchons personnalisés. C’est ainsi qu’en quelques clics et lignes de code, on fait se rejoindre interface conviviale en langage naturel et CRM, ERP ou autre base de données. Si cela ressemble à de la magie, allez voir et tester les exemples de robots conversationnels mis en ligne par les sociétés susnommées.

Ultime beauté, les mécanismes d’apprentissage renforcé permettent d’améliorer les systèmes au fil du temps. Ainsi, on dispose d’un robot qui continue d’apprendre, travaille 24 heures sur 24, 7 jours sur 7, n’est pas syndiqué et ne fait jamais grève. Rêve ou cauchemar, il s’agit d’une réalité qu’il est difficile d’ignorer et qu’il convient d’utiliser. Comme avec toute avancée technologique, si vous ne faites pas, votre concurrent le fera et il sera alors sans doute trop tard.

Crédit photo NeONBRAND sur Unsplash

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Fièrement propulsé par WordPress | Thème : Baskerville 2 par Anders Noren.

Retour en haut ↑

%d blogueurs aiment cette page :