Upload
internet
View
130
Download
1
Embed Size (px)
Citation preview
1
Sistemas Híbridos Inteligentes
Teresa Bernarda Ludermir
Centro de Informática - UFPE
2
O que é um sistema híbrido?
Híbridos Definição: o que é heterogêneo em orígem ou
composição (latin) Biologicamente híbridos
Várias espécies vegetais são híbridas de outras espécies ou plantas
Tecnologicamente híbridos Sistemas inteligentes utilizando diferentes métodos
de processamento de informação
3
Técnicas de IA
RedesNeurais
LógicaFuzzy Algoritmos
Genéticos
SchemataProgramação
Lógica
Redes Semânticas
Raciocínio Baseado em casos
Raciocínio Baseado
em Regras
Outras
4
Por que sistemas híbridos?
Toda técnica de IA tem suas vantagens e desvantagens para resolver diferentes tipos de problemas
Técnicas atuais ainda estão muito distantes da capacidade de processamento dos seres humanos
Existem problemas complexos de IA que não podem ser resolvidos, facilmente, com as técnicas atuais
5
Por que sistemas híbridos?
Os sistemas inteligentes coletivamente possuem características como: habilidade de aprendizagem, adaptação às mudanças, capacidade de explanação e flexibilidade para lidar com informações imprecisas e incompletas, etc.
Nenhuma técnica inteligente por si só possui todas essas características.
As limitações e pontos fortes de cada uma das técnicas inteligentes é a força motriz por trás dos sistemas inteligentes híbridos.
Ao integrar as técnicas inteligentes podem ser aumentados os pontos fortes e reduzidos os pontos fracos do sistema inteligente.
Sistemas Inteligentes Híbridos
O teorema da Inexistência de Almoço Grátis O No-Free-Lunch Theorem (NFL) afirma que todos os
algoritmos de busca têm exatamente o mesmo desempenho, quando faz-se uma média através de todos os infinitos problemas existentes.
6
7
Objetivo de sistemas híbridos
Integração de diferentes técnicas de processamento de informações em um sistema para resolver problemas em domínios onde nenhuma das técnicas originais (tradicionais) tem sido aplicada com sucesso
8
Razões para a criação de Sistemas Híbridos
Aperfeiçoamento das técnicas: Integração de diferentes técnicas para superar as limitações de cada técnica. Aqui o objetivo é tomar uma técnica que tem um ponto fraco em dada propriedade e combiná-la com uma técnica que tem a força, nessa mesma propriedade.
Aplicação em múltiplas tarefas: Quando nenhuma técnica está disponível para os muitos subproblemas de uma determinada aplicação, então um sistema híbrido é utilizado.
Percepção de multi-funcionalidades: Sistemas híbridos podem exibir várias informações das capacidades de processamento dentro de uma arquitetura.
9
Problemas de implementação
Diferentes representações de conhecimento Conhecimento estruturado versus não estruturado
RegrasCasos
Bases de dados Dados numéricos
10
Problemas de implementação
Processos de inferência diferentes Serial Processamento paralelo distribuído
Não existe, atualmente, nenhuma abordagem genérica para combinar diferentes esquemas de representação de conhecimento e processos de inferência
11
Foco de pesquisas em SHIs
combinar técnicas fortemente baseadas em dados (e.g., RNAs) com técnicas que se utilizam de conhecimento (e.g., Lógica Fuzzy)
12
IA simbólica
Pode contribuir com: Teoria rígida para manipulação de símbolos –
prova de teoremas. Mecanismos rigorosos e exatos de raciocínio,
incluindo raciocínio encadeado. Modelo de computação universal (e.g., regras
de produção).
13
IA simbólica
Dificuldades: Aquisição de conhecimento. Elicitação de conhecimento de grandes massa
de dados coletadas previamente. Representação de dados e conhecimento
incompleto, ambíguo, com ruído, etc. Processamento de raciocínio aproximado.
14
Sistemas Fuzzy
Podem contribuir com: Teoria de lógica fuzzy bem-definida. Mecanismos de raciocínio similar ao do ser humano,
através do uso de termos lingüísticos. Acomodação de conhecimento de senso comum,
conhecimento ambíguo e conhecimento impreciso mas racional.
Técnicas de aproximação universal. Robustez, tolerância a falha. Baixo custo de desenvolvimento e manutenção.
15
Sistemas Fuzzy
Dificuldades: Geração das regras fuzzy a partir do
conhecimento do especialista. Definição das funções de pertinência são em
geral baseadas num avaliação subjetiva do especialista.
Inexistência de técnicas de aprendizado.
16
Redes Neurais Artificiais
Podem contribuir com: Aprendizado a partir de dados Modelagem empírica do comportamento humano. Técnicas de aproximação universal. Métodos de extração de conhecimento a partir dos
dados. Memórias associativas e técnicas de casamento de
padrão. Paralelismo massivo. Robustez.
17
Redes Neurais Artificiais
Dificuldades: Longo tempo de treinamento. Inexistência de um mecanismo explicativo. Falta de um mecanismo automático e eficiente
para auxiliar o desenvolvedor no projeto da rede.
18
Algoritmos Genéticos
Podem contribuir com: Conhecimento matemático aprofundado do problema
considerado não é necessário. Parâmetros de funções objetivos com superfícies
complexas e complicadas são otimizados de tal forma a reduzir a incidência de mínimos locais.
Paralelismo entrínsico. Tolerância a ruídos e dados incompletos. Flexibilidade para trabalhar com restrições arbitrárias e
otimizar múltiplas funções com objetivos conflitantes. Facilmente hibridizados com outras técnicas e
heurísticas.
19
Algoritmos Genéticos
Dificuldades: Custo computacional na avaliação do
indivíduo. Codificação geralmente intricada do genótipo
para o fenótipo. Convergência prematura.
20
Paradigmas são complementares
Facilitam a manipulação de diferentes tipos de representação de conhecimento, inferências, precisão e tolerância à falhas.
Cada um deles pode ser superior ao outro na resolução de uma sub-tarefa de um problema; por exemplo, as abordagens simbólica e conexionista (RNAs) têm mostrado força em resolver tarefas diferentes. O primeiro vem sendo usado em tarefas cognitivas de mais alto nível (e.g., planejamento), enquanto o segundo tem obtido mais sucesso em tarefas de mais baixo nível (e.g., percepção) e aprendizado.
21
Exemplos de melhoras
Regras (fuzzy ou não) podem ser utilizadas para inicializar a estrutura de uma RNA a fim de acelerar o treinamento e melhorar a generalização.
RNAs podem ser utilizadas para aprender regras (fuzzy ou não).
RNAs podem ser usadas para refinar regras (fuzzy ou não) e funções de pertinência fuzzy.
22
Exemplos de melhoras
AGs podem ser empregados para aprender regras fuzzy e funções de pertinência a partir dos dados.
AGs e simulated annealing podem ser usados para ajustar a topologia e os pesos de uma rede neural artificial, ao invés de usar o tradicional algoritmo de gradiente descendente.
RNAs e AGs podem ser utilizados como parte de uma máquina de raciocínio simbólico.
23
Classificação dos SHI
Tipo I: Substituição de Função Tipo II: Híbridos Intercomunicativos Tipo III: Híbridos Polimórficos
24
Tipo I: Substituição de Função
Function Replacing: nessa categoria, uma técnica é usada para implementar uma função de outra técnica. Essa forma de hibridismo não acrescenta nenhuma funcionalidade ao sistema inteligente, apenas tenta superar alguma limitação da técnica principal ou otimizar sua execução. Como exemplo, se pode citar o uso de algoritmos genéticos para otimização dos pesos de uma rede neural.
25
Tipo II: Híbridos Intercomunicativos
Intercommunicating Hybrids: esta é a categoria de sistemas híbridos usada para resolver problemas complexos que possam ser divididos em várias sub-tarefas independentes. Assim, o sistema híbrido é formado por módulos independentes, onde cada um usa uma técnica inteligente para resolver uma das sub-tarefas do problema principal. Como exemplo, se pode citar o sistema EITHER [R. Mooney e D. Ourston 1994], que usa módulos independentes de raciocínio indutivo, dedutivo e abdutivo para revisar claúsulas de Horn. Cada tipo de raciocínio foi implementado com uma técnica especifica.
26
Tipo III: Híbridos Polimórficos
Polymorphic Hybrids: nessa categoria, uma única técnica é adaptada para realizar uma tarefa inerente a uma outra técnica. A motivação dessa categoria é descobrir novas funcionalidades de uma técnica e entender como diferentes técnicas podem se relacionar. Como exemplo, se pode citar o uso de RNAs para raciocínio simbólico – manipulação de regras [V. Honavar e L. Uhr, 1995] e [V. Ajjanagadde e L. Shastri, 1995].
27
Ciclo de desenvolvimento de SHs
Analise do problema Casamento das propriedades Seleção da categoria de hibridismo Implementação Validação Manutenção
28
Analise do problema
Identificar sub-tarefas Identificar propriedades
29
Casamento de propriedades
Aquisicao de conhecimento Brittleness (fragilidade) tarefas cognitivas de alto e baixo nivel
(raciocinio) explicação
30
Técnica Aquisição Brittleness Alto Baixo Explicação SE 1 1 5 1 5 Ind Regras 3 2 3 2 3 Fuzzy 1 5 3 5 4 NN 5 5 1 5 1 GA 5 3 3 3 3
31
Selecao da cateogoria de hibridismo
Tipo I: Substituição de Função Tipo II: Híbridos Intercomunicativos Tipo III: Híbridos Polimórficos
32
Projeto Evolucionário de Redes Neurais Artificiais
Definição da arquitetura de uma rede neural
Métodos de otimização global podem ser empregados no treinamento das RNAs
Otimização dos parâmetros dos algoritmos de treinamento a serem utilizados
33
Por que utilizar AGs ?
Problemas das RNA Não existe um conjunto de regras para definir
melhor rede para um dado problemaModeloEstruturaParâmetros de aprendizadoConhecimento empírico, baseado na experiência
34
Por que utilizar AGs ?
Universo de possíveis modelos é extremamente grande Problemas de laboratório e problemas práticos Maioria do espaço de busca de redes é largamente
inexploradoNão é prático avaliar manualmente uma variedade razoável
de arquiteturas
“Uma boa arquitetura” depende da aplicação
35
Por que utilizar AGs ?
Quantidade significativa de experimentação manual baseada em tentativa e erro é necessária até obtenção da performance adequada
Nenhuma tentativa relevante é realizada para determinar as arquiteturas ótimas Maioria das aplicações adotam estruturas simples e
valores conservadores para parâmetros de aprendizado
36
Por que utilizar AGs ?
O problema de otimização da estrutura de uma RNA para um dado conjunto de critérios de performance é complicado Grande número de variáveis, discretas e contínuas, interagem de
uma forma complexa Avaliação de uma estrutura não é uma tarefa direta
Eficácia do treinamento depende das condições iniciais, que são geralmente randômicas
Problema sob medida para algoritmos genéticos
37
Como aplicar AGs em RNA s?
AGs podem ser aplicados ao problema de projeto de RNAs de várias formas: Treinar uma rede, com uma dada estrutura Aplicar restrições a matriz de conexões de RNAs a
serem treinadas com backpropagation Descobrir estrutura, tamanho e parâmetros de
aprendizado da rede
38
Como aplicar AGs em RNAs?
Depende dos aspectos a serem investigados Desenvolvimento de uma ferramenta para definir melhor
rede para um dado problema Descobrir novas evidências que possam contribuir para
a melhor compreensão teórica do projeto de RNAsQue tipos de estruturas “sobreviverão” dado um conjunto
de condiçõesNão informa porque estrutura falhou, mas mostra os
fósseis gerados
39
Como aplicar AGs em RNAs?
Aspectos a serem considerados Codificação da rede Espaço de arquiteturas de rede a ser explorado Adaptação dos operadores genéticos para que sejam
geradas redes sem problemas de validade Forma da função de aptidão
40
População
População inicial: conjunto de redes aleatóriamente gerado (30 < P < 100) Estrutura de cada rede é codificada em um
cromossomo Genes determinam propriedades anatômicas da rede
e valores de parâmetros para algoritmo de aprendizado
Cada rede é treinada com backpropagation
41
Aptidão
Função de aptidão Combinação de medidas consideradas importantes
para o problemaVelocidade de aprendizadoPrecisão requeridaFatores de custo
Tamanho Complexidade
Melhora progressiva da eficiência da RNA
42
Codificação
Aspectos críticos: Classes de arquiteturas a serem geradas Funcioamento dos processos de
CodificaçãoDecodificação
Espaço de busca
43
Codificação
Desenvolver uma representação para RNA é um dos principais problemas
Existem diversas formas de parametrizar organização e operação da rede Parâmetros podem incluir
Número de camadas Números de unidades em uma camada Número de conexões feedback permitidas Grau de conectividade de uma camada para outra Taxa de aprendizado Termo de erro utilizado ma regra de aprendizado
44
Codificação
Codificação pode ser Direta
Especifica cada um dos parâmetros das redesRequer pouco esforço de codificação
IndiretaDescrição abstrata ou gramaticalPode pré-estruturar as redes (para excluir arquiteturas não
factíveis)maior esforço para decodificação
45
Codificação
Representação deve: Capturar todas as redes potencialmente interessantes
(eficientes) Excluir estruturas de redes não válidas ou sem sentido
Representação pode ter tamanho variável Permite aumentar espaço de busca Limitar pontos de “quebra” dos cromossomos
46
Codificação
É vantajoso definir o menor espaço de busca possível de arquiteturas que é certo de incluir a melhor solução para o problema dado
Esquema de representação deve ser fechadoCrossover ou mutação de cromossomos representando redes
válidas deve produzir redes válidas Trade-off poder de expressividade X admissão de
redes não válidas ou não interessantes
47
Reprodução
Operadores Genéticos Crossover
Limitação dos pontos de “quebra” dos cromossomos Mutação
Limitação das alterações possíveis
Refinamento Eliminar arquiteturas não factíveis
48
Reprodução
Refinamento Garante com que as redes geradas sejam válidas Elimina indivíduos com características indesejáveis Cromossomos com pequenas anormalidades são
purificados quando decodificados para RNAPartes do cromossomo com problemas podem ser mantidas
ou eliminadas
49
Extração de regras
Potencial completo das RNA não poderá ser utilizado sem a capacidade de explicação Problema: inabilidade da rede para explicar, de
forma compreensiva, seu processo de tomada de decisão
Desejável (essencial) que uma capacidade de explicação seja parte da funcionalidade de uma rede treinada
50
Extração de regras
Capacidade de explicação é obrigatória em sistemas críticos Validar a saída da rede sob todas as condições
possíveis de entrada Exemplos:
Sistema de navegação de aviõesUsinas hidroelétricas e nuclearesDiagnóstico médico
51
Extração de regras
Definição Dada uma Rede Neural treinada e os exemplos
utilizados para treiná-la, produzir uma descrição simbólica curta e precisa da rede, Shavlik, 1994
Custo Recursos utilizados Esforço adicional
52
Extração de regras
Benefícios da extração de regras Exploração dos dados e indução de teorias
científicas Inclusão da capacidade de explicação ao
usuário Melhoria na generalização das soluções da
rede Facilitar integração com modulo simbolico
53
Extração de regras
Classificação dos algoritmos de extração de regras Generalidade do algoritmo
GeralEspecifico
Fonte das regras
54
Extração de regras
Fonte das regras Abordagem decomposicional
Extrai regras das unidades individuais (intermediárias e de saída) de uma rede treinada
Abordagem pedagógica (ou caixa preta)Extrai regras que mapeiam as entradas nas saídas
Abordagem ecléticaCombinação das abordagens anteriores
55
Técnica Decomposicional
As regras são extraídas considerando todas as unidades de processamento da rede;
Os conseqüentes das regras (Parte Então) são obtidos das unidades de saídas, cujos valores são geralmente codificados em 0 ou 1 (forma booleana);
Já os antecedentes das regras (Parte Se) são obtidos de uma combinação das unidades escondidas com as unidades de entrada.
56
Exemplos Decomposicional
Algoritmo KT (L.M. Fu); SUBSET (G.G. Towell e J.W. Shavlik); RuleNet (C. McMillan et ali.); M-of-N (G.G. Towell e J.W. Shavlik); Rulex (R. Andrews e S. Geva).
57
Técnica Pedagógica ou Didática
A visão geral da RNA é opaca; Geralmente considera-se essa extração de
regras como uma tarefa de aprendizado; O conceito alvo é a função computada pela rede; Mapeia as entradas diretamente nas saídas da
rede; Tipicamente é usada em conjunto com outras
técnicas ou algoritmos de aprendizado simbólico.
58
Exemplos
Análise-VI ou VIA (Validity Interval Analysis - S.B. Thrun);
RULENEG (E. Pop et ali.); DEDEC (Decision Detection by Rule
Extraction from Neural Networks - A.B. Tickle et ali.).
Literal (Campos)
59
Técnica Eclética ou Combinacional
São compostos elementos das técnicas decomposicional e pedagógica;
Pode-se considerar o conhecimento sobre a arquitetura interna e/ou vetores de pesos da RNA treinada para complementar um algoritmo de aprendizado simbólico;
Geralmente usa-se uma das duas técnicas já citadas para obter-se os antecedentes das regras e a outra técnica para determinar-se os conseqüentes.
60
Exemplos
Extração de Regra como Aprendizagem (M.W. Craven e J.W. Shavlik).
Algoritmo FuzzyRulext (L.M. Brasil) ProRulext (Campos)
61
Logica Fuzzy e Redes Neurais
Abordagem hibrida mais comum Sistema Fuzzy com caracteristicas neurais
Incorpora conceitos de Redes Neurais em Sistemas Fuzzy
Definição de funções de pertinenciaDefinição funções de ativação
Redes Neurais Fuzzy Incorpora conceitos de Sistemas Fuzzy em Redes
Neurais
62
Otimizacao de Redes Neurais
Uma Metodologia para Otimização de Arquiteturas e Pesos de Redes Neurais
63
Pesquisa futura
Métodos formais para validação e verificação de sistemas complexos
Técnicas para integração de diferentes paradigmas computacionais
Métodos para representação de vários tipos de conhecimento
Conexões para fenômenos cognitivos Ferramentas para implementação eficiente Aplicações do mundo real para ganhar experiência
64
Pesquisa futura
Projeto de RNAs como compilação de conhecimento introdução nas RNAs do conhecimento específico do problema abordado
Mecanismo explicativos para RNAs algoritmos para extração de regras
Aprendizado conexionista como assimilação de conhecimento novas regularidades recém-descobertas podem ser usadas para aumentar ou revisar a teoria de domínio
65
Estudo de casos
Krovvidy e Wee utilizaram RBC para definir a configuração inicial de uma rede de Hopfield Definir a seqüência de processos químicos em
um sistema de tratamento de esgoto Malek propõe um sistema de indexação para
RBC no qual foi construído na memória uma hierarquia de casos em dois níveis Rede incremental baseada em protótipos
66
Estudo de casos
Reategui utiliza uma RN para aprender padrões de similaridade entre casos de um sistema de RBC Avaliação psicológica de candidatos à
transplante de coração
67
Estudo de casos
Reategui extraiu conhecimento da RN para suportar raciocínio do RBC Sistema para classificação de transações de
cartão de crédito Milaré utilizou uma rede ART para
indexação e adição de casos Sistema para culinária
68
Estudo de casos
NeuroGENESYS Foi utilizado para
Reconhecimento de caracteresXORAproximação da função seno
Encontrou estruturas melhores que aquelas obtidas por abordagem empírica
Redes adequadas foram produzidas após menos que 50 gerações
69
Estudo de casos
Neuroevol Foi utilizado para:
Análise de crédito Encontrou estruturas melhores que aquelas obtidas
por abordagem empírica Redes adequadas foram produzidas após
aproximadamente 10 gerações Otimização de Redes do tipo RBF
70
Outras combinações
Redes Neurais com Lógica Fuzzy A mais comum
Redes Neurais com Estatística Combinação de classificadores
Classificadores simbólicos e estatísticos Redes Neurais com Linguagens Formais
71
Trabalhos Futuros
Métodos formais para lidar com validação e verificação de sistemas complexos
Métodos para a integração de diferentes paradigmas computacionais
Métodos de representação que possam ser utilizados para vários tipos de conhecimento
72
Trabalhos Futuros
Conexões para fenômenos cognitivos Ferramentas para implementação eficiente Aplicações do mundo real para ganhar
experiência
73
Projetos de pesquisa e comerciais
HANSA Framework (ferramentas) HAREM (sistemas de gerenciamento) MIX (combinação de técnicas neurais e
conexionistas) Charles River Analytics (Opensesame, NueX) Gensym (G2, NeurOnline) OMRON Advanced Systems Talarian (RTworks)
74
Mais informações
Visão geral http://ww.cis.njit.edu/franz/Hybrid-Systems.html
Produtos comerciais http://www.opensesame.com http://www.gensym.com http://oas.omron.com http://www.mainstreet.net:3080//rtworks.htm http://www.neural.com:80/realhome.html
75
Mais informações
International Journal of Hybrid Intelligent Systems (IJHIS)
International Conference on Hybrid Intelligent Systems
http://ijhis.hybridsystem.com/ ou www.iospress.nl/html/14485869.php
76
Mais informações
International Journal of Computational Intelligence (IJCI)
www.enformatika.org/journals/1304-2386/
77
Mais informações
Self-organizing mixture models Neurocomputing
Volume 63 , January 2005, Pages 99-123
Meta learning evolutionary artificial neural networks. Ajith Abraham
Neurocomputing Volume 56 , January 2004, Pages 1-38