Um passo comum na construção de um bot é a definição de "intenções".
Uma intenção pode ser "redefinir a minha palavra-passe", "reservar um voo" ou "contactar o apoio ao cliente". O programador do bot precisa de introduzir várias frases no software que tenham o mesmo significado que a intenção. Por exemplo, "Quero ir para Paris" seria uma dessas frases para a intenção "reservar um voo".
Geralmente, as plataformas de desenvolvimento de bots pedem aos utilizadores que introduzam muitas frases para uma determinada intenção. Estas frases são dados de treino para o algoritmo de Processamento de Linguagem Natural (PNL).
O algoritmo de PNL é um algoritmo de aprendizagem automática que se treina nos dados para poder reconhecer frases com o mesmo significado mas com palavras diferentes (em relação aos dados de treino).
O algoritmo de PNL utiliza os dados de intenção fornecidos pelo programador do bot e um enorme corpus de dados relativos à língua (com os quais foi treinado anteriormente) para calibrar o seu modelo interno de modo a poder reconhecer novas frases.
Quanto mais exemplos forem dados ao algoritmo de PNL pelo programador do chatbot, mais precisamente este será capaz de reconhecer o mesmo significado noutras frases com uma redação diferente. Pelo menos, é essa a mensagem dada aos criadores de bots.
O problema é que os dados de formação não são todos iguais. A qualidade dos dados é tão importante como a quantidade.
Por exemplo, imagine que quero criar uma intenção chamada "redefinir a minha palavra-passe".
Um autor de bot pode começar a criar as seguintes frases:
Repor a minha palavra-passe
Esqueci-me da minha palavra-passe
A minha palavra-passe não está a funcionar
Nova palavra-passe, por favor
Problema com a palavra-passe
etc.
O problema com o exemplo acima é que todas as frases utilizam a mesma palavra "password". Isto significa que, quando o algoritmo se treina com estes dados, percebe a regra de que se a palavra "password" estiver na frase, então a intenção é "reset my password". Isto, como é óbvio, está errado. As pessoas podem dizer muitas outras frases sem a palavra "password" que têm o mesmo significado que "reset my password". Há também muitas frases com a palavra "password" que não significam "repor a minha palavra-passe".
No mundo dos algoritmos, este problema é designado por sobreajuste aos dados de treino. O algoritmo ajustou-se demasiado à palavra "palavra-passe" e, por isso, "acredita" que todas as frases com a palavra "palavra-passe" significam "redefinir a minha palavra-passe".
Existem outros exemplos com a mesma intenção. Por exemplo, o programador do bot pode introduzir as seguintes frases:
As minhas credenciais não estão a funcionar
O meu início de sessão não está a funcionar
A minha palavra-passe não está a funcionar
O meu nome de utilizador não está a funcionar.
etc.
Este é, obviamente, um exemplo mais extremo do problema, mas o padrão é comum na criação de dados de treino. Mais uma vez, isto fará com que o algoritmo se ajuste demasiado aos dados, mas desta vez à frase "não está a funcionar".
A solução já deve ser óbvia. Cada frase nos dados de treino precisa de ser tão diferente quanto possível das outras frases no conjunto de dados. Por exemplo:
As minhas credenciais não estão a funcionar.
Preciso de redefinir a palavra-passe.
Como posso resolver o meu problema de início de sessão?
Quem me pode ajudar a entrar no sistema?
etc.
É claro que a criação de um conjunto de dados como o acima descrito exige mais esforço. Pode até ser útil ter um dicionário de sinónimos aberto para encontrar sinónimos com o objetivo de estimular ideias para frases.
A outra forma de os criadores de bots ultrapassarem este problema é terem acesso a dados de conversação do serviço de apoio ao cliente, que fornecem muitos exemplos de todas as formas como um cliente real faria a mesma pergunta. Estes dados podem ser extremamente valiosos.
Há uma questão sobre quando é que os algoritmos de PNL serão capazes de ter um bom desempenho apenas com um pequeno conjunto de dados de treino. Seria sem dúvida melhor que o bot funcionasse perfeitamente utilizando apenas um pequeno conjunto de dados. Esta é uma questão que está a ser trabalhada pelos investigadores, pois não só reduziria o tempo e o esforço necessários para criar chatbots, como também melhoraria consideravelmente a sua qualidade.
O algoritmo de PNL é uma caixa negra para a maioria dos programadores de bots. No entanto, é importante que compreendam os princípios básicos do funcionamento do algoritmo para saberem que tipo de dados de treino (dados de intenção) devem fornecer ao algoritmo para obterem os melhores resultados.
Partilhar isto em:
Crie o seu próprio chatbot de IA personalizado gratuitamente
Comece a criar um bot GPT personalizado com a nossa interface intuitiva de arrastar e soltar.
Começar - é grátis! 🤖Não é necessário cartão de crédito
Mantenha-se atualizado com as últimas novidades sobre IA chatbots