Desenvolvimento

6 fev, 2019

Como os chatbots entendem cada vez mais os humanos? Graças ao Linguista Computacional

Publicidade

A impressão que tenho é que muitos ainda enxergam a Inteligência Artificial como um bicho de sete cabeças. Nas minhas reuniões de negócios, é comum ouvir perguntas do tipo: “Os robôs podem conversar como humanos?”, “Eles aprendem sozinhos?”.

A resposta para ambas as perguntas, é:

Não. Eles ainda não podem conversar exatamente como humanos. Mas já podem conversar com humanos e resolver dúvidas e problemas de maneira eficiente, rápida e agradável.

O que estamos fazendo neste início da revolução capitaneada pelos chatbots, é ensiná-los a conversar a partir de um processo de aprendizado contínuo, utilizando o histórico de interações dos próprios usuários ao longo do tempo.

Quanto mais nós, humanos, os alimentarmos com zetabytes de dados que serão pílulas para torná-los cada vez mais inteligentes, mais eles aprenderão.

Para explicar o processo de treinamento, faço uma analogia com as potentes máquinas de Fórmula 1. Os carros do torneio são movidos por um motor robusto e de alta tecnologia. Porém, para atingir as altas velocidades, os melhores carros precisam de excelentes mecânicos e de um piloto habilidoso.

É mais ou menos assim que podemos analisar a performance dos bots. Para que sejam cada vez mais assertivos, e com índices de erros cada vez mais baixos, os robôs de atendimento precisam do Linguista Computacional, também chamado de Botmaster, Knowledge Engineer, entre outras nomenclaturas.

  • O que um linguista faz exatamente?

O linguista basicamente garante que o chatbot responda corretamente, mantendo a qualidade da base de conhecimento.

Mas este é um resumo muito generalizado de seu papel. Para continuar a analogia do carro de corrida, as tarefas realizadas durante o teste e a qualificação são diferentes de quando a corrida começa.

Existem dois tipos de processamento de linguagem natural:

Hoje, o Processamento de Linguagem Natural (PNL) líder do setor é construído sobre o léxico de cada idioma, que detecta padrões em dados que podem ser aproveitados para entender as entradas do usuário e melhora dia após dia sua qualidade e abrangência.

O treinamento constante e global é para cada idioma e não para cada novo projeto. Isso cria uma abordagem que é flexível na adaptação às nuances e ambiguidades das linguagens, possibilitando resultados imediatos, sem a necessidade de exaustivos treinamentos.

No entanto, ainda existem implementações de uma abordagem antiga do PNL que se baseia em algoritmos de machine learning que costumamos chamar de “força bruta”, baseados em treinamento intenso para cada novo projeto e regras pré-determinadas.

Aqui, os algoritmos são alimentados com palavras e frases para cada nova intenção inserida a fim de retornar as respostas correlacionadas às questões inseridas – esse método impreciso de “compreensão” da linguagem resulta em uma precisão limitada e um trabalhoso processo (e consequentemente maiores custos associados).

Com os avanços mais recentes em tecnologia, não há desculpa para continuar usando o aprendizado básico de máquina e algoritmos orientados por palavras-chave ao invés do processamento de linguagem natural sofisticado e moderno.

Configurando o Chatbot

Quando um linguista é designado para desenvolver um chatbot, a primeira questão é, claro, em que língua estamos trabalhando – ou, mais importante, que tipo de linguagem é essa.

Mandarim, russo, inglês e português têm relações semânticas diferentes, que precisam de treinamentos específicos para criação da base de conhecimento.

Uma vez que os requisitos tenham sido estudados, o linguista então desenvolve os recursos de vocabulário para aquela linguagem particular: a ortografia, regras de correção, fornecendo soluções para ambiguidades na linguagem e assim por diante.

As questões do projeto específico a serem trabalhadas são apenas detalhes, como nomes de produtos, termos específicos e códigos, uma vez que o conhecimento do idioma e de mundo a tecnologia já possui.

O trabalho do linguista termina quando o Chatbot está no ar?

Não é bem assim. Pelo menos nos estágios iniciais o linguista irá monitorar as perguntas e respostas dentro do banco de dados do chatbot, a fim de ajustar sua capacidade de combinar o conteúdo com as respostas corretas. Portanto, melhorias devem ser feitas para aumentar ainda mais a precisão do chatbot.

Por exemplo, pode acontecer de um grande número de pessoas perguntar ao chatbot bancário como estender seu cheque especial e receber uma resposta sobre o cheque especial disponível para cada conta. Depois de realizar uma análise de lacunas, o linguista pode recomendar a adição de uma resposta para facilitar essas perguntas.

Como os carros de corrida são constantemente aprimorados, o linguista continuará a aumentar as capacidades dos chatbots para melhorar ainda mais suas taxas de autoatendimento e sua capacidade de engajar os usuários, trazendo resultados reais e sustentáveis para as empresas e clientes.