I SBAI - UNESP - ruo Claro/SP - Brasil Arquiteturas Híbridas Integrando Paradigmas Conexionistas e Simbolistas H.S. LO PES*, S.M. NASSAR t, A. RAMIR Ezt, w.c. LIMAt * CEFET-PR/CPGEEIl - AV.7 de setembro, 3165, 80230-010 Curitiba (PR) t Univ. Fed. Santa. Catarina/GPEB - cx.postal 476,88040-970 Florianópolis (SC) e-mail.s: .. [email protected] .. & "[email protected]" Abstract: An overall insight of the potentiality of a cooperative use of Expert Systems and Neural Networks as a Hybrid System is presented. Firstly, those two conventional paradigms are compared, to emphasize their main characteristics. After, some possible topologies which combine them and some examples are proposed. We conclude the models proposed for Hybrid Systems offer an alternative way to implement knowledge-based systems, which inference mechanism seems to be closer to the cognitive ways employed in an expert decision-making processo 1 Intr od u ção Em muitos domínios de interesse da Inteligência Artificial, o ambiente de resolução de problemas pode ser visto como uma coleção de agentes inteligentes mantendo entre si algum tipo de acoplamento. Cada um destes agentes processa informações e gera respostas baseados no seu próprio conhecimento incompleto do domínio. Em muitos casos, nenhum a.gente detem conhecimento suficiente para a resolução por completo do problema, de maneira que é conveniente uma solução cooperativa ordenada para atingir uma resposta satisfatória. Sistemas de informação baseados em Inteligência Artificial, são em geral desenvolvidos utilizando-se paradigmas simbolistas (Sistemas Especialistas- SE) ou conexionistas (Redes Neurais- RN). Atualmente, vem sendo empregada uma nova abordagem, os chamados Sistemas Híbridos (SH), que combinam SE's e RN's, aliando a capacidade de ambos e tentando minimizar as deficiências de cada um. Uma analogia para avaliar a sinergia destes dois paradigmas trabalhando cooperativamente é traçar um paralelo com o cérebro humano: Sistemas Especialistas (o hemisfério esquerdo, na ma.ioria das pessoas) dependem de regras e são mais adequados para problemas de dedução lógica. Eles podem trabalhar com representação simbólica de dados, tendo a possibilidade de explicar como uma determinada conclusão foi obtida. Redes Neurais (o hemisfério direito, na maioria das pessoas) dependem de exemplos e são mais adequados para tarefas de reconhecimento de padrões. Elas são recomendadas onde as decisões levam em consideração julgamento e intuição baseados na experiência acumulada [1,13]. 2 Comp araçã o entre Sistema s Esp ecialista s e R edes N e u r a is Embora sejam diversas as aplicações de Redes Neurais, todas tem em comum a possibilidade de estabelecer associações entre entradas e saídas conhecidas observando-se um grande número de exemplos. Uma das características importantes das RN's é a sua velocidade de resposta, mesmo fornecendo respostas aproximadas. - 10- I SBAI - UNESP - Rio Claro/SP - Brasil As RN's são utilizadas em substituição aos métodos tradicionais de programação, quando as regras não são determinísticas ou demasiadamente complexas, como é o caso de alguns tipos de problemas estocásticos ou não-lineares. Estes podem ser adequadamente resolvidos com RN's, 'uma vez que seus neurônios artificiais têm resposta não-linear e são altamente interconectados. Entretanto, as RN's não são adequadas para problemas envolvendo regras bem definidas ou problemas procedurais, tais como: estratégias, planejamento, ensino; nestas situações a opção é o emprego de SE's .. Por outro lado, as RN's oferecem maior robustez aos sistemas onde as entradas envo~vem ruído e redundâ.ncia. Os Sistemas Especialistas baseiam o seu raciocínio em regras bem determinadas, sendo predizíveis e explicáveis. A característica fundamental de um SE é que, para ser de fato útil, depende de uma grande base de conhecimento, atualizada e precisa, extraída de especialistas humanos. Entretanto, um SE não possui normalmente a capacidade de extrapolar fatos ou generalizar conclusões. Um SE é desenvolvido adquirindo o conhecimento diretamente do(s) especialista(s), enquanto uma RN adquire conhecimento diretamente de uma base de exemplos com suficiente numero de casos significativos do domínio do conhecimento, selecionados por um especialista. No entanto, uma RN previamente treinada para a resolução de determinada classe de problemas, pode ser utilizada para a obtenção das regras de um SE, quando um especialista humano não for disponível [2]. Este trabalho é particularmente complexo e envolve o rastreamento de informações através da rede, além de uma identificação qualitativa dos nós. Embora seja factível, esta implementação não é usual dada à dificuldade envolvida e da premente necessidade de posterior refinamento das regras obtidas. De maneira análoga, um SE poderia ser empregado para treinar uma RN, fornecendo um conjunto de dados de treinamento da rede. Obviamente neste caso, o conhecimento da RN nunca será maior do que o do SE, embora a RN possa fazer mais eficientemente generalizações. A tabela 1 a seguir, apresenta algumas características adicionais de Redes Neurais e Sistemas Especialistas [1].. CARACTERISTICAS Capacidade de Explicação Aquisição do conhecimento Ambientes de desenvolvimento disponíveis Tempo médio de desenvolvimento Manutenção do sistema Velocidade de processamento PARADIGMA SISTEMA ESPECIALISTA REDE NEURAL excelente pouca ou nenhuma especialista humano grande número de exemplos grande quantidade poucos 12 a 18 meses poucas semanas ou meses bastante complexa simples mais demorado mais rápido Tabela 1: Comparação entre SE's e RN's. Algumas áreas de aplicação de Redes Neurais incluem: reconhecimento de imagens, reconhecimento de caracteres de escrita manual, tradução automática de texto para voz, reconhecimento de sinais de radar, classificação de impressões digitais, prognóstico de reações químicas, etc ... Em relação a áreas de aplicação de Sistemas Especialistas, podemos citar: banco de dados inteligentes, instrução auxiliada por computador, procedimentos de controle de processo, processamento de linguagem natural. Por outro lado, algumas áreas de aplicação permitem a abordagem dos dois modelos, levando-se em consideração as limita.ções de cada um, tais como: planejamento gerencial, modelamento de processos de controle, controle de qualidade e diagnóstico médico. 3 Topologias de Sistemas Híbridos Para o desenvolvimento de sistema.s de informação baseados em Inteligência Artificial, as abordagens de RN's ou SE's não são excludentes, ao contrário, são complementares. Estes Sistemas - 11 - I SBAl - UNESP - Rio Claro/SP - Brasil IIíbridos utilizam os dois paradigmas de forma cooperativa de modo a resolver problemas até então insolúveis quando tratados separada.mente por uma ou outra abordagem. Existem diversas maneiras de integrar RN's e SE's. A escolha de uma topologia depende do problema em questão e dos recursos disponíveis. A seguir são propostas algumas destas topologias. 3.1 Particionamento do Problema U ma das formas mais simples de integrar RN's e SE's é a técnica de "dividir para conquistar", isto é, divide-se um problema complexo em diversos subproblemas e se utiliza o método mais apropriado para resolver cada um deles (figura 1). Desta forma, o Sistema Híbrido gerencia o fluxo de informações entre os módulos, fornecendo as entradas adequadas para cada um e convergindo as soluções parciais em uma resposta única do problema. Este tipo de abordagem nada mais é do que uma arquitetura paralela, com módulos desacoplados (como num sistema blackboard [5]), o que a distingue das abordagens seguintes. Problema Complexo Sistema Híbrido 1- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - --. R,d, N""I e --+---;----- . --+-----.---+l,! Sistema Especialista I • r-- ~et I Solução g , - - - -.... I Modelo Matemático If--+-I:l~ Determinist.ico I 8 --+-----.--....11 . - - + - - - - ; - -.... 11 e ~- ' Algoritmo Ir-_, - Subproblcmas Figura 1: Particionamento do problema. 3.2 Redes Neurais Embutidas Ncstf' tipo de abordagf'm a RN constitui uma parte do SE, que tem a função de gerenciamento: selecionando entradas, ativando a RN adequada para. a situação, proces3ando a saída e gerando uma explicação quando necessá.rio (figura 2). Desta maneira, a RN poderia, por exemplo, implementar a parte do motor de inferência. de um SE que seleciona as regras a serem disparadas através do reconhecimpnto de um determinado padrão de fatos. Uma situação típica em que esta abordagem pode ser utilizada, mostrada na figura 3, é a utilização de RN's para pré-processamento de informações, geralmente de baixo nível (como, por exemplo, sinais provenientes de sensores), ou tarefas que são tipicamente de reconhecimento de padrões, tais como visã.o e reconhecimento de voz [4] . Neste caso, o SE utiliza as generalizações e pré-c1assifica.ções fompcidas pelas RN's como entradas para um processamento simbólico de mais alto nível. A RN funciolla eutã.o como urna espécie de "subrotina" de urna clá.usula SE-ENTÃO de alguma das regras [6J. 3.3 Sistema Especialista Gerador de Explicações Para diversos tipos de aplica.ções é suficiente apenas a resposta do problema, não sendo necessária a explicação do raciocínio lógico empregado para a determinação da solução. Isto é particularmente - 12- I SBAI - UNESP - Rio Claro/SP - Brasil Sistema Híbrido ,----------------------------------Entradas : Solução L _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ .1 Figura 2: Redes Neurais Embutidas. verdadeiro para especialistas em diversas áreas, onde a solução de problemas envolve o reconhecimento intuitivo de um padrão, e não a sua dedução lógica. Neste caso, apenas a Rede Neural é utilizada para gerar uma resposta para o sistema. Sistema Híbrido ,,----------------------------------, ~E",-'n!.!..t::..or..::a.o:.d:::as,,-+-_.j.- E } - _ Sistema Solução Especialista ,L ________________________________ _ ., Figura 3: Pré-processamento de Informações. Entretanto, quando é necessária uma explicação da solução é, a RN falha em poder fornecer a linha de raciocínio empregada, uma vez que o seu conhecimento é "opaco", representado por uma impenetrável massa de pesos e conexões. Desta forma, um SE poderia ser ativado para, a partir da resposta da RN's e das evidências de entrada, gerar uma explicação adequada através de um processamento regressivo, produzindo a sequência de raciocínio que levou à solução. Este mecanismo também é conhecido como confabulação (figura 4). 3.4 Sistema Especialista Conexionista Este tipo de abordagem utiliza uma arquitetura que combina conceitos de Redes Semânticas l com Redes Neurais. Sistemas híbridos desta natureza foram propostos por Gallant [3J e Machado [10,12J. A abordagem de Gallant [3J propõe um modelo de rede conexionista do tipo feedforward (sem ciclos) chamada de rede discriminante linear, onde cada célula é representada por um perceptron. 1 Redes Semânticas são formas de representação de conhecimento simbólico onde, a cada informação é associado um conjunto de nós ligados adequadamente uns aos outros por um conjunto de arcos. Os nós representam os objetos ou conceitos e os arcos as relações entre eles. - 13 - I SBAI - UNESP - Rio Claro/SP - Brasil Sistema Híbrido , Entradas : Solução , :Explicação • , ... _---------------------------------, Figura 4: SE gerador de explicações. Identificando-se cada célula com nomes apropriados pertinentes ao escopo do problema, especifica-se uma interpretação semântica para a ativação de saída de cada perceptron. Uma vez que cada célula está associada a uma variável de interesse (p.ex. sintoma, evidência, diagnóstico, etc ... ) e as relações de dependência entre elas está especificada diretamente pela topologia da rede semâ.ntica, pode-se rastrear regressivamente uma solução fornecida pela rede para produzir uma explicação, embora regras do tipo SE-ENTÃO não sejam representadas explicitamente na base de conhecimento. Uma outra abordagem, proposta por Machado [10,12], utiliza uma estrutura híbrida que combina Redes Semânticas e Redes Neurais Difusas para a representação do conhecimento. Este modelo será detalhado a seguir. 4 Um exemplo de Sistema Híbrido: o Sistema Especialista Conexionista Difuso O Sistema Especialista Conexionista Difuso (SECD), mostrado simplificadamente na figura 5, é composto de diversos módulos com funções específicas, resultando em um sistema bastante flexível. Os principais módulos são [11]: • Base de Conhecimento Conexionista (BCC): composta por uma Rede Semâ.ntica (RS) e uma Rede Neural Difusa (RND). • Máquina de Inferência (MI): que controla o funcionamento do sistema gerenciando as redes neurais e semânticas adequadamente para a solução do problema. • Máquina de Aprendizado (MA): cujo objetivo é refinar o conhecimento do sistema, atuando iterativamente sobre a intensidade das conexões ou alterando a plasticidade das redes. 4.1 4.1.1 Base de Conhecimento Conexionista (BCC) Rede Semântica (RS) A RS dá ao sistema a capacidade de representar facilmente conceitos simbólicos, estrutura e organiza o "problema" e cria um mecanismo de inferência adequado. A RS é composta de duas partes, lima envolvendo somente 'as classes de objetos e um conjunto de relações primitivas, e a outra sendo uma instância deste modelo. Os conceitos típicos envolvidos nesta Rede Semântica são os seguintes: • Hipóteses: representam as categorias de classificação . • Atributos: representam as características quantitativas e qualitativas do objeto em análise. - 14- I SBAI - UNESP - Rio Claro/SP - Brasil Sistema Especialista Conexionista Difuso Entradas: -· I IIM"aqulna de In ferenCla , ,, ,, , t , ,, ,, ,, , . Solução Base de Conhecimento Conexionista , lráquina de Aprendizadf , , ,, ,L ,, , ,, ,, 1 I Rede Semântica I I Rede Neural Difusa I ,, , ,, ____________________________________________________ I Figura 5: Sistema Especialista Conexionista Difuso . • Evidências: representam um resultado possível dos atributos . • Procedimento: representa uma tarefa ou ação que é executada para medir um ou mais atributos. As relações entre evidências e hipóteses são chamadas de Relações de Influência, e são vistas como uma proposição difusa com respeito ao problema em questão. Cada relação de influência terá um grau de possibilidade obtido por uma rede neural difusa associada. 4.1.2 Rede Neural Difusa (RND) A RND utiliza conceitos da lógica fuzzy (lógica difusa ou lógica nebulosa) e calcula o grau de possibilidade de uma hipótese a partir das evidências [10]. A topologia da rede é fortemente inspirada em grafos de conhecimento [8] obtidos dos especialistas e apresenta três ou mais camadas: uma de entrada para as evidências, uma ou mais intermediárias e uma de saída para as hipóteses. As células de entrada recebem informações vindas do usuário ou de saídas de redes de hierarquia inferior. Os dados de entrada podem vir na forma de um grau de possibilidade difuso (ou pertinência) entre O e 1 para uma proposição ou sob a forma não-difusa, correspondendo à medida quantitativa de um atributo. Neste caso, é necessário converter o dado para um grau de possibilidade, o que é executado por uma célula de entrada "juzzificadora". Esta "fuzzificação" é um recurso que permite que todos os parâmetros de entrada sejam normalizados. As camadas intermediárias são implementadas por neurônios tipo fuzzy-E, isto é, a saída Yj do neurônio j é definida como o mini(wi.Xi), onde Wj é o vetor de pesos (ponderações) conectado a este neurônio e Xi é o vetor de entrada da RN. A camada de saída é caracterizada por neurônios tipo fuzzy-OU, cuja função de transferência é Zj = maxi(Wj.Y;), onde Y; é o vetor de saída da camada anterior. Devido a estas características da rede, ela pode ser utilizada para gerar explicações ao usuário, mostrando o raciocínio empregado para se chegar à hipótese resultante. No exemplo da figura 6, a hipótese h 1 é a resultante pois apresenta o maior grau de possibilidade. A explicação é feita tomando-se como base o caminho responsável pela sua ativação. Neste caso, a busca regressiva leva às evidências el e e2 . 4.2 Máquina de Inferência (MI) A MI gerencia a consulta feita pelo usuário trabalhando em dois níveis: rede semântica e rede neural. Ao nível da rede semântica, a MI analisa o objetivo da consulta e seleciona a melhor sequência de raciocínio. Ao nível da rede neural, a MI efetivamente realiza a tarefa de classificação, - 15 - I SBAI - UNESP - Rio Claro/SP - Brasil h1 h2 ~ - - - - - - - - - -~ ,'1 - - - - - - - - - - - - - - - - J ;3" ----- -~. Z I y ,o o, , L 1,8 1,8 • l - - • • • • • I X 10,5 1,4 10,4 T-----l- -----f ------f ------f------f-- J Figura 6: Exemplo de Rede Neural Difusa. podendo também, por um processo regressivo, decidir se efetua perguntas ao usuário com o objetivo de obter mais informações que levem a uma solução do problema, sendo, ainda, ca.paz de explicar ao usuário o raciocínio utilizado. A MI pode trabalhar com 3 tipos de incerteza: • "Nebulosidade" (fuzziness): trabalha com informações cujos limites não são bem definidos; • Imprecisão: admite erros de medida de um parãmetro expresso por um intervalo de tolerância; • Ignorância: a falta de conhecimento de algum parâmetro não impede que o sistema possa chegar a uma conclusão. A MI, por admitir tais incertezas, simula de uma forma mais natural o processo cognitivo de um especialista. 4.3 Máquina de Aprendizado (MA) o conhecimento armazenado nas RN's da BCC é refinado incrementalmente pela MA através de dois processos: • Ajuste dos pesos sinápticos utilizando um Algoritmo de Punição-Recompensa; • Mudando a topologia da RN através de Algoritmos Genéticos, isto é, criando e/ou expurgando nós da rede [11]. Existe uma interação entre as RS e a RN de modo que, durante o aprendizado da RN, ao se concluir que uma evidência é irrelevante para determinada hipótese, esta será eliminada da Rede de Influências. - 16 - I SBAI - UNESP - Rio Claro/SP - Brasil 5 Conclusões Sabe-se que o ponto mais crítico no desenvolvimento de sistemas de informação inteligentes é a aquisição do conhecimento. Em SE's surgem dificuldades da indispensabilidade do especialista durante todo o processo de aquisição, que deve ser feito de modo bastante sistemático. Além disto, a forma com que é transformado o conhecimento do especialista em regras de produção pode conter dificuldades adicionais. Por exemplo: é notória a dificuldade de exteriorização do conhecimento intuitivo de um especialista, ou ainda a implementação de conhecimento de senso comum. No caso de RN's, supõe-se que todo o conhecimento relevante do domínio em questão deva estar contido na base de exemplos, isto é, ela deve ser representativa do universo em estudo. Esta representatividade deve ser tanto quantitativa (número de exemplos) quanto qualitativa (os exemplos devem ser suficientemente heterogêneos para representar todo o espectro do conhecimento, sem no entanto serem contraditórios). A principal dificuldade em se contruir tal base de exemplos é a falta de padronização no registro dos casos acessíveis ao especialista, além do que, o tempo para a obtenção desta base de dados é uma parcela considerável do tempo total de desenvolvimento do sistema. Desta forma, a validade e a precisão do sistema dependem fundamentalmente da base de exemplos utilizada como padrões de treinamento e não do mecanismo de inferência próprio das RN's. Em relação à manutenção da base de conhecimento, no caso de RN, é possível fazer um treinamento dinâmico supervisionado, onde um novo caso só entra no conjunto de exemplos após uma triagem prévia feita pela equipe de desenvolvimento. Esta supervisão é fundamental pois mantém a base de conhecimento atualizada e consistente, impedindo que um caBO atípico leve a rede a concluir um resultado indesejado. Em um SE, a introdução de novos conhecimentos requer a revisão sistemática de toda a base de conhecimento para evitar sua inconsistência, implicando num trabalho árduo e demorado. A utilização de algoritmos genéticos no modelo Sistema Especialista Conexionista Difuso, dá ao sistema uma flexibilidade adequada para se adaptar dinamicamente à evolução de sua base de conhecimento implícita, conferindo a este paradigma elevada adaptabilidade e robustez. As topologias de Sistemas Híbridos descritas, por combinarem a expressividade dos Sistemas Especialistas e a força dos Sistemas Conexionistas, constituem um grande avanço da Inteligência Artificial, e permitem a aplicação de suas técnicas em áreas anteriormente não exploradas, como por exemplo o sistema desenvolvido por Lima [9]. Considerando a potencialidade dos Sistemas Híbridos, julgamos que esta será a tendência futura da arquitetura de sistemas baseados em conhecimento. Referências Bibliográficas [1] CAUDILL, M. Expert networks. Byte, v.16, n.10, p.108-116, october 1991. [2] GALLANT, S. Automatic generation of expert systems fram examples. In: PROCEEDINGS 2nd CONFERENCE ON ARTIFICIAL INTELLIGENCE APPLICATIONS - CAIA'85, Miami Beach, USA, 1985, p.313-319. [3] GALLANT, S. Connectionist expert systems. Comm. ACM, v.31, n.2, p.152-69, february 1988. [4] HANDELMAN, D.; LANE, S.; GELFAND, J. Integrating neural networks and knowledge- based systems for intelligent robotic controi, IEEE Contr. Syst. Mag., p.77-87, april1990. - 17- I SBAI - UNESP - Rio Claro/SP - Brasil [5] llAYES-ROTJI, B. A blackboard architecture for control. Artif. Intel., v.26, n.3, p.251-321, 198.5. [6] KNIGHT,K. Connectionist ideas and algorithms. Comm. ACM, v.33, n.11, p.59-74, november 1990. [7] LAWRENCE, J. lntroduction to neural networks and expert systems, 4 th ed. Nevada City: California ScientiRc Software Inc., 1992. [8]' LEÃO, B., ROCHA, A.F. Proposed methodology for knowledge acquisition: a study on congenital heart diseases diagnosis. Meth. Inform. Med., v.29, p.30-40, 1990. [9] LIMA, W.C., OJEDA, R.G., DUARTE, D.F. Using neural network in an anesthetic procedure intelligent system. In: PROCEEDINGS WORLD CONGRESS ON MEDICAL PHYSICS AND BIOMEDICAL ENGINEERING, Kyoto, Japan, 1991, p.816. [10] MACHADO, R.J., ROCHA, A.F. The combinatorial neural network: a connectionist model for knowledge based systems. In: PROCEEDINGS IPMU'90 INTERNATIONAL CONFERENCE ON INFORMATION PROCESSING AND MANAGEMENT OF UNCERTAINTY IN KNOWLEDGE-BASED SYSTEMS, Paris, France, 1990. [11] MACHADO, R.J., FERLIN, C ., ROCHA, A.F. et ai Incrementai Learning in Fu7,zy Neural Networks, In: PROCEEDINGS IPMU'90 INTERNATIONAL CONFERENCE ON INFORMATION PROCESSING AND MANAGEMENT OF UNCERTAINTY IN KNOWLEDGE-BASED SYSTEMS, Palma de MalloTca, Spain, 1992. [12] MACHADO, R.J., ROCHA, A.F. A llybrid Architecture for Fuzzy Connectionist Expert Systems. In: KANDEL, A., LANGHOLZ, G. (eds.) Architectures for lntelligent Systems. Boca Raton: CRC Press Inc., 1992. [13] S1I EHALD, M. Solving the unsolvable. llyte, v.16, n.1, p.284-5, january 1991. - 18 -