CNM
O Modelo Neural Combinatório (CNM) é um modelo híbrido, neural e simbólico, com o qual se deseja obter os benefícios das características específicas de cada um. O foco deste programa é usar o CNM como uma ferramenta para descoberta de conhecimento, focando problemas relevantes de classificação, tais como diagnósticos, triagem médica, detecção de fraudes, detecção de falhas, etc.
O modelo neural combinatório é composto por um conjunto de neurônios conectados formando uma rede que representa o encadeamento de funções lógicas, de acordo com uma topologia pré-definida. Os neurônios são interligados por arcos que podem ser vistos como sinapses aos quais são associados um peso sináptico ajustável e um acumulador para armazenar o suporte da evidência correspondente encontrada no arquivo de treinamento.
O processamento efetuado pelos neurônios é muito simples, podendo ser representado pelas operações lógicas AND e OR. O valor de saída do neurônio (entre zero e um), é calculado pelo operador mínimo para as células AND (representando a conjunção dos fluxos evidenciais) ou pelo operador máximo para as células OR (representando competição entre elas).
O CNM é representado por um grafo acíclico onde os nós
representam neurônios e os arcos representam sinapses entre os neurônios. O
modelo possui uma estrutura em três camadas: camada de entrada, camada
combinatória ou escondida e camada de saída. O CNM é utilizado como um
formalismo para tarefas de classificação, isto é, dada uma instância contendo as
evidências disponíveis, a mesma é associada a uma classe dentre um conjunto
pré-determinado de opções. Os neurônios da camada de entrada representam
conceitos (modelados por valores discretos ou simbólicos) que modelam as
evidências a serem inseridas no modelo na forma de objeto-atributo-valor. A
informação de entrada é apresentada ao sistema com um grau de crença que pode
corresponder a um valor lógico (verdadeiro ou falso) ou fuzzy (difuso ou nebuloso), variando
entre zero (não conectado) e um (totalmente conectado). Este valor pode ser
interpretado como o grau de aceitação do conceito representado por aquele
neurônio. O papel da camada de entrada é apenas repassar os valores de entrada
para as camadas superiores. A camada combinatória é formada por neurônios
combinatórios, que implementam a operação lógica AND, cada um se conectando a
dois ou mais neurônios da camada de entrada. Não existem neurônios combinatórios
para combinações de tamanho um, pois neste caso o neurônio de entrada se liga
diretamente ao neurônio de saída. A camada de saída é composta por neurônios que
representam os valores possíveis associados a uma única variável de saída
(classe). O valor desses neurônios é calculado através da operação OR. Esta
camada contém um neurônio para cada valor (classe) possível da variável de
saída. Cada arco entre um neurônio de entrada ou combinatório e um neurônio de
saída possui um peso associado. As regras são extraídas diretamente da
arquitetura a partir de cada combinação ligada a determinada hipótese, já que
cada combinação agrega diferentes evidências de entrada para aquela hipótese.
Por exemplo, a combinação C2 permite a extração da regra “Se x1 e x2
Então y1”.
Topologia de três camadas do CNM.
Fonte [MAC
89]
Sinapses podem ser do tipo excitatórias ou inibitórias e são caracterizadas por um peso w entre 0 e 1. As sinapses excitatórias agem diretamente no sinal de entrada (x), gerando um fluxo evidencial do arco, que é o sinal de saída transmitido pela sinapse (w.x). As sinapses inibitórias operam sobre o sinal de entrada negado, implementado como o complemento de 1 do sinal de entrada (w. (1– x)). Na maioria das aplicações práticas as hipóteses se baseiam na ocorrência de condições positivas e, portanto, lida fundamentalmente com sinais de entrada positivos.