Esta é uma postagem de blog que acompanha a minha palestra na conferência REWORK, em 28 de abril de 2021. Os slides da palestras estão disponíveis
aqui
.
Compreensão de linguagem natural (CLN) é o componente chave em qualquer sistema de IA de conversa. Normalmente, em um sistema de diálogo orientado para tarefa, o CLN consiste em classificadores para identificar a intenção do usuário e as aberturas e entidades presentes. O gerenciador de diálogo usa essa saída para selecionar o estado apropriado de diálogo e tomar as ações correspondentes para satisfazer a solicitação do usuário. Em alguns casos, não é possível definir claramente uma intenção, ou simplesmente saber a intenção ou entidades presentes na solicitação do usuário pode não oferecer informações o suficiente para o gerenciador de diálogo tomar a ação ideal. Por exemplo, considerando a seguinte interação do usuário com um robô para um site de varejo de roupas:
O usuário começa a interação com uma saudação seguido de uma solicitação para encontrar um produto específico. Nestes casos, a intenção e as aberturas identificadas são suficientes para que o robô responda de forma inteligente e forneça de forma bem-sucedida uma recomendação relevante para o usuário. O problema começa quando o usuário responde a recomendação com o que eles acham do produto. Qual intenção para tais questões deve ser mapeada, e quais entidades devem ser detectadas? Normalmente, lidaríamos com tal situação induzindo o usuário a redirecionar a conversa para algo mais útil, como “Hum, eu não entendi. Para ver mais opções, diga ‘mostre-me mais.’”
Embora isso não seja uma experiência terrível para o usuário, nós podemos tornar o robô mais inteligente ao adicionar um módulo de classificadores ao sistema de CLN para identificar os atos de fala ou diálogo.
O que são atos de fala?
Um ato de fala captura o contexto e a intenção do usuário em cada expressão de uma conversa. Essas intenções são diferentes das intenções de um diálogo regular, eles são de natureza mais geral. Por exemplo, “Quanto custa isto?” e “Qual é a previsão do tempo para hoje?” podem pertencer às intenções “CUSTA_ISTO” e “PREVISÃO_TEMPO” respectivamente, mas elas têm o mesmo ato de fala: “PERGUNTA”, ou se você quiser mais granularidade, uma “PERGUNTA-PRONOME-INTERROG.” Existem diferentes taxonomias de atos definidos na literatura, e podemos usar o subconjunto que funciona para a nossa aplicação. Para ter uma melhor ideia do que podem ser essas identificações, consulte a taxonomia SWBD-DAMSL, que fornece um rico conjunto de 42 identificadores.
Atos de fala para gerenciamento de diálogo
No exemplo do usuário robô que apresentamos anteriormente, poderíamos ter rótulos de atos de fala de “SAUDAÇÃO” (ou “ABERTURA CONVENCIONAL”), “PERGUNTA,” E “OPINIÃO-NEGATIVA” para as três perguntas do usuário. Agora que sabemos que a última vez que o usuário expressou uma opinião negativa sobre a empresa (marcada como pertencente ao tipo de entidade “categoria”), o gerenciador de diálogo pode filtrar a lista de recomendações para excluir opções da categoria rejeitada.
Atos de fala para identificar itens úteis em conversações
Outra aplicação interessante dos atos de fala que nós temos experimentado é usá-los para extrair pontos de destaque de uma reunião. Diferente de resumir novos artigos, um problema bem analisado, fornecer um resumo extraído de uma reunião (ou seja, destaques da reunião) é difícil, já que é complicado obter dados anotados. Existe muita subjetividade no que consiste um destaque. Por exemplo, um engenheiro deve focar nos detalhes de execução discutidos em uma reunião, enquanto o gerente de produtos pode não precisar dos pormenores técnicos. Esta subjetividade, junto com a natureza sensível dos dados da reunião, torna difícil obter dados anotados para treinar um modelo.
A literatura e pesquisas internas mostraram que se existe algo que as pessoas concordam é, que os itens de ação e os acompanhamentos devem ser parte dos principais resultados de uma reunião. Motivados por isso, nós focamos em identificar os itens úteis nas reuniões. Segue abaixo exemplos do que consideramos como itens úteis. Parece haver duas categorias amplas de como os itens de ação são expressados: um palestrante promete uma ação, e um palestrante emite um comando. Esta observação torna os atos de fala perfeitos para resolver este problema.
Nós definimos nossa taxonomia de atos de fala para as atividade a seguir:
- Compromisso [COM] – Um palestrante promete fazer algo
- “Eu te envio um e-mail com os detalhes”
- “Providenciarei uma reunião com o Jerry na segunda”
- Instruções [DIR] – Palestrante pede ao ouvinte para fazer algo em resposta
- “Você pode ajustar com eles amanhã?”
- “Qual é a sua estimativa para este projeto?
- Elaboração [ELB] – Palestrante adiciona mais informações a um COM ou DIR
- “Vou providenciar uma reunião com a Emma hoje. O principal objetivo é discutir sobre este projeto com ela para maior clareza.” (COM seguido de ELB)
- “Você deve começar a trabalhar na documentação. Isso tornará o processo de compartilhamento mais fácil.” (DIR seguido de ELB)
- Reconhecimento [ACK] – Palestrante reconhece algo
- “Sim, parece ótimo”
- “Por mim, está ótimo”
Alguns compromissos e instruções não são necessariamente aceitos, juma vez que o escopo de suas ações é limitada a duração da reunião. Por exemplo: “Deixe-me compartilhar a minha tela” ou “Você pode ver a minha tela?” Para cuidar de tais casos, dividimos ainda COMs e DIRs em classes de reunião (ER) e pós-reunião (PR). Sentenças classificadas como COM-PR ou DIR-PR são as que estamos interessados em capturar para os usuários como itens úteis.
Ajustamos um modelo pré-treinado ROBERTa (uma variante do transformador) em 50.000 sentenças para reuniões anotadas com essas identificações. O modelo tem uma precisão de aproximadamente 82% por prever o ato de fala correto quando testado em um conjunto de 3.000 sentenças estendidas. Para analisar o objetivo final de identificar os principais resultados em reuniões, pedidos a dois anotadores especialistas para anotarem 12 reuniões com rótulos binários para determinar se cada sentença em uma reunião deve ou não ser destacada. O modelo tem uma alta precisão de 88%, ou seja, 88 dos 100 destaques previstos pelo modelo estavam corretos. No entanto, o recall é de 42%, o que significa que mais de 50% dos destaques são perdidos pelo modelo ou não se encaixam neste esquema de compromissos e instruções. Apesar disso dar espaço para melhorias, a alta precisão é encorajadora.
Outras aplicações
Nós compartilhamos somente duas aplicações onde o ato de fala é útil, mas existem muitos outros casos de uso reais. O ato de fala ajuda a compreender a estrutura abrangente de uma conversa que pode ser útil na análise de registros de conversas de call center. Uma recente publicação que visou transformar automaticamente sentenças educadas usou um classificador de ato de fala para identificar sentenças indelicadas, e em seguida, fazer as devidas correções. Também existem poucos bancos de dados abertos que você pode explorar, como o corpus Switchboard e o corpus ICSI Meeting Recorder, que contém conversações anotadas com uma ampla variedade de identificadores de atos de fala.
No Webex, nós encontramos a fala coloquial de várias formas: em nossas chamadas, mensagens, e aplicativos de reuniões, como também no nosso centro de soluções. Nós apenas começamos a arranhar a superfície de como modelos de CLN baseados nos atos de fala podem ajudar nossos clientes a obter insights de seus próprios dados. Fique ligado para mais tópicos que serão tratados nos próximos meses.
Interessado em se juntar à equipe MindMeld? Mande um e-mail para mindmeld-jobs@cisco.com!
Sobre a autora
Varsha Embar é Engenheira Sênior de Aprendizagem de Máquina na equipe MindMeld da Cisco, onde ela desenvolve interfaces de conversa de produção. Ela trabalha no aprimoramento central da plataforma de Processamento de Linguagem Natural, incluindo recursos e algoritmos para configurações de baixo recursos, e aborda problemas desafiadores como resumo e detecção de item de ação em transcrições de reuniões barulhentas. Antes da MindMeld, Varsha obteve o seu mestrado em Aprendizado de Máquina e Processamento de Linguagem Natural pela Carnegie Mellon University.
Visite a nossa página ou entre em contato diretamente para assistência.
Clique aqui para saber mais sobre as ofertas do Webex e para se inscrever em uma conta grátis.