Sistemas Híbridos
Inteligentes
Teresa Bernarda Ludermir
Centro de Informática - UFPE
1
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
2
Técnicas de IA
Redes
Neurais
Raciocínio
Baseado
em casos
Schemata
Lógica
Fuzzy
Raciocínio
Baseado
em Regras
Outras
Algoritmos
Genéticos
Redes
Semânticas
Programação
Lógica
3
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
4
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.
5
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
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
7
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.
8
Problemas de implementação

Diferentes representações de conhecimento

Conhecimento estruturado versus não estruturado
 Regras
 Casos
Bases de dados
 Dados numéricos

9
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
10
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)
11
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).

12
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.

13
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.
14
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.

15
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.
16
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.

17
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.
18
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.

19
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
20
(e.g., percepção) e aprendizado.
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.
21
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.
22
Classificação dos SHI
Tipo I: Substituição de Função
 Tipo II: Híbridos Intercomunicativos
 Tipo III: Híbridos Polimórficos

23
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.
24
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 subtarefas 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.
25
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].
26
Ciclo de desenvolvimento de SHs
Analise do problema
 Casamento das propriedades
 Seleção da categoria de hibridismo
 Implementação
 Validação
 Manutenção

27
Analise do problema
Identificar sub-tarefas
 Identificar propriedades

28
Casamento de propriedades
Aquisicao de conhecimento
 Brittleness (fragilidade)
 tarefas cognitivas de alto e baixo nivel
(raciocinio)
 explicação

29
Técnica
SE
Ind Regras
Fuzzy
NN
GA
Aquisição
1
3
1
5
5
Brittleness
1
2
5
5
3
Alto
5
3
3
1
3
Baixo
1
2
5
5
3
Explicação
5
3
4
1
3
30
Selecao da cateogoria de
hibridismo
Tipo I: Substituição de Função
 Tipo II: Híbridos Intercomunicativos
 Tipo III: Híbridos Polimórficos

31
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

32
Por que utilizar AGs ?

Problemas das RNA

Não existe um conjunto de regras para definir
melhor rede para um dado problema
 Modelo
 Estrutura
 Parâmetros de aprendizado
 Conhecimento empírico, baseado na experiência
33
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
inexplorado

 Não é prático avaliar manualmente uma variedade razoável
de arquiteturas

“Uma boa arquitetura” depende da aplicação
34
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
35
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

36
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

37
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 RNAs
 Que tipos de estruturas “sobreviverão” dado um conjunto
de condições
 Não informa porque estrutura falhou, mas mostra os
fósseis gerados
38
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

39
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
40
Aptidão

Função de aptidão

Combinação de medidas consideradas importantes
para o problema
 Velocidade de aprendizado
 Precisão requerida
 Fatores de custo



Tamanho
Complexidade
Melhora progressiva da eficiência da RNA
41
Codificação

Aspectos críticos:
Classes de arquiteturas a serem geradas
 Funcioamento dos processos de

 Codificação
 Decodificação

Espaço de busca
42
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
43
Codificação

Codificação pode ser

Direta
 Especifica cada um dos parâmetros das redes
 Requer pouco esforço de codificação

Indireta
 Descrição abstrata ou gramatical
 Pode pré-estruturar as redes (para excluir arquiteturas não
factíveis)
 maior esforço para decodificação
44
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

45
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 fechado

 Crossover 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
46
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
47
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 RNA

 Partes do cromossomo com problemas podem ser mantidas
ou eliminadas
48
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

49
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ões
 Usinas hidroelétricas e nucleares
 Diagnóstico médico
50
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

51
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

52
Extração de regras

Classificação dos algoritmos de extração
de regras

Generalidade do algoritmo
 Geral
 Especifico

Fonte das regras
53
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ética
 Combinação das abordagens anteriores
54
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.
55
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).

56
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.
57
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)

58
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.
59
Exemplos
Extração de Regra como Aprendizagem
(M.W. Craven e J.W. Shavlik).
 Algoritmo FuzzyRulext (L.M. Brasil)
 ProRulext (Campos)

60
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 pertinencia
 Definição funções de ativação

Redes Neurais Fuzzy
 Incorpora conceitos de Sistemas Fuzzy em Redes
Neurais
61
Otimizacao de Redes Neurais

Uma Metodologia para Otimização de
Arquiteturas e Pesos de Redes Neurais
62
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
63
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
64
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
65
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
66
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
67
Estudo de casos

NeuroGENESYS

Foi utilizado para
 Reconhecimento de caracteres
 XOR
 Aproximaçã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

68
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
69
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
70
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

71
Trabalhos Futuros
Conexões para fenômenos cognitivos
 Ferramentas para implementação eficiente
 Aplicações do mundo real para ganhar
experiência

72
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)
73
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
74
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
75
Mais informações

International Journal of Computational
Intelligence (IJCI)
www.enformatika.org/journals/1304-2386/
76
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
77
Download

O que é um sistema híbrido? - Centro de Informática da UFPE