Analyse de la qualité du chatbot dans IBM Watson Assistant



Créer un assistant virtuel qui ferait bien aujourd'hui la tâche de l'entreprise n'est malheureusement pas un processus aussi simple que nous le souhaiterions. Tout d'abord, il est loin d'être toujours évident pourquoi le bot de chat fait des erreurs et, plus important encore, il n'est pas clair comment ces erreurs peuvent être minimisées dans le court laps de temps alloué pour le développement et le lancement de la plateforme.

Grâce au développement continu des produits, l'équipe IBM Watson Assistant essaie de rendre le processus de création et de démarrage d'un assistant virtuel aussi simple que possible. Aujourd'hui, nous parlons du carnet d'analyse des compétences de dialogue- Un framework pour Python qui vous permet de développer rapidement un assistant d'IA de haute qualité dans IBM Watson. Peu importe que vous créiez votre premier chatbot ou que vous soyez un expert dans le domaine de la création d'assistants virtuels, en tout cas, ce framework vous aidera si vous avez des questions:

  • Quelle est l'efficacité de mon chat bot?
  • Comment mesurer l'efficacité d'un assistant?
  • Pourquoi le bot ne répond pas correctement aux questions?
  • Comment augmenter le niveau de compréhension des questions par l'assistant?

Comment ça fonctionne?


Ensuite, nous allons vous montrer quelques exemples de tâches qui peuvent être résolues en utilisant le framework. Vous pouvez essayer vous-même ses fonctionnalités en téléchargeant à partir du référentiel GitHub . Les exemples utilisés dans l'article sont donnés en anglais, mais vous pouvez utiliser le russe pour la formation et la vérification du chatbot.

Remarque: ce matériel est destiné à ceux qui ont une compréhension de base de la création de robots de conversation sur la plateforme IBM Watson Assistant. Si vous n'êtes pas familier avec notre plateforme ou si vous souhaitez apprendre à créer des assistants virtuels de haute qualité basés sur IBM Watson, nous vous invitons à des séminaires de formation gratuits qui se tiendront à Moscou et à Saint-Pétersbourg en mars 2020, y compris un atelier pratique de deux jours sur la création d'assistants virtuels.

Partie 1: Analyse des données de formation


Nous utiliserons le cas de test «Customer Care», disponible dans l'assistant Watson, dans lequel le chatbot est formé pour reconnaître les questions sur le magasin, par exemple: «Où est situé votre magasin?» ou "À quelle heure ouvre-t-il?" et les affecter aux intentions Customer_Care_Store_Location et Customer_Care_Store_Hours

Immédiatement après le chargement du script, vous pouvez démarrer l'analyse des expressions, ce qui vous permettra de détecter et de corriger les erreurs critiques telles que la corrélation d'un mot ou d'une phrase simultanément avec plusieurs intentions, ce qui garantira des erreurs dans le processus d'utilisation de l'assistant.



Partie 2: Analyse des compétences conversationnelles


Lorsque vous créez une compétence conversationnelle pour la première fois, vous pouvez tester son travail à l'aide du panneau Essayer dans Watson Assistant pour évaluer la capacité de l'assistant à prédire si un texte appartiendra à une intention spécifique.



Il est certainement pratique de vérifier si votre robot de chat fonctionne ou de montrer un exemple de son travail au client. Cependant, pour vérifier la qualité du travail de l'assistant, cette approche est totalement inadaptée en raison de l'impossibilité de l'automatisation. Les utilisateurs peuvent poser la même question de dizaines de manières différentes, et même si vous pouvez prédire toutes les combinaisons possibles, une telle vérification et analyse manuelles prendra trop de temps.

Au lieu de cela, nous vous suggérons d'utiliser la deuxième partie de notre cadre, qui vous aidera à analyser vos compétences de dialogue en utilisant un échantillon de test qui comprend des exemples supplémentaires pour chacune des intentions que vous devez trouver vous-même. L'unicité est obligatoire pour les éléments de cet exemple - ils ne doivent pas chevaucher les exemples sur lesquels le chat bot a été formé, sinon il connaîtra les bonnes réponses et la vérification n'aura aucun sens.

L'évaluation est effectuée selon les métriques suivantes: précision, précision, rappel et mesure F1.



Considérez la rubrique d'aide:

  • Une valeur de rappel élevée de [100%] indique que l'affiliation des phrases d'essai à cette intention a été reconnue de façon absolument correcte.
  • La valeur de précision [66,67%] montre que certaines phrases de test liées à d'autres intentions ont été reconnues par le modèle comme liées à l'intention d' aide . Il est nécessaire de prêter attention à cela en ajustant l'échantillon d'apprentissage pour obtenir un résultat plus élevé
  • La mesure F1 [80%] est une métrique généralisée compte tenu des valeurs de précision et de rappel qui rendent compte de la qualité globale du modèle à l'étude.

Partie 3. Analyse avancée


La troisième partie du framework ouvre des opportunités pour une analyse approfondie de votre solution de dialogue. En utilisant les fonctions qui y sont implémentées, vous pouvez découvrir pourquoi une phrase particulière a été reconnue par erreur.

Prenons un exemple de visualisation de l'importance relative des mots dans une phrase.

Remarque
, , : Customer_Care_Store_Location, Cancel, Customer_Care_Appointments General_Connect_to_Agent, Thanks, Customer_Care_Store_Hours, General_Greetings, Help

Avec un fonctionnement absolument correct, l'assistant doit raconter la phrase "Si vous êtes fermé dimanche, pouvez-vous m'attacher pour demain après-midi?" à l'intention de Customer_Care_Appointments , car l'utilisateur demande une réunion le dimanche soir. Cependant, pour le moment, cette offre appartient à l'intention de l'assistant Customer_Care_Store_Hours .

En regardant le diagramme, il devient clair qu'une telle réponse est justifiée par la présence dans la phrase des mots "fermé" et "après-midi" liés à l'intention Customer_Care_Store_Hours et en même temps ce manque de mots dans la phrase qui pourrait indiquer qu'ils appartiennent à l'intention nécessaire.
La fonctionnalité du cadre vous permet d'identifier les mots clés dans une phrase que l'assistant «perçoit» comme le plus important, ce qui signifie que vous pouvez facilement déterminer la cause de l'erreur et la corriger.

Conclusion


Les exemples présentés dans l'article ne sont qu'une petite partie de toutes les fonctionnalités de notre nouveau framework. Nous espérons que cela vous aidera à accélérer et à simplifier le processus de création d'un assistant intelligent.

Comment accéder au framework?


Vous pouvez le télécharger à partir du référentiel GitHub ici .

Pour ceux qui ne veulent pas ou ne peuvent pas télécharger le cadre ou exécuter IPython Notebook, nous avons créé une version en ligne du cadre, disponible dans la galerie IBM via le lien . Une telle version en ligne peut être lancée dans le cloud IBM dans le cadre du service Watson Studio.

All Articles