SlideShare uma empresa Scribd logo
1 de 21
Baixar para ler offline
Aplicação do conceito de
Inteligência Artificial em um ChatBot
Trabalho Prático da disciplina de Inteligência Artificial
Derek Budde, A21000230
Luís Fontes, A21003874
J. Ricardo , A21001874
Trabalho de grupo, no âmbito da Disciplina de Inteligência Artificial, que pertente conceptualizar o
desenvolvimento de um sistema do tipo “ChatBot” onde será possível dar uso aos diversos
conteúdos apreendidos ao longo das aulas teóricas e práticas assim, como demonstrar
conhecimentosadquiridosnopercurso académicoaté aopresente terceiroano.
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
CONTEÚDO
Controlo de versões .................................................................................................................................................................3
EQUADRAMENTO .....................................................................................................................................................................4
Chatbot..................................................................................................................................................................................4
O que é um chatbot? ......................................................................................................................................................4
E qual a relevância deum “chatbot” para demonstração de assimilação deconteúdos no âmbito da
disciplina de Inteligência Artificial?..............................................................................................................................5
Necessidade de chatbot’s ..............................................................................................................................................5
ESTRUTURA CHATBOT..............................................................................................................................................................6
Interpretador AIML..............................................................................................................................................................6
Recursão...........................................................................................................................................................................7
Arquitetura do chatbot aiml..........................................................................................................................................8
Implementação em C#.....................................................................................................................................................10
Modulo interpretadores AIML........................................................................................................................................11
Módulo da base de conhecimento ................................................................................................................................12
Personalidade...............................................................................................................................................................12
Módulo de expressões Faciais........................................................................................................................................13
Módulo Regular Expression............................................................................................................................................14
Módulo Voz Text-to-Speech ...........................................................................................................................................15
Módulo Word Frequency e Emotion analysis..............................................................................................................16
Análises de emoções ...................................................................................................................................................17
Suporte academico ao algoritimo modificado........................................................................................................18
Desafios CHATBOT’S..............................................................................................................................................................19
Conclusão................................................................................................................................................................................19
Referencias..............................................................................................................................................................................20
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
CONTROLO DE VERSÕES
Pré-requisitos
AIMLbot2.5
MicrosoftSAPI 5 ou 4
RealSpeak TTS engine - ScanSoft Steffi_Dri40_16kHz
Versão Autor/Alterado Por
Data de
Alteração
Descrição da
Versão
1.1 Derek Budde & Luís Fontes & J. Ricardo Fernandes 31-12-2012 AIMLBot
1.2 Derek Budde & Luís Fontes & J. Ricardo Fernandes 31-12-2012
Expressões
Faciais
1.3 Derek Budde & Luís Fontes & J. Ricardo Fernandes 31-12-2012
Voz,TTR, Analise
de emoções
1.4 Derek Budde & Luís Fontes & J. Ricardo Fernandes 31-12-2012
Versão de
entrega
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
EQUADRAMENTO
CHATBOT
O QUE É UM CHATBOT?
Trata-se de um programa de computador que tem como objetivo simular uma conversa real
com o utilizador, respondendo às perguntas realizadas pelo último, recorrendo a uma base
de conhecimento previamente construída e antecipando uma resposta espectável de um
humano, recorrendo a algoritmos do âmbito da Inteligência Artificial. Quanto mais evoluída
for esta base de conhecimento melhor será a resposta emitida pelo chatbot, ou seja mais
“humanizada”.
É uma entidade de inteligência artificial capaz de simular uma pessoa através do
Processamento da Linguagem Natural (PLN).
Existemvários tipos de chatbot, conforme a sua funcionalidade.
São exemplos:
Chatbots de Entretenimento - ELIZA, dialogo tipo chat
Chatbots de Ajuda - FAQ, responder sobre um determinado assunto
Chatbost Comerciais de ajuda ao consumidor - Suporte técnico
Chatbots Comerciais de Marketing - Representar a empresa e produtos
Chatbots sem classificação - ULTRA-HAL, assistente pessoal, aprendizagem, podem discar
um número, realizar tarefas, etc.
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
E QUAL A RELEVÂNCIA DE UM “CHATBOT” PARA DEMONSTRAÇÃO DE ASSIMILAÇÃO DE
CONTEÚDOS NO ÂMBITO DA DISCIPLINA DE INTELIGÊNCIA ARTIFICIAL?
Muitas poderiam ser as abordagens escolhidas para a realização de um trabalho prático no
âmbito da disciplina em questão, mas foi de unanime entre os elementos deste grupo de
trabalho que teria ser um “chatbot,
A aplicação em causa permite não só aplicação dos conteúdos aprendidos no que toca à
construção e desenvolvimento de bases de conhecimento, como nos leva um pouco mais
além, para domínios um pouco mais discutíveis e também presentes nos conhecimentos
assimilados durante as aulas, como sendo por exemplo a construção de uma
“personalidade” e a construção de mecanismos que realizem aprendizagem por meio de
interação com utilizadores.
Foi também nosso propósito com esta abordagem conhecer e apreender conceitos reais e
utilizados no dia-a-dia, sendo surpreendente a conclusão de como a “inteligência artificial”
está embebida nas nossas vidas, nomeadamente e a título de exemplo em muitos “chatbot”
de diversos sítios na internet, que são visitados diariamente por milhares de utilizadores.
NECESSIDADE DE CHATBOT’S
É nosso entendimento que para além de várias vertentes praticas e comerciais como
por exemplo esclarecimento de dúvidas em site, e/ou recomendação de produtos a
“navegadores web”, o “chatbot” pode ser muito mais útil, e consideramos então como uma
“necessidade” a criação de “chatbot’s” com reatividade muito específica para diversos
públicos-alvo como sendo por exemplo na Educação para a estimular e fomentar a
aprendizagem, e também por exemplo para a população mais idosa como meio de ligação e
também de aprendizagem de novas tecnologias.
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
ESTRUTURA CHATBOT
INTERPRETADOR AIML
O AIML basea-se em SGML e XML que compões a base de conhecimento e regras de um
chatbot. Uma da grande vantagem desta linguagem é seu alto índice de reaproveitamento
de sua base de conhecimento.
O AIML utiliza como técnica a procurar de palavras-chave na pergunta, que possam ser
anexadas a um assunto ou a uma resposta anterior, facilitando o direccionamento da
conversa.
A linguagemAIML são módulos que se chamam de categorias.
Cada categoria possui um padrão de entrada, que compara à sentença digitada pelo
usuário, e um padrão de resposta, que é usado para estruturar uma sentença a ser
retornada ao usuário.
Esse padrão de resposta utiliza tags de marcação para a sua construção.
Ilustração 1 –AIML representação dalinguagem
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
Ilustração 2 -AIML conceito visual de resposta
As principais tags do AIML são:
<aiml> incia e termina um bloco programado em AIML
<category> identifica uma “unidade de conhecimento” na base de conhecimento
<pattern> identifica um padrão de mensagem simples freqüentemente utilizado
por usuários.
<template> contém a resposta para uma mensagem do usuário.
RECURSÃO
O maior sucesso da linguagem AIML, conjuntamente com as tags de definição de contexto,
é a tag <srai>. Funciona de uma maneira similar a um salto incondicional utilizado em
muitas linguagens de programação (goto), permitindo que a resposta a uma determinada
pergunta possa ser redirecionada a uma categoria em que a mesma já foi respondida.
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
Ilustração 3 -AIML categorias
Para solucionar o tratamento da forma verbal, como na pergunta 'Como eu crio um google
grupo?' (primeira pessoa), é utilizado o arquivo de substituições disponível no interpretador
ProgramD [Bush, 2009].
Ilustração 4 - AIML substituições
ARQUITETURA DO CHATBOT AIML
Ilustração 5 - AIML arquitectura
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
O interpretador AIML é um módulo fundamental para o funcionamento do chatbot.
Tem como tarefa receber como entrada as sentenças digitadas pelos usuários, e buscar na
base AIML uma categoria cujo o padrão de entrada seja o mais adequado para a sentença
atual.
Em seguida, o interpretador monta a resposta que será devolvida ao usuário.
Verifica se existemtags a serem processadas no template de saída dessa categoria.
Em caso afirmativo, ele executa essas tags, buscando na base de conhecimento, quando
necessário, informações adicionais para completar a sentença de saída.
Ilustração 6 -AIML módulosinternosdaarquitectura
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
IMPLEMENTAÇÃO EM C#
Para a implementação da aplicação é necessário a concepção de uma estrutura definida
para a boa organização e funcionalidade do código a ser escrito.
Assimteremos:
Modulo Interpretador AIML
Base de conhecimento (em inglês)
Modulo de Expressões Faciais
Modulo de Voz Text-to-Speech (TTS)
Modulo Regular Expression (pattern)
Modulo Word Frequency e Emotion Analysis
Ilustração 7 -Representação daestruturado programa
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
MODULO INTERPRETADORES AIML
O módulo interpretador é alcançado pela implementação da API AIMLBot, este recebe e
retorna uma sentença conforme o próprio processamento da frase introduzida pelo diálogo
com o utilizador.
Como representado no diagrama acima este módulo recebe a sentença de palavras após um
pré processamento do módulo (Regular Expression). A própria API se encarrega de procurar
e analisar as possíveis respostas a seremretornadas a função.
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
MÓDULO DA BASE DE CONHECIMENTO
Os ficheiros baseam-se em SGML e XML que compões a base de conhecimento e regras de
um chatbot. Uma da grande vantagem desta linguagem é seu alto índice de
reaproveitamento de sua base de conhecimento.
O AIML utiliza como tecnica a procurar de palavras-chave na pergunta, que possam ser
anexadas a um assunto ou a uma resposta anterior, facilitando o direcionamento da
conversa.
Ilustração 8 -Base de conhecimento
PERSONALIDADE
É possivel configurar a personalidade do bot, tal como gostos,genero e hobbies.
O ficheiro settings.xml guardara essas configurações.
Ilustração 9 -Personalidade configuração
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
MÓDULO DE EXPRESSÕES FACIAIS
Este módulo é responsável por classificar as interjeições contidas na frase enviada pelo
usuário. As interjeições são palavras invariáveis que exprimem estados emocionais, ou mais
abrangente: sensações e estados de espírito. Podem ter significado diferente consoante a
implementação na frase.
Ilustração 10 -EstruturaExpressão Facial
Exemplo
Texto enviado - “Ouch, My Brain Hurts!”
Texto recebido - ouch my brain hurts
Compara na BD – ouch
Recebe Categoria da BD – pain, annoyance
Random Seleciona – pain
Gráficos “pain” - "C2", "E1“
Random Seleciona - "E1“
Imagem alterada para E1.png
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
MÓDULO REGULAR EXPRESSION
Normalização do texto e dos caracteres especiais inseridos, algoritmo utilizado NLP Word
and Text Manipulation e Regular Expressions.
Exemplo:
Texto Enviado - Olá, *mundo!!!
1. fase – Olá *mundo
2. fase – Ola mundo
3. fase – ola mundo
Ilustração 11 -DiagramaModulo Regular Expression
// eliminacao de caracters invalidos e normalizacao das maiusculas
Regex regEx2 = new Regex(pattern2);
string preWords1 = regEx2.Replace(inputBox.Text,
replacement).ToLower();
getOutput(preWords1);
// eliminacao de non-ASCII characters
Regex regEx3 = new Regex(pattern3);
string preWords2 = regEx3.Replace(preWords1, replacement2);
// separacao da pontuacao
string[ preWords3 = Regex.Split(preWords2, pattern1,
RegexOptions.IgnorePatternWhitespace);
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
MÓDULO VOZ TEXT-TO-SPEECH
Com a implementação do TTS do Sistema Operacional Windows é possivel utilizar a voz
padrão do computador para a leitura das frases. A voz de saída é inglês com sotaque
alemão, para que o Chatbot possa adquir uma maior personalidade.
Ilustração 12 -DiagramaTTS
No exemplo demonstra a entrada de uma string e a leitura do texto através da
funcionalidade TTS do sistema.
– -
–
-
string answer = "Elga" + " - " + answerBot + "rn";
_speech.SelectVoice("ScanSoft Steffi_Dri40_16kHz");
_speech.SpeakAsync(answerBot);
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
MÓDULO WORD FREQUENCY E EMOTION ANALYSIS
-
No exemplo acima observamos que a interjeição “oh”, ocorre 1 vez na primeira linha, 2
vezes na segunda linha e 1 vez na terceira linha, isso significa que com o constante uso desta
interjeição o usuário está expressando um sentimento durante o diálogo. Com esta
observação, podemos utilizar o algoritimo de Type-Token Ratio, para determinar uma
emoção com base na frequência em que a interjeição está sendo utilizada.
Ilustração 13 - Modulo TTR e Emotion Analysis
Estado emocional parcial = interjeições na frase
Estado emocional global =
Exemplo: Freq. Rank
1 - oh boy! 1 1
2 - oh, that hurts, oh! 2 1
3 - oh, that hurts? 1 1
Nº de frequências = 4
Nº de rank = 3
Total emocional =
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
ANÁLISE DE EMOÇÕES
-
-
- - –
–
Ilustração 14 –Possíveisresultadosde um diálogo
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
SUPORTE ACADEMICO AO ALGORITIMO MODIFICADO
Keyword Spotting Technique
The keyword pattern matching problem can be described as the problem of finding
occurrences of keywords from a given set as substrings in a given string. This problem has
been studied in the past and algorithms have been suggested for solving it. In the context of
emotion detection this method is based on certain predefined keywords. These words are
classified into categories such as disgusted, sad, happy, angry, fearful, surprised etc. Process
of Keyword spotting method.
Lexical Affinity Method
Detecting emotions based on related keywords is an easy to use and straightforward
method.
Lexical Affinity approach is an extension of keyword spotting technique; it assigns a
probabilistic ‘affinity’ for a particular emotion to arbitrary words apart from picking up
emotional keywords.
These probabilities are often part of linguistic corpora, but have disadvantages; firstly the
assigned probabilities are biased toward corpus-specific genre of texts, secondly it misses
out emotional content that resides deeper than the word-level on which this technique
operates. For example the word ‘accident’, having been assigned a high probability of
indicating a negative emotion, would not contribute correctly to the emotional assessment
of phrases like ‘I avoided an accident’ or ‘I met my girlfriend by accident’.
Ilustração 15 -Representação Gráfica
Texto extraído do documento original, citado nas referências do projecto, divulgado para
consulta publica de académicos.
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
DESAFIOS CHATBOT’S
Um chatbot também apresenta desafios, sendo a principal delas o fato de que é um
programa de computador e não é capaz de pensar e aprender da mesma forma que um ser
humano o faz. Como a quantidade de sentenças que um ser humano pode produzir é
praticamente infinita, dificilmente um software será capaz de lidar com todos os tipos de
input fornecido pelos usuários.
Porém, apesar das limitações, esse tipo de programa não pode ser desprezado como
ferramenta auxiliar no ensino. O potencial para o uso dessa tecnologia é enorme não só na
área da educação, como também para qualquer área que necessite de consulta `a bases de
dados, como atendimento ao cliente, suporte on-line, etc.
Conforme comentado em (PALAZZO, 1997): “O PLN é da maior importância para o
desenvolvimento de ferramentas para a comunicação homem-máquina em geral e para a
construção de interfaces SBCs em particular”. Por SBCs Palazzo refere-se a Sistemas
Baseados emConhecimento.
CONCLUSÃO
Embora o módulo de interpretação contém o algoritmo de procura em árvore, muitas das
decisões de resposta ainda se mantém iguais aos primeiros modelos a nível de NLP.
Houve muitas tentativas em conseguir reproduzir a fala em linguagem natural, mas vem se
verificando impossível alcançar um grau satisfatório, apesar dos avanços alcançados a nível
de programação.
Neste projecto foi demonstrado como utilizar vários módulos para complementar o
processo de IA em chatbots desde a implementações de algoritmos NLP (Word and Text
Manipulation e Regular Expressions) , bem como o processo de decisão facial que podemos
assumir como um decisão interactiva de escolha, consoante interjeições utilizadas pelo
usuário.
Para trabalhos futuros a implementação de reconhecimento facial com OpenCV para C#
através de uma webcam mostra-se muito aliciante, possibilitando o bot responder também
a expressões emocionais por parte do utilizador.
Assim conclui-se que só tal nível de satisfação poderá ser alcançado através de um conjunto
de outros sensores para que o chatbot responda de uma forma natural.
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
REFERENCIAS
AIMLBot (Program#) - http://aimlbot.sourceforge.net/
Natural language processing - http://nlpdotnet.com/
Informação & Sociedade: Estudos v. 18, n. 2, 2008. CHATTERBOT: Conceito,
Características, tipologia e Construção; Rafaela Lunardi, Comarella, Ligia Maria
Arruda Café, Universidade Federal de Pernambuco Centro de informática pós-
graduação em ciência da computação; Recife, 2003
Um chatterbot para aquisição automática de perfil do usuário; Thiago José Marques
Moura, Dissertação de Mestrado, Universidade Federal de Pernambuco,Recife 03 -
2003
Chatterbots podem ser úteis ? ; Jefferson Mendes Silva, Faculdade de tecnologia de
são paulo - São Paulo – Brasil 2012
TTR-http://www.speech-therapy-information-and-resources.com/type-token-
ratio.html
Word Counting - http://www.devcurry.com/2010/07/count-repeated-words-in-
list.html
Revista CEFAC - On-line version ISSN 1982-0216 - Types e tokens na aquisição típica
de linguagem por sujeitos de 18 a 32 meses falantes do português brasileiro,
http://www.scielo.br/scielo.php?pid=S1516-18462011
005000058&script=sci_arttext
Towards Socialized Machines: Emotions and Sense of Humour in Conversational
Agents, Michal Ptaszynski, Pawel Dybala, Shinsuke Higuhi, Wenhan Shi,Rafal Rzepka
and Kenji Araki, Hokkaido University, Japan
Computational Models of Emotion - Stacy Marsella, Jonathan Gratch and Paulo
Petta. In Scherer, K.R., Bänziger,.
T., & Roesch, E. (Eds.) A blueprint for an affectively competent agent: Cross-
fertilization between Emotion Psychology.
APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM
UM CHATBOT 24 de Janeiro de 2013
Affective Neuroscience, and Affective Computing. Oxford: Oxford University Press,
2010 http://people.ict.usc.edu/~marsella/publications/bytopic.html
The Many Faces by Lachyen - http://lachyen.deviantart.com/art/The-Many-Faces-
45804641
EMOTION DETECTION FROM TEXT - Shiv Naresh Shivhare1
and Prof. Saritha
Khethawat2
, 1
Department of CSE and IT, Maulana Azad National Institute of
Technology, Bhopal, Madhya Pradesh, 2
Department of CSE and IT, Maulana Azad
National Institute of Technology, Bhopal, Madhya Pradesh, India
http://airccj.org/CSCP/vol2/csit2237.pdf

Mais conteúdo relacionado

Mais procurados

Conhecimento com Fator de Produção e a Relação Universidade-Empresa
Conhecimento com Fator de Produção e a Relação Universidade-EmpresaConhecimento com Fator de Produção e a Relação Universidade-Empresa
Conhecimento com Fator de Produção e a Relação Universidade-EmpresaRoberto C. S. Pacheco
 
Apresentação pkm e criatividade hub share
Apresentação pkm e criatividade hub shareApresentação pkm e criatividade hub share
Apresentação pkm e criatividade hub shareDobra Inova
 
Inteligência artificial filosofia
Inteligência artificial   filosofiaInteligência artificial   filosofia
Inteligência artificial filosofiaguestbdb4ab6
 
Inteligência Artificial
Inteligência ArtificialInteligência Artificial
Inteligência ArtificialDaniela França
 
Pesquisa de tendências de design e experiência do usuário para o mercado Ed...
Pesquisa de tendências de design  e experiência do usuário para  o mercado Ed...Pesquisa de tendências de design  e experiência do usuário para  o mercado Ed...
Pesquisa de tendências de design e experiência do usuário para o mercado Ed...Ludmyla Gaudeda
 
Inteligencia artificial 1
Inteligencia artificial 1Inteligencia artificial 1
Inteligencia artificial 1Nauber Gois
 
Inteligência Artificial e suas aplicações - A experiência do TECPAR
Inteligência Artificial e suas aplicações  - A experiência do TECPARInteligência Artificial e suas aplicações  - A experiência do TECPAR
Inteligência Artificial e suas aplicações - A experiência do TECPARBruno Campagnolo
 

Mais procurados (8)

Conhecimento com Fator de Produção e a Relação Universidade-Empresa
Conhecimento com Fator de Produção e a Relação Universidade-EmpresaConhecimento com Fator de Produção e a Relação Universidade-Empresa
Conhecimento com Fator de Produção e a Relação Universidade-Empresa
 
Aula 1
Aula 1Aula 1
Aula 1
 
Apresentação pkm e criatividade hub share
Apresentação pkm e criatividade hub shareApresentação pkm e criatividade hub share
Apresentação pkm e criatividade hub share
 
Inteligência artificial filosofia
Inteligência artificial   filosofiaInteligência artificial   filosofia
Inteligência artificial filosofia
 
Inteligência Artificial
Inteligência ArtificialInteligência Artificial
Inteligência Artificial
 
Pesquisa de tendências de design e experiência do usuário para o mercado Ed...
Pesquisa de tendências de design  e experiência do usuário para  o mercado Ed...Pesquisa de tendências de design  e experiência do usuário para  o mercado Ed...
Pesquisa de tendências de design e experiência do usuário para o mercado Ed...
 
Inteligencia artificial 1
Inteligencia artificial 1Inteligencia artificial 1
Inteligencia artificial 1
 
Inteligência Artificial e suas aplicações - A experiência do TECPAR
Inteligência Artificial e suas aplicações  - A experiência do TECPARInteligência Artificial e suas aplicações  - A experiência do TECPAR
Inteligência Artificial e suas aplicações - A experiência do TECPAR
 

Destaque

Sopa de letras cuencas del Amazonas
Sopa de letras cuencas del AmazonasSopa de letras cuencas del Amazonas
Sopa de letras cuencas del AmazonasNORMITAMON
 
Secretários do Recife
Secretários do RecifeSecretários do Recife
Secretários do RecifePortal NE10
 
Nanotecnologia
NanotecnologiaNanotecnologia
Nanotecnologiahrq93
 
Resumo produção multimídia
Resumo produção multimídiaResumo produção multimídia
Resumo produção multimídiaAlessandro Dias
 
Indústria fonográfica: consolidação e reconfiguração
Indústria fonográfica: consolidação e reconfiguraçãoIndústria fonográfica: consolidação e reconfiguração
Indústria fonográfica: consolidação e reconfiguraçãoLucas Waltenberg
 
Percepção e educação ambiental
Percepção e educação ambientalPercepção e educação ambiental
Percepção e educação ambientalMarilda2011
 
A utilização da tecnologia da informação na gestão de planos de saúde
 A utilização da tecnologia da informação na gestão de planos de saúde A utilização da tecnologia da informação na gestão de planos de saúde
A utilização da tecnologia da informação na gestão de planos de saúdePedro Alexandre Cabral
 
Edital - Concurso museologia ufg
Edital - Concurso museologia   ufgEdital - Concurso museologia   ufg
Edital - Concurso museologia ufgarqmuseus
 

Destaque (20)

Reações Orgânicas
Reações OrgânicasReações Orgânicas
Reações Orgânicas
 
Sopa de letras cuencas del Amazonas
Sopa de letras cuencas del AmazonasSopa de letras cuencas del Amazonas
Sopa de letras cuencas del Amazonas
 
Secretários do Recife
Secretários do RecifeSecretários do Recife
Secretários do Recife
 
Nanotecnologia
NanotecnologiaNanotecnologia
Nanotecnologia
 
Computacao Invisivel
Computacao InvisivelComputacao Invisivel
Computacao Invisivel
 
Resumo produção multimídia
Resumo produção multimídiaResumo produção multimídia
Resumo produção multimídia
 
Profissões 2010 CIEE
Profissões 2010 CIEEProfissões 2010 CIEE
Profissões 2010 CIEE
 
Hidrografia
HidrografiaHidrografia
Hidrografia
 
TOW - Eventos de Natal
TOW - Eventos de NatalTOW - Eventos de Natal
TOW - Eventos de Natal
 
Indústria fonográfica: consolidação e reconfiguração
Indústria fonográfica: consolidação e reconfiguraçãoIndústria fonográfica: consolidação e reconfiguração
Indústria fonográfica: consolidação e reconfiguração
 
O natal musica
O natal musicaO natal musica
O natal musica
 
Percepção e educação ambiental
Percepção e educação ambientalPercepção e educação ambiental
Percepção e educação ambiental
 
Nanotecnologia
NanotecnologiaNanotecnologia
Nanotecnologia
 
Educomunicar rede cep
Educomunicar rede cepEducomunicar rede cep
Educomunicar rede cep
 
Critica da midia
Critica da midiaCritica da midia
Critica da midia
 
A utilização da tecnologia da informação na gestão de planos de saúde
 A utilização da tecnologia da informação na gestão de planos de saúde A utilização da tecnologia da informação na gestão de planos de saúde
A utilização da tecnologia da informação na gestão de planos de saúde
 
Edital - Concurso museologia ufg
Edital - Concurso museologia   ufgEdital - Concurso museologia   ufg
Edital - Concurso museologia ufg
 
Maceió
MaceióMaceió
Maceió
 
Besouro
Besouro Besouro
Besouro
 
Edital proupe
Edital proupeEdital proupe
Edital proupe
 

Semelhante a Elga Von Weissendorf - Inteligência artificial em um chat bot

Como podemos usar o design para melhorar a I.A.?
Como podemos usar o design para melhorar a I.A.?Como podemos usar o design para melhorar a I.A.?
Como podemos usar o design para melhorar a I.A.?Thalita Oliveira
 
Mestrado - MRS - IA vs. SMM.pdf
Mestrado - MRS - IA vs. SMM.pdfMestrado - MRS - IA vs. SMM.pdf
Mestrado - MRS - IA vs. SMM.pdfAfonso Malheiro
 
Mestrado - MRS - IA vs. SMM
Mestrado - MRS - IA vs. SMMMestrado - MRS - IA vs. SMM
Mestrado - MRS - IA vs. SMMAfonso Malheiro
 
Web - O que um geek antenado deve conhecer
Web - O que um geek antenado deve conhecerWeb - O que um geek antenado deve conhecer
Web - O que um geek antenado deve conhecerAislan Rafael
 
AULaaaaaaaaaaaaA PJI por Cassio Melo.pptx
AULaaaaaaaaaaaaA  PJI por Cassio Melo.pptxAULaaaaaaaaaaaaA  PJI por Cassio Melo.pptx
AULaaaaaaaaaaaaA PJI por Cassio Melo.pptxCssioMello
 
Criatividade, Inovação e Métodos Ágeis - O que isso tem a ver com UX
Criatividade, Inovação e Métodos Ágeis - O que isso tem a ver com UXCriatividade, Inovação e Métodos Ágeis - O que isso tem a ver com UX
Criatividade, Inovação e Métodos Ágeis - O que isso tem a ver com UXIngrid Castro
 
Arquitetura da Informação
Arquitetura da InformaçãoArquitetura da Informação
Arquitetura da InformaçãoMarcello Cardoso
 
Glossario Ketchum de Midias Sociais
Glossario Ketchum de Midias SociaisGlossario Ketchum de Midias Sociais
Glossario Ketchum de Midias SociaisCorretor Pimentel
 
Glossario ketchum-midias-sociais
Glossario ketchum-midias-sociaisGlossario ketchum-midias-sociais
Glossario ketchum-midias-sociaisAndréa Castro
 
Apresentacao Projetos Educação a Distância Iag
Apresentacao Projetos Educação a Distância IagApresentacao Projetos Educação a Distância Iag
Apresentacao Projetos Educação a Distância Iagmlcunha
 
Inteligência Artificial
Inteligência ArtificialInteligência Artificial
Inteligência ArtificialLincolm Aguiar
 

Semelhante a Elga Von Weissendorf - Inteligência artificial em um chat bot (15)

Como podemos usar o design para melhorar a I.A.?
Como podemos usar o design para melhorar a I.A.?Como podemos usar o design para melhorar a I.A.?
Como podemos usar o design para melhorar a I.A.?
 
Mestrado - MRS - IA vs. SMM.pdf
Mestrado - MRS - IA vs. SMM.pdfMestrado - MRS - IA vs. SMM.pdf
Mestrado - MRS - IA vs. SMM.pdf
 
Mestrado - MRS - IA vs. SMM
Mestrado - MRS - IA vs. SMMMestrado - MRS - IA vs. SMM
Mestrado - MRS - IA vs. SMM
 
Web - O que um geek antenado deve conhecer
Web - O que um geek antenado deve conhecerWeb - O que um geek antenado deve conhecer
Web - O que um geek antenado deve conhecer
 
Design Centrado no Usuário
Design Centrado no UsuárioDesign Centrado no Usuário
Design Centrado no Usuário
 
AULaaaaaaaaaaaaA PJI por Cassio Melo.pptx
AULaaaaaaaaaaaaA  PJI por Cassio Melo.pptxAULaaaaaaaaaaaaA  PJI por Cassio Melo.pptx
AULaaaaaaaaaaaaA PJI por Cassio Melo.pptx
 
Criatividade, Inovação e Métodos Ágeis - O que isso tem a ver com UX
Criatividade, Inovação e Métodos Ágeis - O que isso tem a ver com UXCriatividade, Inovação e Métodos Ágeis - O que isso tem a ver com UX
Criatividade, Inovação e Métodos Ágeis - O que isso tem a ver com UX
 
12. web2parte2
12. web2parte212. web2parte2
12. web2parte2
 
Arquitetura da Informação
Arquitetura da InformaçãoArquitetura da Informação
Arquitetura da Informação
 
Glossario Ketchum de Midias Sociais
Glossario Ketchum de Midias SociaisGlossario Ketchum de Midias Sociais
Glossario Ketchum de Midias Sociais
 
Glossario ketchum-midias-sociais
Glossario ketchum-midias-sociaisGlossario ketchum-midias-sociais
Glossario ketchum-midias-sociais
 
Apresentacao Projetos Educação a Distância Iag
Apresentacao Projetos Educação a Distância IagApresentacao Projetos Educação a Distância Iag
Apresentacao Projetos Educação a Distância Iag
 
CCM_ICPD_1
CCM_ICPD_1CCM_ICPD_1
CCM_ICPD_1
 
Social
Social Social
Social
 
Inteligência Artificial
Inteligência ArtificialInteligência Artificial
Inteligência Artificial
 

Elga Von Weissendorf - Inteligência artificial em um chat bot

  • 1. Aplicação do conceito de Inteligência Artificial em um ChatBot Trabalho Prático da disciplina de Inteligência Artificial Derek Budde, A21000230 Luís Fontes, A21003874 J. Ricardo , A21001874 Trabalho de grupo, no âmbito da Disciplina de Inteligência Artificial, que pertente conceptualizar o desenvolvimento de um sistema do tipo “ChatBot” onde será possível dar uso aos diversos conteúdos apreendidos ao longo das aulas teóricas e práticas assim, como demonstrar conhecimentosadquiridosnopercurso académicoaté aopresente terceiroano.
  • 2. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 CONTEÚDO Controlo de versões .................................................................................................................................................................3 EQUADRAMENTO .....................................................................................................................................................................4 Chatbot..................................................................................................................................................................................4 O que é um chatbot? ......................................................................................................................................................4 E qual a relevância deum “chatbot” para demonstração de assimilação deconteúdos no âmbito da disciplina de Inteligência Artificial?..............................................................................................................................5 Necessidade de chatbot’s ..............................................................................................................................................5 ESTRUTURA CHATBOT..............................................................................................................................................................6 Interpretador AIML..............................................................................................................................................................6 Recursão...........................................................................................................................................................................7 Arquitetura do chatbot aiml..........................................................................................................................................8 Implementação em C#.....................................................................................................................................................10 Modulo interpretadores AIML........................................................................................................................................11 Módulo da base de conhecimento ................................................................................................................................12 Personalidade...............................................................................................................................................................12 Módulo de expressões Faciais........................................................................................................................................13 Módulo Regular Expression............................................................................................................................................14 Módulo Voz Text-to-Speech ...........................................................................................................................................15 Módulo Word Frequency e Emotion analysis..............................................................................................................16 Análises de emoções ...................................................................................................................................................17 Suporte academico ao algoritimo modificado........................................................................................................18 Desafios CHATBOT’S..............................................................................................................................................................19 Conclusão................................................................................................................................................................................19 Referencias..............................................................................................................................................................................20
  • 3. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 CONTROLO DE VERSÕES Pré-requisitos AIMLbot2.5 MicrosoftSAPI 5 ou 4 RealSpeak TTS engine - ScanSoft Steffi_Dri40_16kHz Versão Autor/Alterado Por Data de Alteração Descrição da Versão 1.1 Derek Budde & Luís Fontes & J. Ricardo Fernandes 31-12-2012 AIMLBot 1.2 Derek Budde & Luís Fontes & J. Ricardo Fernandes 31-12-2012 Expressões Faciais 1.3 Derek Budde & Luís Fontes & J. Ricardo Fernandes 31-12-2012 Voz,TTR, Analise de emoções 1.4 Derek Budde & Luís Fontes & J. Ricardo Fernandes 31-12-2012 Versão de entrega
  • 4. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 EQUADRAMENTO CHATBOT O QUE É UM CHATBOT? Trata-se de um programa de computador que tem como objetivo simular uma conversa real com o utilizador, respondendo às perguntas realizadas pelo último, recorrendo a uma base de conhecimento previamente construída e antecipando uma resposta espectável de um humano, recorrendo a algoritmos do âmbito da Inteligência Artificial. Quanto mais evoluída for esta base de conhecimento melhor será a resposta emitida pelo chatbot, ou seja mais “humanizada”. É uma entidade de inteligência artificial capaz de simular uma pessoa através do Processamento da Linguagem Natural (PLN). Existemvários tipos de chatbot, conforme a sua funcionalidade. São exemplos: Chatbots de Entretenimento - ELIZA, dialogo tipo chat Chatbots de Ajuda - FAQ, responder sobre um determinado assunto Chatbost Comerciais de ajuda ao consumidor - Suporte técnico Chatbots Comerciais de Marketing - Representar a empresa e produtos Chatbots sem classificação - ULTRA-HAL, assistente pessoal, aprendizagem, podem discar um número, realizar tarefas, etc.
  • 5. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 E QUAL A RELEVÂNCIA DE UM “CHATBOT” PARA DEMONSTRAÇÃO DE ASSIMILAÇÃO DE CONTEÚDOS NO ÂMBITO DA DISCIPLINA DE INTELIGÊNCIA ARTIFICIAL? Muitas poderiam ser as abordagens escolhidas para a realização de um trabalho prático no âmbito da disciplina em questão, mas foi de unanime entre os elementos deste grupo de trabalho que teria ser um “chatbot, A aplicação em causa permite não só aplicação dos conteúdos aprendidos no que toca à construção e desenvolvimento de bases de conhecimento, como nos leva um pouco mais além, para domínios um pouco mais discutíveis e também presentes nos conhecimentos assimilados durante as aulas, como sendo por exemplo a construção de uma “personalidade” e a construção de mecanismos que realizem aprendizagem por meio de interação com utilizadores. Foi também nosso propósito com esta abordagem conhecer e apreender conceitos reais e utilizados no dia-a-dia, sendo surpreendente a conclusão de como a “inteligência artificial” está embebida nas nossas vidas, nomeadamente e a título de exemplo em muitos “chatbot” de diversos sítios na internet, que são visitados diariamente por milhares de utilizadores. NECESSIDADE DE CHATBOT’S É nosso entendimento que para além de várias vertentes praticas e comerciais como por exemplo esclarecimento de dúvidas em site, e/ou recomendação de produtos a “navegadores web”, o “chatbot” pode ser muito mais útil, e consideramos então como uma “necessidade” a criação de “chatbot’s” com reatividade muito específica para diversos públicos-alvo como sendo por exemplo na Educação para a estimular e fomentar a aprendizagem, e também por exemplo para a população mais idosa como meio de ligação e também de aprendizagem de novas tecnologias.
  • 6. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 ESTRUTURA CHATBOT INTERPRETADOR AIML O AIML basea-se em SGML e XML que compões a base de conhecimento e regras de um chatbot. Uma da grande vantagem desta linguagem é seu alto índice de reaproveitamento de sua base de conhecimento. O AIML utiliza como técnica a procurar de palavras-chave na pergunta, que possam ser anexadas a um assunto ou a uma resposta anterior, facilitando o direccionamento da conversa. A linguagemAIML são módulos que se chamam de categorias. Cada categoria possui um padrão de entrada, que compara à sentença digitada pelo usuário, e um padrão de resposta, que é usado para estruturar uma sentença a ser retornada ao usuário. Esse padrão de resposta utiliza tags de marcação para a sua construção. Ilustração 1 –AIML representação dalinguagem
  • 7. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 Ilustração 2 -AIML conceito visual de resposta As principais tags do AIML são: <aiml> incia e termina um bloco programado em AIML <category> identifica uma “unidade de conhecimento” na base de conhecimento <pattern> identifica um padrão de mensagem simples freqüentemente utilizado por usuários. <template> contém a resposta para uma mensagem do usuário. RECURSÃO O maior sucesso da linguagem AIML, conjuntamente com as tags de definição de contexto, é a tag <srai>. Funciona de uma maneira similar a um salto incondicional utilizado em muitas linguagens de programação (goto), permitindo que a resposta a uma determinada pergunta possa ser redirecionada a uma categoria em que a mesma já foi respondida.
  • 8. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 Ilustração 3 -AIML categorias Para solucionar o tratamento da forma verbal, como na pergunta 'Como eu crio um google grupo?' (primeira pessoa), é utilizado o arquivo de substituições disponível no interpretador ProgramD [Bush, 2009]. Ilustração 4 - AIML substituições ARQUITETURA DO CHATBOT AIML Ilustração 5 - AIML arquitectura
  • 9. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 O interpretador AIML é um módulo fundamental para o funcionamento do chatbot. Tem como tarefa receber como entrada as sentenças digitadas pelos usuários, e buscar na base AIML uma categoria cujo o padrão de entrada seja o mais adequado para a sentença atual. Em seguida, o interpretador monta a resposta que será devolvida ao usuário. Verifica se existemtags a serem processadas no template de saída dessa categoria. Em caso afirmativo, ele executa essas tags, buscando na base de conhecimento, quando necessário, informações adicionais para completar a sentença de saída. Ilustração 6 -AIML módulosinternosdaarquitectura
  • 10. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 IMPLEMENTAÇÃO EM C# Para a implementação da aplicação é necessário a concepção de uma estrutura definida para a boa organização e funcionalidade do código a ser escrito. Assimteremos: Modulo Interpretador AIML Base de conhecimento (em inglês) Modulo de Expressões Faciais Modulo de Voz Text-to-Speech (TTS) Modulo Regular Expression (pattern) Modulo Word Frequency e Emotion Analysis Ilustração 7 -Representação daestruturado programa
  • 11. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 MODULO INTERPRETADORES AIML O módulo interpretador é alcançado pela implementação da API AIMLBot, este recebe e retorna uma sentença conforme o próprio processamento da frase introduzida pelo diálogo com o utilizador. Como representado no diagrama acima este módulo recebe a sentença de palavras após um pré processamento do módulo (Regular Expression). A própria API se encarrega de procurar e analisar as possíveis respostas a seremretornadas a função.
  • 12. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 MÓDULO DA BASE DE CONHECIMENTO Os ficheiros baseam-se em SGML e XML que compões a base de conhecimento e regras de um chatbot. Uma da grande vantagem desta linguagem é seu alto índice de reaproveitamento de sua base de conhecimento. O AIML utiliza como tecnica a procurar de palavras-chave na pergunta, que possam ser anexadas a um assunto ou a uma resposta anterior, facilitando o direcionamento da conversa. Ilustração 8 -Base de conhecimento PERSONALIDADE É possivel configurar a personalidade do bot, tal como gostos,genero e hobbies. O ficheiro settings.xml guardara essas configurações. Ilustração 9 -Personalidade configuração
  • 13. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 MÓDULO DE EXPRESSÕES FACIAIS Este módulo é responsável por classificar as interjeições contidas na frase enviada pelo usuário. As interjeições são palavras invariáveis que exprimem estados emocionais, ou mais abrangente: sensações e estados de espírito. Podem ter significado diferente consoante a implementação na frase. Ilustração 10 -EstruturaExpressão Facial Exemplo Texto enviado - “Ouch, My Brain Hurts!” Texto recebido - ouch my brain hurts Compara na BD – ouch Recebe Categoria da BD – pain, annoyance Random Seleciona – pain Gráficos “pain” - "C2", "E1“ Random Seleciona - "E1“ Imagem alterada para E1.png
  • 14. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 MÓDULO REGULAR EXPRESSION Normalização do texto e dos caracteres especiais inseridos, algoritmo utilizado NLP Word and Text Manipulation e Regular Expressions. Exemplo: Texto Enviado - Olá, *mundo!!! 1. fase – Olá *mundo 2. fase – Ola mundo 3. fase – ola mundo Ilustração 11 -DiagramaModulo Regular Expression // eliminacao de caracters invalidos e normalizacao das maiusculas Regex regEx2 = new Regex(pattern2); string preWords1 = regEx2.Replace(inputBox.Text, replacement).ToLower(); getOutput(preWords1); // eliminacao de non-ASCII characters Regex regEx3 = new Regex(pattern3); string preWords2 = regEx3.Replace(preWords1, replacement2); // separacao da pontuacao string[ preWords3 = Regex.Split(preWords2, pattern1, RegexOptions.IgnorePatternWhitespace);
  • 15. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 MÓDULO VOZ TEXT-TO-SPEECH Com a implementação do TTS do Sistema Operacional Windows é possivel utilizar a voz padrão do computador para a leitura das frases. A voz de saída é inglês com sotaque alemão, para que o Chatbot possa adquir uma maior personalidade. Ilustração 12 -DiagramaTTS No exemplo demonstra a entrada de uma string e a leitura do texto através da funcionalidade TTS do sistema. – - – - string answer = "Elga" + " - " + answerBot + "rn"; _speech.SelectVoice("ScanSoft Steffi_Dri40_16kHz"); _speech.SpeakAsync(answerBot);
  • 16. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 MÓDULO WORD FREQUENCY E EMOTION ANALYSIS - No exemplo acima observamos que a interjeição “oh”, ocorre 1 vez na primeira linha, 2 vezes na segunda linha e 1 vez na terceira linha, isso significa que com o constante uso desta interjeição o usuário está expressando um sentimento durante o diálogo. Com esta observação, podemos utilizar o algoritimo de Type-Token Ratio, para determinar uma emoção com base na frequência em que a interjeição está sendo utilizada. Ilustração 13 - Modulo TTR e Emotion Analysis Estado emocional parcial = interjeições na frase Estado emocional global = Exemplo: Freq. Rank 1 - oh boy! 1 1 2 - oh, that hurts, oh! 2 1 3 - oh, that hurts? 1 1 Nº de frequências = 4 Nº de rank = 3 Total emocional =
  • 17. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 ANÁLISE DE EMOÇÕES - - - - – – Ilustração 14 –Possíveisresultadosde um diálogo
  • 18. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 SUPORTE ACADEMICO AO ALGORITIMO MODIFICADO Keyword Spotting Technique The keyword pattern matching problem can be described as the problem of finding occurrences of keywords from a given set as substrings in a given string. This problem has been studied in the past and algorithms have been suggested for solving it. In the context of emotion detection this method is based on certain predefined keywords. These words are classified into categories such as disgusted, sad, happy, angry, fearful, surprised etc. Process of Keyword spotting method. Lexical Affinity Method Detecting emotions based on related keywords is an easy to use and straightforward method. Lexical Affinity approach is an extension of keyword spotting technique; it assigns a probabilistic ‘affinity’ for a particular emotion to arbitrary words apart from picking up emotional keywords. These probabilities are often part of linguistic corpora, but have disadvantages; firstly the assigned probabilities are biased toward corpus-specific genre of texts, secondly it misses out emotional content that resides deeper than the word-level on which this technique operates. For example the word ‘accident’, having been assigned a high probability of indicating a negative emotion, would not contribute correctly to the emotional assessment of phrases like ‘I avoided an accident’ or ‘I met my girlfriend by accident’. Ilustração 15 -Representação Gráfica Texto extraído do documento original, citado nas referências do projecto, divulgado para consulta publica de académicos.
  • 19. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 DESAFIOS CHATBOT’S Um chatbot também apresenta desafios, sendo a principal delas o fato de que é um programa de computador e não é capaz de pensar e aprender da mesma forma que um ser humano o faz. Como a quantidade de sentenças que um ser humano pode produzir é praticamente infinita, dificilmente um software será capaz de lidar com todos os tipos de input fornecido pelos usuários. Porém, apesar das limitações, esse tipo de programa não pode ser desprezado como ferramenta auxiliar no ensino. O potencial para o uso dessa tecnologia é enorme não só na área da educação, como também para qualquer área que necessite de consulta `a bases de dados, como atendimento ao cliente, suporte on-line, etc. Conforme comentado em (PALAZZO, 1997): “O PLN é da maior importância para o desenvolvimento de ferramentas para a comunicação homem-máquina em geral e para a construção de interfaces SBCs em particular”. Por SBCs Palazzo refere-se a Sistemas Baseados emConhecimento. CONCLUSÃO Embora o módulo de interpretação contém o algoritmo de procura em árvore, muitas das decisões de resposta ainda se mantém iguais aos primeiros modelos a nível de NLP. Houve muitas tentativas em conseguir reproduzir a fala em linguagem natural, mas vem se verificando impossível alcançar um grau satisfatório, apesar dos avanços alcançados a nível de programação. Neste projecto foi demonstrado como utilizar vários módulos para complementar o processo de IA em chatbots desde a implementações de algoritmos NLP (Word and Text Manipulation e Regular Expressions) , bem como o processo de decisão facial que podemos assumir como um decisão interactiva de escolha, consoante interjeições utilizadas pelo usuário. Para trabalhos futuros a implementação de reconhecimento facial com OpenCV para C# através de uma webcam mostra-se muito aliciante, possibilitando o bot responder também a expressões emocionais por parte do utilizador. Assim conclui-se que só tal nível de satisfação poderá ser alcançado através de um conjunto de outros sensores para que o chatbot responda de uma forma natural.
  • 20. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 REFERENCIAS AIMLBot (Program#) - http://aimlbot.sourceforge.net/ Natural language processing - http://nlpdotnet.com/ Informação & Sociedade: Estudos v. 18, n. 2, 2008. CHATTERBOT: Conceito, Características, tipologia e Construção; Rafaela Lunardi, Comarella, Ligia Maria Arruda Café, Universidade Federal de Pernambuco Centro de informática pós- graduação em ciência da computação; Recife, 2003 Um chatterbot para aquisição automática de perfil do usuário; Thiago José Marques Moura, Dissertação de Mestrado, Universidade Federal de Pernambuco,Recife 03 - 2003 Chatterbots podem ser úteis ? ; Jefferson Mendes Silva, Faculdade de tecnologia de são paulo - São Paulo – Brasil 2012 TTR-http://www.speech-therapy-information-and-resources.com/type-token- ratio.html Word Counting - http://www.devcurry.com/2010/07/count-repeated-words-in- list.html Revista CEFAC - On-line version ISSN 1982-0216 - Types e tokens na aquisição típica de linguagem por sujeitos de 18 a 32 meses falantes do português brasileiro, http://www.scielo.br/scielo.php?pid=S1516-18462011 005000058&script=sci_arttext Towards Socialized Machines: Emotions and Sense of Humour in Conversational Agents, Michal Ptaszynski, Pawel Dybala, Shinsuke Higuhi, Wenhan Shi,Rafal Rzepka and Kenji Araki, Hokkaido University, Japan Computational Models of Emotion - Stacy Marsella, Jonathan Gratch and Paulo Petta. In Scherer, K.R., Bänziger,. T., & Roesch, E. (Eds.) A blueprint for an affectively competent agent: Cross- fertilization between Emotion Psychology.
  • 21. APLICAÇÃO DO CONCEITO DE INTELIGÊNCIA ARTIFICIAL EM UM CHATBOT 24 de Janeiro de 2013 Affective Neuroscience, and Affective Computing. Oxford: Oxford University Press, 2010 http://people.ict.usc.edu/~marsella/publications/bytopic.html The Many Faces by Lachyen - http://lachyen.deviantart.com/art/The-Many-Faces- 45804641 EMOTION DETECTION FROM TEXT - Shiv Naresh Shivhare1 and Prof. Saritha Khethawat2 , 1 Department of CSE and IT, Maulana Azad National Institute of Technology, Bhopal, Madhya Pradesh, 2 Department of CSE and IT, Maulana Azad National Institute of Technology, Bhopal, Madhya Pradesh, India http://airccj.org/CSCP/vol2/csit2237.pdf