Análise da qualidade do chatbot no IBM Watson Assistant



Criar um assistente virtual que faria um bom trabalho na tarefa comercial hoje, infelizmente, não é um processo tão simples quanto gostaríamos. Em primeiro lugar, está longe de ser sempre óbvio o motivo pelo qual o bot de bate-papo comete erros e, mais importante, não está claro como esses erros podem ser minimizados no curto espaço de tempo alocado para o desenvolvimento e o lançamento da plataforma.

Por meio do desenvolvimento contínuo do produto, a equipe do IBM Watson Assistant está tentando simplificar o processo de criação e ativação de um assistente virtual. Hoje falamos sobre o Notebook Dialog Skill Analysis- Uma estrutura para Python que permite desenvolver rapidamente um assistente de IA de alta qualidade no IBM Watson. Não importa se você está criando seu primeiro chatbot ou se é um especialista na área de criação de assistentes virtuais; em qualquer caso, essa estrutura o ajudará se você tiver dúvidas:

  • Qual é a eficácia do meu bot de bate-papo?
  • Como posso medir a eficácia de um assistente?
  • Por que o bot responde às perguntas incorretamente?
  • Como aumentar o nível de entendimento das perguntas pelo assistente?

Como funciona?


A seguir, mostraremos alguns exemplos de tarefas que podem ser resolvidas usando a estrutura. Você pode experimentar seus recursos fazendo o download no repositório do GitHub . Os exemplos usados ​​no artigo são fornecidos em inglês, mas você pode usar o russo para treinar e verificar o chatbot.

Nota: este material é destinado a quem possui um entendimento básico da criação de bots de bate-papo na plataforma IBM Watson Assistant. Se você não está familiarizado com a nossa plataforma ou gostaria de aprender como criar assistentes virtuais de alta qualidade com base no IBM Watson, convidamos você a seminários de treinamento gratuitos que serão realizados em Moscou e São Petersburgo em março de 2020, incluindo um workshop prático de dois dias sobre a criação de assistentes virtuais.

Parte 1: Análise de dados de treinamento


Usaremos o caso de teste "Atendimento ao Cliente" disponível no Watson Assistant, no qual o chatbot é treinado para reconhecer perguntas da loja, por exemplo: "Onde está localizada sua loja?" ou "A que horas abre?" e atribua-os às intenções Customer_Care_Store_Location e Customer_Care_Store_Hours

Imediatamente após carregar o script, você poderá iniciar a análise de expressões, o que permitirá detectar e corrigir erros críticos, como a correlação de uma palavra ou frase simultaneamente com várias intenções, o que garante erros no processo de utilização do assistente.



Parte 2: Análise de habilidades de conversação


Ao criar uma habilidade de conversação pela primeira vez, você pode testar seu trabalho usando o painel Experimentar no Watson Assistant para avaliar a capacidade do assistente de prever se um texto pertence a uma intenção específica.



Certamente é conveniente verificar se o seu bot de bate-papo funciona ou mostrar um exemplo do seu trabalho ao cliente. No entanto, para verificar a qualidade do trabalho do assistente, essa abordagem é completamente inadequada devido à impossibilidade de automação. Os usuários podem fazer a mesma pergunta de dezenas de maneiras diferentes e, mesmo que você possa prever todas as combinações possíveis, essa verificação e análise manuais levarão muito tempo.

Em vez disso, sugerimos que você use a segunda parte de nossa estrutura, que o ajudará a analisar as habilidades de conversação usando uma amostra de teste que inclui exemplos adicionais para cada uma das intenções que você deve ter. A exclusividade é obrigatória para os elementos desta amostra - eles não devem se sobrepor aos exemplos nos quais o bot de bate-papo foi treinado, caso contrário, ele saberá as respostas corretas e a verificação não fará sentido.

A avaliação é realizada de acordo com as seguintes métricas: Exatidão, Precisão, Rechamada e Medida F1.



Considere o tópico da Ajuda:

  • Um alto valor de Recall de [100%] indica que a afiliação das sentenças de teste a essa intenção foi reconhecida de maneira absolutamente correta.
  • O valor de precisão [66,67%] indica que algumas frases de teste relacionadas a outras intenções foram reconhecidas pelo modelo como relacionadas à intenção da Ajuda . É necessário prestar atenção nisso, ajustando a amostra de treinamento para obter um resultado mais alto
  • A medida F1 [80%] é uma métrica generalizada, considerando que os valores de Precision and Recall reportam a qualidade geral do modelo em estudo.

Parte 3. Análise Avançada


A terceira parte da estrutura abre oportunidades para uma análise estendida da sua solução de diálogo. Usando as funções implementadas nele, você pode descobrir por que uma sentença específica foi reconhecida por engano.

Considere um exemplo de visualização da importância relativa das palavras em uma frase.

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

Com uma operação absolutamente correta, o assistente deve relacionar a frase "Se você estiver fechado no domingo, pode me trancar amanhã à tarde?" com a intenção Customer_Care_Appointments , pois o usuário solicita uma reunião no domingo à noite. No entanto, no momento, esta oferta pertence à intenção do assistente Customer_Care_Store_Hours .

Observando o diagrama, fica claro que tal resposta é justificada pela presença na frase das palavras “fechado” e “tarde” relacionadas à intenção Customer_Care_Store_Hours e ao mesmo tempo essa falta de palavras na frase que possam indicar que elas pertencem à intenção necessária.
A funcionalidade da estrutura permite identificar palavras-chave na frase que o assistente “percebe” como as mais importantes, o que significa que você pode determinar facilmente a causa do erro e corrigi-lo.

Conclusão


Os exemplos mostrados no artigo são apenas uma pequena parte de todos os recursos de nossa nova estrutura. Esperamos que ele ajude a acelerar e simplificar o processo de criação de um assistente inteligente.

Como acessar a estrutura?


Você pode baixá-lo no repositório do GitHub aqui .

Para aqueles que não desejam ou não podem fazer o download da estrutura ou executar o IPython Notebook, criamos uma versão online da estrutura, disponível na Galeria IBM através do link . Essa versão online pode ser lançada na nuvem IBM como parte do serviço Watson Studio.

All Articles