| Chatterbot: uma introdução
Autores: Thiago
Eugenio Bezerra de Mello e Lourdes
Mattos Brasil
Resumo
Hoje em dia a Inteligência Artificial (IA) tem nos ajudado em diversas
tarefas, como tomada de decisões e mesmo fazendo tarefas automatizadas,
ganhando posteriormente uma inteligência. Sistemas de conversação
Inteligente é um dos caminhos da IA, que se baseia em conhecimento,
assim possuindo uma base de conhecimento, chamados de Sistemas Baseados
em Conhecimentos ou Sistemas Especialistas (SE). SE são sistemas
que resolvem determinado problema em uma determinada área. O Chatterbot
como um tipo de SE, ele nos proporciona ajuda na tomada de decisão.
Os Chatterbot utilizam linguagem natural para poder analisar sentenças
as quais seus usuários alvo fazem, através de regras definidas
pelo seu desenvolvedor.
Palavra-chave: Inteligência Artificial, Sistema Especialistas, Linguagem
Natural, Shell
Semântica
da palavra
Chatterbot, vamos começar com o significado da palavra CHAT.
CHAT (Conversational Hypertext Access Technology - Hipertexto de Conversação
de Acesso à Tecnologia) é um programa de computador que
desenvolvido pela Communications Research Centre do Canadá,
que nos dá uma interface fácil e direta, por meio eletrônico,
acessar informações. CHAT utiliza linguagem-natural, que
nos possibilita fazer perguntas em um certo idioma e obtermos a resposta,
não há necessidade de saber manusear bem o computador, é
um sistema fácil e prático, onde não há necessidade
de treinamento. Foi criado para examinar a interação homem-computador,
primeiramente utilizado em campanhas de informações sobre
AIDS.
O Software não é perfeito, mas geralmente transmite as informações
solicitadas, de grande valor para humanidade. Pode ser usado localmente
ou por conexão remota. Seu funcionamento é através
de templates, a cada nova pergunta ela é comparada com o
templates, de perguntas anteriores.
BOT, abstraindo os conceitos, mas a fundo do significado de BOT,
é um software que pesquisa em informações, isto é,
você lhe dá a direção e ele trará a
informação. A palavra BOT é uma abreviação,
para a palavra checa robota, que significa trabalho. A primeira
idéia de robôs como máquinas humanas foi mostrado
por Karel Capek's, em 1921, em uma peça chamada "R.U.R.",
a qual falava sobre Rossum's Universal Robots. Robótica
de Software é geralmente baseado no modelo de Eliza, uma
das primeiras mostra pública da Inteligência Artificial,
que consegue conversar com humanos. Eliza faz perguntas, e de acordo com
as respostas, formula novas perguntas.
ChatterBot é um programa de computador baseado em Alan
Turing, o pioneiro que acredita que Inteligência Artificial
existirá se um computador confundir um homem, fazendo o mesmo acreditar
que ele está falando com outro homem ao invés de um computador,
através de imitação ou cópia da lingüística
humana.
Esquema
Consiste em duas partes diferentes, inseparáveis, CHAT Shell
e uma base de informações. O Shell é escrita
em qualquer linguagem de programação, uma vez feita na necessidade
de adaptá-la à base de informação.
A base de informação deve ser escrita para cada assunto
da conversação. Contém a resposta ou informação
para a pergunta que está dentro do assunto. Fazendo uma analogia,
a um interpretador e uma linguagem de programação, o interpretador
seria o Shell, que no caso irá validar as informações
passadas para ele, e a linguagem de programação seria a
base de dados.
Funcionamento
A base de informação deve ser escrita para o Shell, que
consiste em respostas que é referenciada a questions templates
(modelos de perguntas). O segredo para escrever uma base de informação
é saber quais as perguntas que irão ser feitas pelo usuário,
e descobrir um padrão para cada grupo comum de perguntas, que tenha
as mesmas respostas.
O Shell (ou BOT) interpreta aquela pergunta, percorre a base de dados
que contém os modelos de resposta e traz a resposta mais apropriada.
Há regras que devem ser seguidas.
Uma pessoa deve pelo menos passar três meses trabalhando na base
de informação (ou sistema de informação),
o programa não aprende sozinho.
Não é pretendido para ser perfeito, para que qualquer pergunta
feita no escopo do assunto seja respondida (não que seja ruim,
e sim trabalhoso). Na prática quando o percentual de respostas
corretas chega a 80%, é adequada à paralisação
da base de informação.
Não
é baseado em nenhuma gramática, nem tanto uma linguagem
natural, pode ser em qualquer idioma. Pode ser feita variação
de perguntas como: "Onde é a China?" ou "Onde
fica a China?", isso é estudado pelo Comportamento
Computacional (computational behaviourism).
O papel do Shell é de interpretar as perguntas passadas por ele.
Palavras têm várias semânticas, por isso temos de combinar
os significados iguais de palavras.
A
sentença é criada como o modelo abaixo:
Não se aprofundando no assunto, esse texto tem o intuito de dar
noções e conceitos sobre Chatterbot, e não
dar uma ficha completa desde os conceitos à implementação.
Para um estudo mais detalhado devem ser consultadas as referências.
Referências
1.
BROWN, A. J. Colin-Computer linguistics Imitation. Disponível
em: <http://www.barc0de.demon.co.uk/>.
Acesso em : 22 fev. 2001.
2.
PARMENTIER, F. Spécification d'une architecture émergente
fondée sur le raisonnement par analogie: application aux références
bibliographiques. 1998. Tese (Doctorat spéciali informatique) -
l'Université Henri-Poincaré-Nacy. 1998. Disponível
em: <http://www.multimania.com/pparmentir>.
Acesso em: 25 fev. 2001
3.
VENDITTO, G. What´s a Bot? BOTSPOT. Disponível em:
<http://bots.internet.com/
>. Acesso em: 20 fev. 2001.
4.
WHALEN, T. Conversational hypertext acess technology [mensagem
pessoal]. Communications Research Centre. Mensagem recebida por
<thiago@inf.ufpr.br> em:
28 fev. 2001.
5.
WHALEN, T. Computational behaviourism applied to natural language
[mensagem pessoal]. Communications Research Centre. Mensagem recebida
por <thiago@inf.ufpr.br>
em: 28 fev. 2001.
thiago@inf.ufpr.br
lmb@ufc.br

|