L'une des étapes les plus courantes lors de la création d'un robot consiste à définir des "intentions".
Une intention peut être "réinitialiser mon mot de passe", "réserver un vol" ou "contacter l'assistance". Le développeur du robot doit entrer dans le logiciel plusieurs phrases qui ont toutes la même signification que l'intention. Par exemple, "Je veux m'envoler pour Paris" serait l'une de ces phrases pour l'intention "réserver un vol".
En général, les plateformes de développement de robots demandent aux utilisateurs de saisir de nombreuses phrases pour une intention donnée. Ces phrases constituent des données d'entraînement pour l'algorithme de traitement du langage naturel (NLP).
L'algorithme NLP est un algorithme d'apprentissage automatique qui s'entraîne sur les données afin de pouvoir reconnaître des phrases ayant le même sens mais des mots différents (par rapport aux données d'apprentissage).
L'algorithme NLP utilise les données d'intention fournies par le développeur du robot ainsi qu'un vaste corpus de données concernant la langue (sur lequel il a été formé précédemment) pour calibrer son modèle interne afin de pouvoir reconnaître de nouvelles phrases.
Plus le développeur du chatbot donne d'exemples à l'algorithme NLP, plus il sera capable de reconnaître avec précision le même sens dans d'autres phrases formulées différemment. C'est du moins le message transmis aux développeurs de chatbots.
Le problème est que toutes les données de formation ne sont pas égales. La qualité des données compte autant que la quantité.
Par exemple, imaginons que je veuille créer une intention appelée "réinitialiser mon mot de passe".
L'auteur d'un robot pourrait commencer à créer les phrases suivantes :
Réinitialiser mon mot de passe
J'ai oublié mon mot de passe
Mon mot de passe ne fonctionne pas
Nouveau mot de passe
Problème de mot de passe
Etc.
Le problème avec ce qui précède est que toutes les phrases utilisent le même mot "mot de passe". Cela signifie que lorsque l'algorithme s'entraîne sur ces données, il discerne la règle selon laquelle si le mot "mot de passe" figure dans la phrase, l'intention est "réinitialiser mon mot de passe". Bien entendu, cette règle est erronée. Les gens peuvent dire beaucoup d'autres phrases sans le mot "mot de passe" qui ont la même signification que "réinitialiser mon mot de passe". Il existe également de nombreuses phrases contenant le mot "mot de passe" qui ne signifient pas "réinitialiser mon mot de passe".
Dans le monde des algorithmes, ce problème est appelé suradaptation aux données d'apprentissage. L'algorithme s'est surajouté au mot "mot de passe" et "croit" donc que toute phrase contenant le mot "mot de passe" signifie "réinitialiser mon mot de passe".
Il existe d'autres exemples de ce type pour la même intention. Par exemple, le développeur du robot pourrait saisir les phrases suivantes :
Mes données d'identification ne fonctionnent pas
Mon login ne fonctionne pas
Mon mot de passe ne fonctionne pas
Mon nom d'utilisateur ne fonctionne pas.
Etc.
Il s'agit bien sûr d'un exemple plus extrême du problème, mais le schéma est courant lors de la création de données d'entraînement. Une fois de plus, l'algorithme s'adaptera trop aux données, mais cette fois-ci à la phrase "ne fonctionne pas".
La solution est, je l'espère, évidente. Chaque phrase des données de formation doit être aussi différente que possible des autres phrases de l'ensemble de données. Par exemple :
Mes informations d'identification ne fonctionnent pas.
J'ai besoin d'une réinitialisation de mon mot de passe.
Comment résoudre mon problème de connexion ?
Qui peut m'aider à me connecter au système ?
Etc.
Bien entendu, la création d'un ensemble de données tel que celui présenté ci-dessus demande plus d'efforts. Il peut même être utile d'ouvrir un thésaurus pour trouver des synonymes afin de stimuler les idées de phrases.
L'autre façon pour les développeurs de robots de surmonter ce problème est d'avoir accès aux données de chat du service clientèle, qui fournissent de nombreux exemples de toutes les façons dont un vrai client poserait la même question. Ces données peuvent être extrêmement précieuses.
La question se pose de savoir quand les algorithmes de NLP seront capables de fonctionner correctement sur un petit ensemble de données d'entraînement. Il serait certainement préférable que le robot fonctionne parfaitement en n'utilisant qu'un petit ensemble de données. Les chercheurs travaillent actuellement sur cette question, car elle permettrait non seulement de réduire le temps et les efforts nécessaires à la création de chatbots, mais aussi d'en améliorer considérablement la qualité.
L'algorithme NLP est une boîte noire pour la plupart des développeurs de robots. Il est cependant important qu'ils comprennent les bases du fonctionnement de l'algorithme afin de savoir quel type de données d'entraînement (données d'intention) ils doivent fournir à l'algorithme pour obtenir les meilleurs résultats.
Partager ce message sur :
Créez gratuitement votre propre chatbot d'IA personnalisé
Commencez à créer un robot GPT personnalisé grâce à notre interface intuitive de type "glisser-déposer".
Commencez - c'est gratuit ! 🤖Aucune carte de crédit n'est requise
Restez au courant des dernières nouveautés en matière d'IA chatbots