Documente Academic
Documente Profesional
Documente Cultură
Salvador 2006
Monografia apresentada ao Curso de Graduao em Informtica da Universidade Catlica do Salvador, como requisito parcial para obteno do grau de Bacharel em Informtica. Orientador: Prof Arnaldo Bispo
Salvador 2006
CERTIFICADO
Certifico que a presente memria, CLASSIFICAO DE PADRES USANDO REDES NEURAIS DE KOHONEN, foi realizada sob minha direo por Igor Ferreira Soares e Izabel Belchote SantAna, constituindo o Projeto Final do Curso do Bacharelado em Informtica da Universidade Catlica do Salvador - UCSal.
AGRADECIMENTO
Ao professor Eduardo Jorge pela ajuda esclarecedora que proporcionou, indiscutivelmente, o alinhamento e a finalizao deste trabalho. Aos colegas de sala, hoje amigos, por compartilhar todos os momentos, dos bons at os mais difceis, sempre com unio e garra. Enfim, nosso muito obrigado a todos que colaboraram diretamente e indiretamente na realizao e concretizao desse projeto.
RESUMO
Este projeto pretendeu realizar um estudo sobre o algoritmo do mapa de Kohonen, como popularmente conhecido, para classificao de padres. Foi avaliado o estudo de caso da organizao Ser Down, que auxilia os familiares de pessoas portadoras da sndrome de down. Para tanto, foi-se considerado o estudo de reconhecimento de padres e, para apurar se h melhoria na identificao deste em relao ao trabalho anterior, foram escolhidas as redes neurais, mais especificamente, as redes neurais auto-organizveis no modelo desenvolvido por Teuvo Kohonen. Isto porque, como constatado na literatura pesquisada, as redes neurais artificiais com o paradigma do aprendizado competitivo tm demonstrado boas solues para vrios problemas no reconhecimento de padres. As reflexes levaram concluso que o algoritmo desta, por apresentar um mapa representativo de grupos de indivduos com caractersticas comportamentais semelhantes de forma topolgica, resulta numa melhor visualizao da sada de dados no espao amostral em questo. Assim sendo, teve resultados bastante satisfatrios.
ABSTRACT
This project intended to accomplish study about the algorithm of the map of Kohonen, as it is known popularly, to classification of patterns. It was appraised the study of case of the organization Ser Down, that aids relatives of bearers of the down syndrome. For so much, sit was considered the study of recognition of patterns and, to find out if there is improvement in the identification of this in relation to the previous work, they were chosen the Artificials Neurals Network, more specifically, the artificial neural network self-organizing in the model developed by Teuvo Kohonen. As verified in the researched literature, the artificials neurals networks with the paradigm of the competitive learning have been demonstrating good solutions for several problems in the recognition of patterns. The reflections lead to the conclusion that the algorithm of this, for presenting a representative map of individuals' groups with characteristics of behavior similar of topologic form, results in a better visualization of the output in the amostral space in subject.
Key Words: Recognition of Patterns; Artificial Neural Network; Kohonens SelfOrganizing Maps
SUMRIO
1 Introduo .................................................................................................................. 10 2 Reconhecimento de Padro...................................................................................... 13 2.1 Classificao Supervisionada ............................................................................. 14 2.2 Classificao No-Supervisionada ..................................................................... 14 2.3 Etapas para o Desenvolvimento do Reconhecedor........................................... 15 2.3.1 Extrao e Seleo de Caractersticas ........................................................ 16 2.3.2 Construo de um Classificador................................................................... 16 3 Redes Neurais Artificiais ........................................................................................... 20 3.1 Breve Histrico .................................................................................................... 21 3.2 Neurnio .............................................................................................................. 21 3.3 Arquitetura de Rede ............................................................................................ 24 3.4 Aprendizado da Rede ......................................................................................... 26 3.4.1 Aprendizado Supervisionado........................................................................ 27 3.4.2 Aprendizado No-Supervisionado................................................................ 27 3.4.3 Aprendizado Competitivo.............................................................................. 28 4 Mapas Auto-Organizativos Modelo de Kohonen................................................... 30 4.1 Aprendizagem de SOM....................................................................................... 31 4.2 Mecanismos da Rede Neural.............................................................................. 33 4.2.1 Neurnio Vencedor ....................................................................................... 33 4.2.2 Ajuste de Pesos ............................................................................................ 35 4.2.3 Determinao da Vizinhana........................................................................ 37 4.3 Agrupamento. ...................................................................................................... 39 5 Anlise Descritiva do Projeto.. .................................................................................. 40 5.1 Estudo de Caso Ser Down.................................................................................. 40 5.2 Metodologia ......................................................................................................... 41 5.3 Tecnologias Utilizadas ........................................................................................ 42 5.4 Modelagem da Soluo ...................................................................................... 43 5.4.1 Mapa de Entrada........................................................................................... 43 5.4.2 Mapa de Sada .............................................................................................. 44 5.4.3 Treinamento da Rede ................................................................................... 44 5.4.3.1 Fase de Ordenao ................................................................................ 45 5.4.3.2 Fase de Convergncia............................................................................ 45 5.5 Diagrama de Classes .......................................................................................... 46 5.6 Resultados Obtidos com o Treinamento ............................................................ 47 6 Consideraes Finais ................................................................................................ 49 7 Referncias................................................................................................................ 51 APNDICE A - Relatrios ............................................................................................ 54 APNDICE B - Trechos Significativos do Cdigo ....................................................... 59
LISTA DE ILUSTRAES
Figura 2.1 Figura 2.2 Figura 3.1 Figura 3.2 Figura 3.3 Figura 3.4 Figura 3.5 Figura 3.6 Figura 4.1 Figura 4.2 Figura 4.3 Figura 5.1 Figura 5.2 -
O Problema de Reconhecimento de Padres ......................................... 17 Etapas de um Sistema de Reconhecimento Estatstico de Padres ..... 18 Neurnio Biolgico.................................................................................... 23 Neurnio McCullock-Pitts ......................................................................... 23 Redes Alimentadas Diretamente com Camada nica............................ 24 Redes Alimentadas Diretamente com Mltiplas Camadas..................... 25 Redes Recorrentes................................................................................... 26 Unidade de Processamento da Camada Competitiva ............................ 29 Mapeamento de 3D para 2D. ................................................................... 31 Exemplos de Topologia da Vizinhana.................................................... 32 Mapa de Kohonen com Neurnios de Sada Bi-dimensional.. ............... 34 Modelagem do Banco de Dados SerDown ............................................. 43 Diagrama de Classes ............................................................................... 47
LISTA DE TABELAS
LISTA DE ABREVIATURAS
IDE OO RNA RP
Intregrated Development Environment Orientao Objetos Rede Neural Artificial Reconhecimento de Padro Sistema Gerenciador de Banco de Dados Self-Organizing Map
SGBD SOM
10
1 Introduo
O volume de informaes contidos em uma base de dados, alm de ter o mais variado contexto, cresce acentuadamente, dificultando a localizao de um dado especfico devido ao fator desorganizao. Isto acaba acarretando em resultados de consultas no satisfatrios aos reais desejos dos usurios. Outro fator relevante insatisfao quanto aos resultados de pesquisa a dificuldade do usurio em saber formular corretamente as expresses necessrias busca (VELOSO, 2005). As redes neurais artificiais no modelo proposto por Kohonen ou, como so comumente citadas na literatura, mapas de Kohonen, agrupam as informaes que possuem carter similar, obtendo vrios conjuntos de dados. As informaes inseridas em cada conjunto possuem uma ligao forte entre si. Desta maneira, o usurio conseguir manipular mais facilmente as informaes que lhe interessam, descartando aqueles grupos que no lhe so pertinentes. O agrupamento de caractersticas similares de dados o que caracteriza um determinado padro. A capacidade do ser humano de reconhecer padres no mnimo impressionante. A todo o momento o homem recebe dados do mundo sua volta e consegue rapidamente estabelecer as fontes desses dados. Reconhecimento de voz, distinguir odores bons e ruins, so s algumas caractersticas que demonstram a facilidade que os seres humanos tm em reconhecer padres. Este reconhecimento e a classificao desses padres provm de um processo de aprendizagem, assim como nas redes neurais. Todavia, o computador digital mais rpido no consegue tratar uma informao to rpido quanto o crebro humano (HAYKIN, 2001, p. 2792). As redes neurais artificiais vm ganhando muito espao na rea de reconhecimento de padres. Atravs da simulao do processo de aprendizado humano pelo computador, a caracterizao de padres est cada vez mais facilitada. Estas tentam agir de acordo com o funcionamento do crebro humano, o que, por enquanto, no possvel. Com essa simulao, as redes neurais aprendem por treinamento (experincia) e seu poder computacional proveniente de sua estrutura macia paralelamente distribuda (HAYKIN, 2001, p. 28).
11
O reconhecimento de padres foi uma das primeiras aplicaes de redes neurais artificiais que obteve bons resultados, principalmente pelo fato de simular o funcionamento de uma rede neural natural. Mesmo sendo usualmente utilizado o paradigma de aprendizado supervisionado, com rede de mltiplas camadas para tal aplicao, o aprendizado no-supervisionado e competitivo tambm tem evidenciado bastante xito na classificao de padres. Especialmente os mapas autoorganizveis de Kohonen, por ser um algoritmo de implementao simplificada, apesar de matematicamente ser bastante difcil de ser analisado (HAYKIN, 2001). Considerando-se o trabalho futuro sugerido na monografia de Gordiano e Sousa (2005), a presente pesquisa predispe-se a realizar um estudo do algoritmo de Kohonen e ele implementado no presente trabalho. Esta anlise tem intuito de verificar se h a melhoria da classificao de padres em grupos de pessoas portadoras da sndrome de down, descrito com maiores detalhes no estudo de caso apresentado no captulo 5. Para tanto, foi realizado um estudo sobre recuperao de informao e redes neurais artificiais, ressaltando as auto-organizveis de Kohonen, seguindo a vertente de como gerenciar o acesso ao banco gerado pelo trabalho anteriormente citado, para preparar os dados de entrada do algoritmo. Os resultados obtidos serviro para os especialistas e pesquisadores da instituio Ser Down terem a oportunidade de trabalhar com grupos de indivduos de forma mais direta, de acordo com as caractersticas destes. Podero ser dados tratamento e educao adequados a cada grupo, de acordo com suas reais necessidades, pois a tcnica escolhida nesta pesquisa identifica padres implcitos na base de dados e gera anlises significativas. A pesquisa encontra-se estruturada da seguinte maneira: no captulo 2 explicitado um conjunto de conceitos referentes ao reconhecimento de padres, tais como classificao de caractersticas e suas abordagens. Neste projeto ser utilizada abordagem neuronal, com o mtodo de aprendizado no-supervisionado, visto no terceiro captulo, onde tambm so apresentadas algumas definies de redes neurais artificiais, arquiteturas de redes e o aprendizado competitivo, que de suma importncia para o entendimento do algoritmo de Kohonen, que descrito com
12 maiores detalhes no captulo 4. Como conseqncia do estudo realizado e apresentado nos captulos anteriores, o captulo 5 trata do Projeto de Desenvolvimento. Nele descrito o objetivo do trabalho, a metodologia utilizada para a realizao do projeto, as caractersticas da implementao, salientando-se as dificuldades encontradas para a realizao do projeto, bem como uma breve explanao do trabalho tomado como base e os resultados obtidos. No captulo final dada a concluso do projeto, onde so descritos os resultados alcanados e trabalhos futuros que podem vir a complementar a presente pesquisa.
13
2 Reconhecimento de Padro
O padro uma entidade que pode ser incorporada a um especfico contexto, que pode ser classificada (CAETANO, 2002). De uma forma mais simples, pode-se definir como um conjunto de caractersticas que determinam um objeto. A importncia dessa elucidao vista na inferncia de Souza (1999): O mundo pode ser visto como feito de padres. citado, com intuito de exemplificao, o reconhecimento da face. Suas caractersticas, se masculina ou feminina, bonita ou feia, so qualificadas com padres. A aprendizagem humana condiz com a capacidade do crebro em isolar, associar e reconhecer formas, sons ou conceitos. A complexidade deste processo foi a grande incentivadora para o surgimento das redes neurais e da inteligncia artificial (NEVES, 2006). Reconhecimento de padres (RP) composto por um conjunto de tcnicas e abordagens que so usadas de forma integrada na soluo de diversos problemas prticos (ADAMOWICZ, 2000). Um reconhecedor de padres pode ser definido como um sistema que, ajudado por etapas de pr-processamentos, extrao e seleo de caractersticas, consegue associar um rtulo de uma classe a certo padro desconhecido. Como exemplo do citado acima, ter-se-ia a imagem de uma face apresentada ao reconhecedor como o objeto (o padro desconhecido) e as caractersticas presentes nela seriam seus atributos ou rtulo (CAMPOS, 2001). O termo atributo refere-se caracterstica significativa do objeto que se quer classificar. Por exemplo, para se qualificar um animal em uma determinada espcie, pode-se medir seu peso, altura, verificar a quantidade de pernas, se possui asas, etc. Obviamente, nem todas as caractersticas que o animal possui serviro como valor significativo para o reconhecimento. O sexo do animal, nesse caso, nada ajudaria na definio de sua espcie. Ainda h de se ter cuidado porque, em muitos casos, medidas adequadas para um problema no garantem certeza na deciso (COSTA e MONTAGNOLI, 2001). No exemplo dado, quando foram mencionadas medidas de peso e altura como atributos significativos, se as considerar para
14 reconhecer um gato ou um cachorro, h grandes chances de ocorrerem equvocos. Para solucionar esse problema poder-se adicionar mais atributos, mas isso acarreta em um custo computacional alto. Assim sendo, o mais apropriado a escolha de poucos atributos e que estes permitam uma melhor diferenciao entre os objetos. Uma boa escolha est inerente ao bom conhecimento do problema (COSTA e MONTAGNOLI, 2001). Para Campos (2001), a classificao de objetos (padres) em categorias o objetivo do reconhecimento de padres, que dado por classificao supervisionada, onde o padro de entrada identificado como um membro de uma classe pr-definida pelos padres de treinamento e por classificao no-supervisionada, na qual o padro associado a uma classe que aprendida com base na similaridade entre os padres de treinamento.
15 sero identificadas. Se o espao de atributos escolhidos conseguir uma boa diferenciao entre as classes, ou seja, quando se observa facilmente a separao delas, bons resultados sero encontrados com esta classificao (CAMPOS, 2001).
16
17
Descreve-se o problema de RP, ento, como uma transferncia do espao original de padres, atravs da extrao e seleo de caractersticas para o espao de caractersticas e, finalmente, para o espao de classificao obtido atravs do classificador (SOUZA, 1999), como demonstrado da figura 2.1.
Existem vrios mtodos para classificao dos padres que, segundo Souza (1999), so utilizados de acordo com o tipo de objeto a ser descrito. Os principais seguem listados: Abordagem Estatstica ou Teoria da Deciso As etapas principais de um sistema de reconhecimento estatstico de padres esto definidas na figura 2.2. Verifica-se a presena de um sistema de aquisio de dados que responsvel, como o prprio nome j diz, pela captao dos dados. Pode ser um sensor, uma cmera ou algo que pegue a informao e alimente o sistema de RP. No caso do ser humano, o meio mais eficiente de aquisio de informaes de um ambiente o sentido da viso. Observa-se, tambm, um sistema de prprocessamento que tem a finalidade de eliminar rudos ou distores; um extrator de caractersticas, que reduz os dados do objeto a atributos, propriedades e caractersticas; um seletor de caractersticas, que elimina a redundncia de caractersticas; e um classificador, que toma certa deciso a partir do padro obtido, aps as etapas anteriores. importante ressaltar que essa estrutura no particular da abordagem presente. Outros mtodos de RP tambm podem possuir estruturas semelhantes. Mas todos os sistemas de reconhecimento possuem um extrator e/ou um seletor de atributos (SOUZA, 1999).
18
Figura 2.2 Etapas de um Sistema de Reconhecimento Estatstico de Padres Fonte: SOUZA, 1999
Abordagem Sinttica ou Estrutural Nesta abordagem subtende-se que os padres so compostos por sub-padres mais simples, e estes por outros mais simples e assim sucessivamente. Para explicar essa abordagem pode-se fazer uma analogia sintaxe de uma linguagem. Assim como uma frase formada de palavras e estas de letras, esta abordagem sugere que os padres so formados atravs de agrupamentos de partculas elementares, descries de elementos primitivos ou blocos de informao (STEINER, 1995). Os sub-padres mais elementares so chamados de primitivas e a relao entre a classe em sua maior complexidade e essas primitivas caracterizam o prprio padro. Esse tipo de abordagem comumente usado em categorias que possuem estrutura definida que o caso de imagens com textura e anlise de formas de contornos (SOUZA, 1999). Abordagem Difusa Existem duas formas clssicas de RP difuso: atravs de listas de pertinncias e os mtodos difusos sintticos. No primeiro, o sistema de RP armazena um conjunto de padres que caracterizaro cada classe. Quando um padro desconhecido apresentado ao sistema, este comparado um a um com os padres do conjunto. Se esse combinar com algum dos padres das classes armazenadas, ele ser classificado como membro desta classe (similaridade). A segunda forma possui
19 muita semelhana com a abordagem anterior. O padro tambm formado por subpadres. Utilizando-se da mesma analogia anterior, pode-se dizer que, todos os padres, cujas sentenas so geradas pela mesma gramtica, pertencem a uma mesma classe. Para classificar um padro desconhecido como pertencente a certa classe, verifica-se se ele gerado pela gramtica correspondente a ela (KLIR, 1995 apud SOUZA, 1999). Abordagem Neuronal As redes neurais artificiais surgem como uma poderosa ferramenta no mbito de reconhecimento de padres. A capacidade inata das redes de tratar de forma mais delicada a distribuio dos dados de entrada, o que difere dos mtodos estatsticos tradicionais, e sua capacidade de formar fronteiras de deciso altamente nolineares no espao de caractersticas, acarretou no grande aumento do seu uso (SOUZA, 1999). Devido importncia desta abordagem neste projeto ela foi particularmente estudada e detalhada nos captulo 3, aprofundando-se nas redes neurais autoorganizveis no captulo 4.
20
Redes Neurais Artificiais (RNA) so uma subrea da Inteligncia Artificial que se baseia na estrutura do crebro humano utilizando funes matemticas no-lineares e que possui a capacidade de adquirir, armazenar e utilizar o conhecimento (ARAJO et. al., 2005; ICA, 2006). Cada RNA constituda de uma interligao macia de clulas computacionais simples, denominadas neurnios (HAYKIN, 2001, p. 28). Neurnios so unidades de processamento que esto conectados por canais de comunicao (sinapses) que normalmente esto associados a determinados pesos. Estas unidades apenas operam sobre as entradas recebidas por suas conexes, seus dados locais. O comportamento inteligente de uma Rede Neural Artificial vem das interaes entre as unidades de processamento da rede (BRAGA, 1998 apud SERRA, 1998). Dentre as principais caractersticas das RNAs, pode-se citar: No-Linearidade: distribuda por toda a rede neural e uma propriedade muito importante, em especial, se o mecanismo gerador do sinal entrada de dados for inerentemente no-linear; Mapeamento de Entrada-Saida (capacidade de aprendizagem): Treinamento da rede a partir de um conjunto de exemplos da tarefa, supervisionado por um professor, onde se conhece previamente a sada relacionada sua entrada e, de acordo com esta, os pesos sinpticos so alterados para melhor ajustar a resposta real resposta desejada, minimizando a diferena; Adaptabilidade: Capacidade de aprender padres e tendncias apresentados nos dados e adaptar seus pesos de acordo com as mudanas no ambiente ao qual esteja inserido; Resposta a Evidncias: No contexto de classificao de padres, a rede informa
21 o padro a ser selecionado e tambm a confiana sobre a deciso tomada. Esta ltima ajuda a descartar padres ambguos (HAYKIN, 2001, p. 29-30); Generalizao: Gera respostas satisfatrias mesmo que os dados fornecidos no faam parte do conjunto de treino, mas sim de sua vizinhana; Procura Paralela e Endereamento pelo Contedo: O crebro no possui endereo de memria e no procura a informao seqencialmente (ICA, 2006).
3.2 Neurnio
O crebro comparado a um processador extremamente complexo cujo
22 processamento realizado de maneira paralela. Seus neurnios so os responsveis pela realizao desse processamento (ALECRIM, 2004) e devido a sua imensa quantidade, a velocidade de resposta mais alta do que a de qualquer computador que exista no mundo. estimada a existncia de cerca de 10 bilhes de neurnios no crtex humano e cerca de 60 trilhes de sinapses (HAYKIN, 2001, p. 32). A tabela 3.1 traa um comparativo entre o crebro humano e o computador:
Crebro Material Orgnico Velocidade Milisegundos Tipo de Processamento Paralelo Armazenamento Adaptativo Controle de Processos Distribudo Nmero de elementos processados 10 e 11 10 e 14 Ligaes entre elementos 10.000 processados
Parmetro
Tabela 3.1 - Quadro Comparativo entre o Crebro e o Computador Fonte: TATIBANA e KAETSU, 2006
Cada neurnio constitui a unidade bsica do crebro. Ele aceita e combina estmulos de vrios outros neurnios (muitas entradas), porm possui somente uma sada (MEDEIROS, 1999).
Nos neurnios a comunicao realizada atravs de impulsos, quando um impulso recebido, o neurnio o processa, e ultrapassado um limite de ao, dispara um segundo impulso, que produz uma substncia neurotransmissora, o qual flui do corpo celular para o axnio (que por sua vez pode ou no estar conectado a um dendrito de outra clula) (TATIBANA e KAETSU, 2006).
Os dendritos so responsveis pelo recebimento dos estmulos enviados por outros neurnios e os axnios so responsveis por transmitir os estmulos para outras clulas (TATIBANA e KAETSU, 2006). As sinapses so as unidades estruturais que conectam os neurnios e transportam os impulsos entre eles. Em RNAs, elas so as responsveis por inibir ou excitar um neurnio. (HAYKIN, 2001, p. 32-33).
23 Abaixo seguem as ilustraes do neurnio biolgico (figura 3.1) e artificial (figura 3.2), respectivamente:
Figura 3.1 Neurnio Biolgico Fonte: ALCNTARA, 2004 apud ARAJO, 2005.
Supondo que tem-se: P sinais de entrada X1, X2, ..., Xp Pesos w1, w2, ..., wp (com valores reais) Limitador t com sinais assumindo valores booleanos (0 ou 1).
Neste modelo, o nvel de atividade a dado por: a = w1X1 + w2X2 + ... + wpXp A sada y dada por:
24 y = 1, se a >= t ou y = 0, se a < t.
Figura 3.3 - Redes Alimentadas Diretamente com Camada nica Fonte: HAYKIN, 2001, p.47
Redes MultiLayer Feedforward ou Redes Alimentadas Diretamente com Mltiplas Camadas: difere da primeira por causa da presena de camadas de neurnios ocultas que esto situados entre a de sada e a de entrada, vide a
Figura 3.4 - Redes Alimentadas Diretamente com Mltiplas Camadas Fonte: HAYKIN, 2001, p. 48
Redes Recorrentes: j este tipo, tem como caracterstica principal possuir pelo menos um loop de realimentao, como pode ser visto na figura 3.5. A presena de laos de realimentao tem impacto profundo na capacidade de aprendizagem da rede e no seu desempenho (HAYKIN, 2001, p. 49).
26
Dentre os tipos de aprendizagem, o texto abrange o supervisionado, nosupervisionado e o competitivo. Sendo que, os dois ltimos so de importncia fundamental para o entendimento do mapa auto-organizvel de Kohonen, que objeto de estudo deste trabalho.
27
28 paradigma utilizado um esquema para que a rede responda de maneira semelhante a padres semelhantes (SEWO e SILVA, 2003). A rede capaz de formar representaes internas aps se ajustar s regularidades estatsticas dos dados de entrada, adaptando seus pesos para que possa agrupar padres semelhantes ou criar novos grupos caso no haja nenhum ao qual possa se adequar em relao s similaridades (HAYKIN, 2001, p. 90). Para um sistema de RP, o algoritmo de aprendizado supervisionado mais utilizado como classificador e o no-supervisionado, juntamente com o aprendizado competitivo que ser estudado mais adiante, so usados para extrao das caractersticas e compresso de dados (SEWO e SILVA, 2003).
29 neurnios de entrada inativos para os ativos. Este tem a maior soma ponderada (Sj), isto :
Sj = wijxi
i
onde xi o padro de ativao. Esse processo exibido na figura 3.6. Caso haja empate (Si = Sj), sugerido, por conveno, selecionar a unidade esquerda. O vencedor da competio modifica seu vetor de pesos de modo a adaptar-se e melhor responder ao padro inserido, tornando-se mais semelhante.
Figura 3.6 Unidade de Processamento da Camada Competitiva Fonte: SEWO e SILVA, 2003
O ajustamento do peso ocorre de uma maneira com a qual a soma ponderada aumente levemente quando rede apresentado um padro de entrada j conhecido, acontecendo o mesmo para os padres similares j apresentados. Desta forma, as unidades de processamento da camada competitiva aprendem a detectar classes diferentes de padres. A principal funo de uma RNA com aprendizado competitivo prover um classificador simples de padres com treinamento no-supervisionado, sendo aconselhvel um conjunto de treinamento com padres suficientemente distintos (SEWO e SILVA, 2003).
30
Os mapas auto-organizveis (SOM - Self Organizing Map) so tipos especiais de redes neurais. So baseados na aprendizagem competitiva, onde os neurnios competem entre si e o neurnio vencedor, sendo ele nico, ativado em um instante de tempo. Os neurnios de um mapa auto-organizvel so colocados normalmente em grades bi-dimensionais. Dimensionalidades mais altas tambm so possveis, mas no so muito utilizadas. Um padro de sinal apresentado rede convertido em um mapa discreto, uni ou bi-dimensional (HAYKIN, 2001, p. 483). Na concepo de Haykin (2001) e Vargas (2004), foi pensando na criao de modelos computacionais baseados nas caractersticas do crebro humano que surgiram os mapas auto-organizveis e, de todos os modelos estudados, o de Kohonen foi o que mais se destacou. Kohonen enfatiza a importncia de se levar em considerao, nos modelos de redes neuronais, a disposio fsica dos neurnios e as relaes entre vizinhanas dos neurnios no processamento da informao do sistema nervoso (VASCONCELOS, 2000).
Os neurnios se tornam seletivamente sintonizados a vrios padres de entrada (estmulos) ou classes de padres de entrada no decorrer de um processo de aprendizagem. As localizaes dos neurnios assim sintonizados se tornam ordenadas entre si de forma que um sistema de coordenadas significativo para diferentes caractersticas de entrada criado sobre a grade (KOHONEN, 1990 apud HAYKIN, 2001, p. 483).
De acordo com Vasconcelos (2000), os estudos sobre mapas auto-organizveis modelo de Kohonen ou, simplesmente, mapa de Kohonen, foi baseado no mapeamento existente entre os estmulos recebidos pelo crtex cerebral e a regio correspondente neste ativada. Kohonen concluiu que, atravs de pesquisas da neurocincia, conceitos similares parecem estar representados em reas prximas no crebro humano e que essa localizao espacial deveria ser uma caracterstica do aprendizado (WANGENHEIM, 2005). Em sua tese, Vasconcelos (2000) considera uma grande vantagem de algumas RNAs, tais como SOM, a capacidade de projetar dados multidimensionais em baixas
31 dimenses, o que facilita a visualizao, como visto na figura 4.1, onde cada n representa um neurnio. Segundo Haykin (2001, p. 486), a reduo de dimensionalidade do espao de entrada, juntamente com a ordenao topolgica do mapa de sada o principal objetivo dos mapas de auto-organizveis.
32 a classificao de padres. O mapa de Kohonen considerado auto-organizvel porque, segundo Veloso e Silva (2005), este no necessita de superviso externa. Ao contrrio da rede supervisionada, este no precisa de um professor para indicar as sadas desejadas para realizar correo dos erros, j que a rede desconhece seu ambiente. As redes SOM, na concepo de Vargas (2004), possuem a finalidade de encontrar aglomerados, mas no se sabe quantos destes existem nos dados passados e por isso, estas devem ser treinadas como no-supervisionada. Seguindo o modelo original de Kohonen, Freitas et. al. (2003) afirmam que o mapa contm a topologia de um plano por representar o vetor de entrada, normalmente, em uma grade bi-dimensional, na qual esto dispostos os neurnios de sada estimulados pelos neurnios de entrada. Como pode ser visto na figura 4.2, nenhuma forma topolgica imposta nessa rede de duas dimenses, a vizinhana do neurnio pode estar arranjada em qualquer formato.
Figura 4.2 Exemplos de Topologia da Vizinhana. Em (a) linear, (b) retangular e (c) hexagonal. Fonte: VASCONCELOS, 2000
33
34 Ele composto de um conjunto de sinapses, um somador para contabilizar os sinais de entrada e uma funo de ativao (Haykin, 2001). Segundo Tafner (1996), a quantidade de neurnios da camada de sada representa todas as possveis sadas do mapa, independente da quantidade de neurnios da camada de entrada, sendo que, cada sada est conectada todos os neurnios de entrada. E como demonstra a figura 4.3, cada padro de entrada n-dimensional ativa o neurnio, que pode estar disposto num mapa de sada bi-dimensional, caracterizando a reduo de dimensionalidade.
Figura 4.3 Mapa de Kohonen com Neurnios de Sada Bi-dimensional. Padro de Entrada Conectado sua Sada. Fonte: LOBO, 2005
Tafner (1996) afirma que o neurnio com maior estmulo ser ativado, inibindo os demais. Deve-se ativar a posio do neurnio da camada de sada com a menor distncia euclidiana, comparando-se s demais posies.
Sabendo-se, a partir dos estudos realizados por Tafner (1996), que cada entrada xj ativa de forma nica uma determinada posio i da matriz, pode-se efetivar essa afirmao com a seguinte funo:
Esta determina a posio do neurnio vencedor, onde || . || representa a medida de distncia, no caso, a norma euclidiana, 1 k N, sendo N a quantidade de neurnios existentes na camada de sada. A partir do explicitado acima e tendo-se o conhecimento que a funo y(i,xj ) informa o estado de ativao da posio i da matriz do mapa em relao ao estmulo do vetor de entrada xj, pode-se inferir que:
35
Onde: t = instante t no tempo; i = ndice do neurnio; j = ndice das entradas e dos pesos; N = nmero de entradas (quantidade de x e, respectivamente, quantidade de w por neurnio); xj (t) = entrada j no tempo t; w , j(t) = peso j do neurnio i no tempo t; dj (t) = distncia do neurnio no tempo t. Calculada a menor distncia a menor distncia euclidiana entre o padro de entrada e cada neurnio de sada, segue-se a fase de ajustes de pesos do neurnio vencedor.
36 processo de aprendizagem no-supervisionada, na fase de treinamento. O conhecimento da rede est nos pesos das conexes sinpticas (TAFNER, 1996). A rede aprende atravs de um processo de ajustes aplicados a seus pesos sinpticos. A cada iterao desse processo a rede torna-se mais instruda (HAYKIN, 2001).
Para que a distncia euclidiana entre o vetor de entrada e o vetor de pesos do mapa diminua, Freitas et. al. (2003) declara que necessrio que os pesos sejam reajustados a cada iterao na posio ativa do mapa, assim a reposta quele padro de entrada ficar mais precisa, efetuando uma aprendizagem nosupervisionada. Deste modo, os reajustes ocorreriam da maneira abaixo:
Sendo c = i(xj ) a posio no mapa do neurnio vencedor no instante t para o padro de entrada x(t) = xj e (t) o fator de aprendizado da rede, preferencialmente compreendido no intervalo aberto entre 0 e 1. O fator de aprendizagem decresce de modo constante com o objetivo de, aps um grande nmero de repeties, alcanar uma menor distncia euclidiana entre o vetor de entrada e seus pesos correspondentes, ocasionando numa melhor resposta para aquele padro de entradas (FREITAS et. al., 2003).
Haykin (2001, p. 493) sugere que o fator de aprendizagem inicie com valores mais baixos, prximos a 0,1 e que decresam de acordo como tempo ficando, porm, maior que 0,01.
37
definido por di,j = 0, ou seja, para o centro da vizinhana, onde est localizado o neurnio vencedor i, a distncia di,j zero; 2) A amplitude da vizinhana topolgica hj,i decresce monotonamente com o aumento da distncia lateral di,j, decaindo a zero para di,j ; esta uma condio necessria a convergncia. Ou seja, quo mais longe estiver o neurnio vizinho do vencedor, menor excitado ele ser por este neurnio ativado. A funo gaussiana satisfaz a essas exigncias e independe da localizao do neurnio vencedor (Haykin, 2001, p. 489). Vargas (2004) afirma que, nas primeiras iteraes, a vizinhana dos neurnios a serem atualizados corresponde a todo o mapa ou quase todo. Durante o treinamento essa vizinhana decresce gradativamente de acordo com o aperfeioamento do
38 aprendizado e uma das tcnicas recomendadas para antecipar essa reduo o uso de uma funo gaussiana, que vista na equao seguinte:
Onde
O termo
se refere ao valor de
A tcnica de comear-se com uma vizinhana grande, que reduzida modificando-se a varincia da curva de Gauss tem esse efeito: primeiramente a rede aprende de maneira geral a organizar padres similares em grupos localizados em regies especificas da rede, depois a rede passa a refinar este mapeamento de maneira cada vez mais localizada (WANGEHEIM, 2005).
A distncia lateral di,j calculada por |j-i|, se o espao de sada for unidimensional. No caso de uma grade bidimensional seu valor calculado por: d2ij = || rj - ri ||2 Onde o vetor discreto rj define a posio do neurnio excitado j e ri define a posio discreta do neurnio vencedor i (HAYKIN, 2001, p. 492). A partir dessas equaes Haykin (2001, p 492) chega a frmula de ajuste:
39
Onde (t) o fator de aprendizado definido pela equao, onde T2 o nmero de iteraes necessrias para o treinamento:
4.3 Agrupamento
Vargas (2004) concluiu que uma rede SOM, por si mesma cria os agrupamentos correspondentes a cada grupo de padres classificados por suas similaridades, dessa maneira, espera-se que estejam fisicamente prximos. O centro do agrupamento o padro que melhor se associa quela classe. O agrupamento se d, de acordo com Freitas et. al. (2003), quando o conjunto de vetores de entrada semelhantes do mapa se associa uma posio i da matriz, onde esta posio representa um padro, sendo definido pela comparao entre um vetor de pesos wi= [wi1, wi2 , ..., wim ]T e vetor de entrada xi= [xi1, xi2 , ..., xim ]T. Cada posio distinta i, representado na matriz, ser ativada por um vetor xj, sendo que, este somente poder ativar uma nica posio i, como visto anteriormente, a de menor distncia euclidiana entre o padro de entrada e o vetor de pesos.
40
Objetivando a classificao de padres em grupos de pessoas, o algoritmo de Kohonen foi aplicado no banco de dados da organizao Ser Down, detalhado na prxima seo. A resposta dessa aplicao o agrupamento de pessoas com caractersticas semelhantes, para que o especialista ou pesquisador possa trabalhar ou estudar de acordo com a similaridade dos participantes de cada grupo e tambm entre os grupos portadores da sndrome de down (SD).
41 melhor compreender as influncias sociais e os aspectos de desenvolvimento de uma criana com este desequilbrio gentico, deve-se, tambm, abranger o tipo de relao existente entre o infante e o ambiente ao qual esteja exposto durante toda sua vida (DESSEN e SILVA, 2002).
O principal objetivo da Ser Down integrar o indivduo com a trissonomia 21 na sociedade, melhorando, assim, sua qualidade de vida e proporcionando maiores oportunidades de desenvolvimento da pessoa que possui essa deficincia. Para tal, a instituio promove meios que facilitem o seu tratamento, educao bsica e ingresso no mercado de trabalho. A organizao centro de referncia sobre o assunto no estado da Bahia. A cada beb nascido com SD, os pais so encaminhados instituio, realizado o cadastro da criana e eles recebem subsdios sobre a educao adequada a dar ao seu filho para que ele tenha uma vida normal, como qualquer outro cidado. Sendo assim, a Ser Down tem bastante conhecimento implcito em sua base de dados. Mesmo j contando com um sistema computadorizado para gerenciar essas informaes, h necessidade de uma ferramenta para aprimorar a identificao e visualizao de padres existentes. Desta maneira, o trabalho da instituio ser realizado com maior eficincia e eficcia, caso se encontre padres de comportamento desconhecidos pelos profissionais responsveis.
5.2 Metodologia
Acatando o trabalho futuro sugerido pelo projeto de Gordiano e Sousa (2005) que pesquisou no escopo do algoritmo de k-means, foi feito um estudo, primeiramente, sobre reconhecimento de padres atravs de redes neurais no-supervisionadas, para compreender o funcionamento das RNAs SOM de Kohonen, delineada no captulo 4. Aps o entendimento do funcionamento do mapa de Kohonen, veio a fase de
42 obteno do banco de dados gerado pelo projeto supracitado. O estudo agora seguiu a vertente de como gerenciar o acesso ao mesmo para disponibilizar as informaes de entrada ao algoritmo de Kohonen. Detalhes de sua implementao so vistos no item 5.4 deste trabalho. Aps a implementao do algoritmo de Kohonen e do treinamento da rede, segue a fase de testes.
O ambiente integrado de desenvolvimento (IDE - Integrated Development Environment) utilizado para a programao foi o Eclipse 3.1, que um dos que possuem maior disseminao para desenvolvimento em plataforma Java e tambm considerada uma das ferramentas chaves em se tratando das iniciativas de desenvolvimento Open Source (cdigo livre) (GUJ, 2006).
43
A tabela Aspecto_Clinico indica o(s) aspecto(s) clnico(s) em que cada filho se encaixa. A tabela Estimulo refere-se s atividades esportivas que o filho pratica, as quais servem de estmulo para o desenvolvimento dele. A tabela Terapia, como o
44 prprio nome j diz, especifica a(s) terapia(s) aplicada(s) ao filho. As tabelas Escolaridade e Ocupao tratam, respectivamente, da situao da criana na escola e o cargo que ocupa no trabalho. Cada uma dessas tabelas possui as caractersticas relevantes para a formao das entradas necessrias ao treinamento da rede neural. Uma entrada possuir ento, cinco dimenses. Cada uma referenciando uma das tabelas explicitadas acima.
45
46 - Nmero de iteraes T2 = 500*16; - O fator inicial para o ajuste da vizinhana agora inclui no mximo dois vizinhos e ao final das iteraes tende a 1 ou nenhum. Terminadas estas duas fases, conclui-se, consequentemente, a fase de treinamento. Depois deste, observou-se a ordenao e a convergncia dos neurnios do mapa de sada. A primeira verificada porque neurnios com caractersticas semelhantes encontram-se em locais prximos na grade discreta de sada. A projeo de um espao de entradas de dimenso 5 num outro de sada bidimensional assinala a reduo de dimensionalidade, caracterstica importante do mapa auto-organizativo de Kohonen. O mapa de sada sofre uma adaptao por causa do algoritmo. A representao desse espao de entradas de maior dimensionalidade para uma menor acaba por categorizar a convergncia do mapa (HAYKIN, 2001, p. 504).
47
Aps obter-se a lista dos filhos, a classe principal Kohonen gera as entradas e atribui elas a instncias da classe NeuronioEntrada. Logo depois, cria a grade bidimensional de sada, onde cada n desta referenciado por uma instncia da classe NeuronioSaida. O apndice B mostra os trechos mais relevantes do cdigo.
48 juntamente com o aspecto clnico que ela est enquadrada. Os resultados, pois, foram considerados satisfatrios para o espao amostral utilizado. O relatrio gerado pode ser visto no apndice A.
49
6 Consideraes Finais
Diante de tantas informaes inclusas na base de dados, apresenta-se a necessidade de uma ferramenta computacional que extraia informaes relevantes para cada caso estudado. Este trabalho se disps a mostrar um outro mtodo para a aquisio do reconhecimento de padres apresentados na pesquisa de Gordiano e Sousa (2005). Nesta foi utilizada o algoritmo k-means para agrupamento de pessoas com sndrome de down com comportamentos similares. Ao final desse trabalho esperavam-se conseguir a respostas das seguintes questes: - O que so RNAs auto-organizveis? - O que o mapa de Kohonen? - Como se utiliza RNAs para o reconhecimento de padres e se os resultados so satisfatrios? Acredita-se que as duas primeiras indagaes foram respondidas pelo exposto no captulo 4, onde a rede auto-organizvel de Kohonen foi descrita e detalhada. Todo este projeto circunda na segunda indagao. O mapa de Kohonen foi utilizado para reconhecer padres dentro de um grupo de pessoas. A obteno de agrupamentos destas por similaridade de caractersticas o principal objetivo do presente trabalho. Quanto aos resultados, um nmero significativo de artigos cientficos que retratam essa utilizao alcanaram respostas bastante satisfatrias. O resultado deste trabalho alia-se aos demais. Notou-se que o algoritmo apresentado nesta pesquisa, gera mapas representativos agrupados topologicamente por similaridade, aprimorando a identificao dos padres. Infelizmente no se conseguiu o banco de dados mais atual da instituio para a gerao dos agrupamentos de informaes similares, para aprimorar a identificao
50 dos padres, gerando, como resultado, um mapa de sada discreto representativo dos grupos encontrados. Visando a complementao e a melhoria deste trabalho, sugere-se os seguintes trabalhos futuros: 1) Fazer o ajuste de pesos dos neurnios de sada na etapa de treinamento utilizando um mtodo de organizao no-linear como os algoritmos genticos; 2) Fazer o ajuste fino da rede neural com quantizao vetorial; 3) Realizar uma anlise comparativa entre o algortitmo de k-means e o algoritmo de Kohonen no agrupamento de padres.
51
7 Referncias
ADAMOWICZ, E. C. Reconhecimento de Padres na Anlise EconmicoFinanceira de Empresas. Dissertao de Mestrado em Cincias. Universidade Federal do Paran, 2000. ALECRIM, E. Redes Neurais Artificiais. 2004. Disponvel <http://www.infowester.com/redesneurais.php>. Acessado em: 23/04/2006. em:
ARAJO, A.; SANTANA, D.; BRANDO, R. Sistema de Deteco de Intrusos Baseado em redes Neurais Artificiais de Kohonen. Monografia de Final de Curso, Faculdade Ruy Barbosa, 2005. BITTENCOURT, G. Inteligncia Computacional. Universidade Federal de Santa Catarina, Departamento de Automao e Sistemas. Disponvel em: <http://www.das.ufsc.br/gia/softcomp/>. Acessado em: 25/04/2006. CAETANO, T. Introduo ao Reconhecimento de Padres. Notas de Aula. Instituto de Informtica, UFRGS, 2002. Disponvel em: <http://www.inf.ufrgs.br/~silvia/ipg/slidesRecPadroes.PDF>. Acessado em: 30/04/2006. CAMPOS, T. E. Tcnicas de Seleo de Caractersticas com Aplicaes em Reconhecimentos de Faces. Dissertao de Mestrado. Universidade de So Paulo, 2001. COSTA, L. F.; MONTAGNOLI, C. Mquinas tomam decises: Reconhecimento de padres e minerao de dados. Revista online Cincia Hoje, 2001. DESSEN, M. A.; SILVA, N. L. P. Sndrome de Down: etiologia, caracterizao e impacto na famlia. Artigo publicado na revista Interao em Psicologia, 2002. FREITAS, A.E. S.; CERQUEIRA, J. J. F.; FERREIRA, N. R.. Uso de Algoritmos Genticos no Desenvolvimento de Redes Kohonen. IV Encontro Nacional de Inteligncia Artificial 2003. GORDIANO, F. G.; SOUSA, B. L. Gesto do Conhecimento na Web: Uma Abordagem Baseada em Minerao de Dados. Monografia de Final de Curso. Universidade Catlica do Salvador, 2005. GUJ Grupo de Usurios Java. Disponvel em: <http://www.guj.com.br/>. Acessado em: 16/06/2006. HAYKIN, S. Redes Neurais: Princpios e Prtica. 2. ed. Porto Alegre: Bookman, 2001.
52 ICA - Ncleo de Pesquisa em Inteligncia Computacional Aplicada. Notas de Aula. PUC-Rio. Disponvel em: <http://www.ica.ele.puc-rio.br/cursos/crs_lst_notas.asp>. Acessado em: 16/04/2006. LOBO, V. Sistemas de Apoio Deciso Redes de Kohonen (SOM). Disponvel em: <http://www.isegi.unl.pt/docentes/vlobo/isegi_SAD/SAD_3_2005_2.pdf>. Acessado em: 10 de junho de 2005. MEDEIROS, J. S. Bancos de Dados Geogrficos e Redes Neurais Artificiais: Tecnologias de Apoio Gesto de Territrio. Tese de Doutorado. USP, 1999. NEVES, C. Notas de Aula. Faculdade de Cincias e Tecnologia, Portugal. Disponvel em: <http://www.dq.fct.unl.pt/QOF/chem9.html>. Acessado em: 30/04/2006. S, J. P. M. Notas de Aula. Universidade do Porto, 2000. Disponvel em: <http://paginas.fe.up.pt/~jmsa/recpad/>. Acessado em: 09/04/2006. SERRA, T. G. Redes Neurais Artificiais. Trabalho da Disciplina Arquiteturas Especiais. Universidade Federal do Rio Grande do Sul, Ps-Graduao em Cincia da Computao, 1998. Disponvel em: <http://www.inf.ufrgs.br/procpar/disc/cmp135/trabs/tati/redes_neurais.html>. Acessado em: 15/04/2006. SEWO, J.; SILVA, P. R. R. Rede Neural Treinada com Algoritmo NoSupervisionado no Contexto de Reconhecimento de Padres. Monografia Final de Cursos. Universidade Federal de Mato Grosso do Sul, 2003. SOUZA, J. A. Reconhecimento de Padres Usando Indexao Recursiva. Tese de Doutorado. Universidade Federal de Santa Catarina, 1999. STEINER, M. T. A. Uma Metodologia para o Reconhecimento de Padres Multivariados com Resposta Dicotmica. Tese de Doutorado em Engenharia. Universidade Federal de Santa Catarina, 1995. TAFNER, M. A. Reconhecimento de Palavras Faladas Isoladas Usando Redes Neurais Artificiais. Dissertao de Mestrado em Engenharia. Programa de PsGraduao em Engenharia de Produo, Universidade Federal de Santa Catarina,1996. TATIBANA, C. Y.; KAETSU, D. Y. Redes Neurais. GSI Grupo de Sistemas Inteligentes. Disponvel em: <http://www.din.uem.br/ia/neurais/>. Acessado em: 15/04/2006. VARGAS, E. C. Recuperao de Informao por Similaridade Utilizando Tcnicas Inteligentes. Tese de Doutorado em Cincias - Cincias da Computao e Matemtica Computacional. Universidade de So Paulo, 2004. VASCONCELOS, N. A. P. Mapas Auto-Organizativos e suas Aplicaes. Dissertao de Mestrado em Cincias. Universidade Federal do Rio de Janeiro, 2000.
53
VELOSO, R. R.; SILVA, R. S. Agrupamento de Documentos Baseado na Rede Neural SOM. Laboratrio de Engenharia de Software e Inteligncia Artificial. Universidade Federal de Uberlndia. Disponvel em: < http://www.pos.facom.ufu.br/~rene/trabalhos/RecuperacaoInformacao/Agrupamento DocumentosSOM.pdf >. Acessado em: 10 de junho de 2005. WANGEHEIM, A. V. Tcnicas Subsimblicas: Redes Neurais. Notas de Aula. Disponvel em: <http://www.inf.ufsc.br/~awangenh/RP/subsimbolicas.html>. Acessado em: 04 de julho de 2005.
APNDICE A Relatrio
RESULTADOS X Y
NEURONIO
PESO
Saida00, 42.43930686150903, 63.15258717591932, 66.44648292062567, 50.15255517451494, 42.79320669132238, 0, 0 ESCOLARIDADE X Y ESTIMULO OCUPACAO TERAPIA[]
ID NOME
ASPECTO
NEURONIO
PESO
Saida01, 44.76389198129795, 57.50289184368521, 65.41753293957271, 56.38012697075397, 44.51195100324675, 0, 1 ESCOLARIDADE Curso Supe Curso Supe Curso Supe Curso Supe X Y ESTIMULO Voley Bal Voley Bal Voley Bal Voley Bal OCUPACAO TERAPIA[] Secretario(a)(99.99) Terapia Secretario(a)(99.99) Terapia Secretario(a)(99.99) Terapia Secretario(a)(99.99) Terapia
ID 51 49 50 48
NEURONIO
PESO
Saida02, 41.72126711843298, 51.84857450849422, 61.88599587272967, 58.335826758898655, 41.86626598879277, 0, 2 ESCOLARIDADE ESTIMULO OCUPACAO X TERAPIA[] Y
ID NOME
ASPECTO
NEURONIO
PESO
Saida03, 40.767382692255175, 48.24309115982737, 56.601060982851834, 60.076739965537634, 40.188197865380644, 0, 3 ESCOLARIDADE Alfabetiza Creche(5.0 Alfabetiza Alfabetiza ESTIMULO Voley Bal Jud(10.0 Ginstica Ginstica OCUPACAO TERAPIA Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Fonoaudiologia(30.0, Estimulao Precoce, Fonoaudiologia(30.0, Fonoaudiologia(30.0,
ID [ 46 24 37 43
NOME
ASPECTO
54
27 41 31 29 19 36 39 44 30 23 45 25 38 20 35 47 28 26 22 32 33 40 34 42 X Y
Antnio Jorg Elza Almeida Carlos Alber Aurelita Lim Josefa Maria Diogenes Sil Elizabete Si Francisca Ma Bia Andrea I Ana Carla A Georgina Tei Ana Cassiopi Elizabete Ca Joao Rodrigu Debora Range Gisela Band Antnio Marc Ana Lcia Ba Angelica Lac Celia Kalil Ccero de An Eloneida Car Claudia Mari Enalva Santo
Pediatria(30.0 Pediatria(30.0 Pediatria(30.0 Pediatria(30.0 Neurologia(10. Pediatria(30.0 Pediatria(30.0 Cardiologia(60 Pediatria(30.0 Pediatria(30.0 Cardiologia(60 Pediatria(30.0 Pediatria(30.0 Neurologia(10. Pediatria(30.0 Cardiologia(60 Pediatria(30.0 Pediatria(30.0 Neurologia(10. Pediatria(30.0 Pediatria(30.0 Pediatria(30.0 Pediatria(30.0 Pediatria(30.0
Creche(5.0 Alfabetiza Creche(5.0 Creche(5.0 Creche(5.0 Alfabetiza Alfabetiza Alfabetiza Creche(5.0 Creche(5.0 Alfabetiza Creche(5.0 Alfabetiza Creche(5.0 Alfabetiza Alfabetiza Creche(5.0 Creche(5.0 Creche(5.0 Creche(5.0 Creche(5.0 Alfabetiza Creche(5.0 Alfabetiza
Jud(10.0 Ginstica Jud(10.0 Jud(10.0 Jud(10.0 Ginstica Ginstica Ginstica Jud(10.0 Jud(10.0 Ginstica Jud(10.0 Ginstica Jud(10.0 Ginstica Voley Bal Jud(10.0 Jud(10.0 Jud(10.0 Jud(10.0 Jud(10.0 Ginstica Ginstica Ginstica
Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99) Secretario(a)(99.99)
Fonoaudiologia(30.0, Fonoaudiologia(30.0, Fonoaudiologia(30.0, Fonoaudiologia(30.0, Estimulao Precoce, Fonoaudiologia(30.0, Fonoaudiologia(30.0, Fonoaudiologia(30.0, Fonoaudiologia(30.0, Estimulao Precoce, Fonoaudiologia(30.0, Estimulao Precoce, Fonoaudiologia(30.0, Estimulao Precoce, Fonoaudiologia(30.0, Fonoaudiologia(30.0, Fonoaudiologia(30.0, Fonoaudiologia(30.0, Estimulao Precoce, Fonoaudiologia(30.0, Fonoaudiologia(30.0, Fonoaudiologia(30.0, Fonoaudiologia(30.0, Fonoaudiologia(30.0]
NEURONIO
PESO
Saida10, 43.35715223139254, 63.73148118884434, 71.4241429047192, 43.430859989249704, 48.14851797976445, 1, 0 ESCOLARIDADE ESTIMULO OCUPACAO X TERAPIA[] Y
ID NOME
ASPECTO
NEURONIO
PESO
Saida11, 44.58863344931925, 63.14055105433936, 69.87175135946468, 50.42933508907543, 46.299353134530676, 1, 1 ESCOLARIDADE ESTIMULO OCUPACAO X TERAPIA[] Y
ID NOME
ASPECTO
NEURONIO
PESO
55
ID NOME X Y
ASPECTO
ESCOLARIDADE
ESTIMULO
OCUPACAO
TERAPIA[]
NEURONIO
PESO
Saida13, 43.363340290095145, 53.81916700161266, 62.36464341319777, 54.163612726983715, 42.56338182497289, 1, 3 ESCOLARIDADE X Y ESTIMULO OCUPACAO TERAPIA[]
ID NOME
ASPECTO
NEURONIO
PESO
Saida20, 39.720653254511966, 72.1032228527992, 77.02262573164876, 32.98029950483624, 51.82936058770304, 2, 0 ESCOLARIDADE X Y ESTIMULO OCUPACAO TERAPIA[]
ID NOME
ASPECTO
NEURONIO
PESO
Saida21, 45.29493703027343, 69.26338873656104, 74.7096674998959, 37.34423724521102, 49.40998734093482, 2, 1 ESCOLARIDADE X ESTIMULO OCUPACAO TERAPIA[] Y
ID NOME
ASPECTO
NEURONIO
PESO
Saida22, 47.7772068549999, 66.7142594325214, 72.49691649164602, 39.56963935826973, 47.71130192015823, 2, 2 ESCOLARIDADE ESTIMULO OCUPACAO X TERAPIA[] Y
ID NOME
ASPECTO
NEURONIO
PESO
Saida23, 47.346233024686846, 62.763101487887596, 69.95187256405957, 42.22813070736923, 46.141071760936306, 2, 3 ESCOLARIDADE ESTIMULO OCUPACAO X TERAPIA[] Y
ID NOME
ASPECTO
NEURONIO
PESO
Saida30, 38.847718299434895, 75.28207966045437, 80.0655487308545, 28.3986024673909, 53.67374981903669, 3, 0 ESCOLARIDADE Curso Supe Curso Supe ESTIMULO Surf(99.9 Surf(99.9 OCUPACAO TERAPIA[] Nenhuma Ocupacao(0.0 Musicoterapia(70.0), Nenhuma Ocupacao(0.0 Musicoterapia(70.0),
56
83 89 82 86 88 92 80 84 85 94 87 79 90 81 X Y
Minza de Car Pedro Freita Maurilio dia Nadja Concei Patricia Mat Reginria Si Marlene Pire Mylena Araj Nadia Maria Rosalia da S Nagai Barros Mariana S B Raimunda Edn Mary Jane Di
Neurologia(10. Neurologia(10. Neurologia(10. Neurologia(10. Neurologia(10. Neurologia(10. Neurologia(10. Neurologia(10. Neurologia(10. Neurologia(10. Neurologia(10. Neurologia(10. Neurologia(10. Neurologia(10.
Curso Curso Curso Curso Curso Curso Curso Curso Curso Curso Curso Curso Curso Curso
Supe Supe Supe Supe Supe Supe Supe Supe Supe Supe Supe Supe Supe Supe
Surf(99.9 Surf(99.9 Surf(99.9 Surf(99.9 Surf(99.9 Surf(99.9 Surf(99.9 Surf(99.9 Surf(99.9 Surf(99.9 Surf(99.9 Surf(99.9 Surf(99.9 Surf(99.9
Nenhuma Nenhuma Nenhuma Nenhuma Nenhuma Nenhuma Nenhuma Nenhuma Nenhuma Nenhuma Nenhuma Nenhuma Nenhuma Nenhuma
Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0
Musicoterapia(70.0), Musicoterapia(70.0), Musicoterapia(70.0), Musicoterapia(70.0), Musicoterapia(70.0), Musicoterapia(70.0), Musicoterapia(70.0), Musicoterapia(70.0), Musicoterapia(70.0), Musicoterapia(70.0), Musicoterapia(70.0), Musicoterapia(70.0), Musicoterapia(70.0), Musicoterapia(70.0)]
NEURONIO
PESO
Saida31, 45.516447752999284, 73.56483635040414, 77.88199677250928, 30.539859782297796, 51.418675935787206, 3, 1 ESCOLARIDADE Curso Supe Curso Supe Curso Supe Curso Supe Curso Supe Curso Supe Curso Supe Curso Supe X ESTIMULO Voley Bal Voley Bal Voley Bal Voley Bal Voley Bal Voley Bal Voley Bal Voley Bal OCUPACAO TERAPIA[] Nenhuma Ocupacao(0.0 Terapia Nenhuma Ocupacao(0.0 Terapia Nenhuma Ocupacao(0.0 Terapia Nenhuma Ocupacao(0.0 Terapia Nenhuma Ocupacao(0.0 Terapia Nenhuma Ocupacao(0.0 Terapia Nenhuma Ocupacao(0.0 Terapia Nenhuma Ocupacao(0.0 Terapia Y
ID 53 52 54 55 57 56 59 58
NOME Jacqueline M Ivone de Jes Jacy Ferreir Jailton Barb Jose Antonio Jorge Ramos Jose Raimund Jose Nelson
NEURONIO
PESO
57
ID 77 74 61 63 66 68
NOME Maria Lenalv Maria Ines d karla O. Mot Liliana da S Luciano do R Maria do Amp
ESCOLARIDADE Curso Supe Curso Supe Curso Supe Curso Supe Curso Supe Curso Supe
OCUPACAO TERAPIA[] Nenhuma Ocupacao(0.0 Musicoterapia(70.0), Nenhuma Ocupacao(0.0 Musicoterapia(70.0), Nenhuma Ocupacao(0.0 Terapia Ocupacional, Nenhuma Ocupacao(0.0 Terapia Ocupacional, Nenhuma Ocupacao(0.0 Terapia Ocupacional, Nenhuma Ocupacao(0.0 Terapia Ocupacional,
60 72 78 76 62 69 71 67 64 75 73 70 65 X Y
Joseane Shei Marcos Menna Maria Marlen Maria das Gr Laura Ldice Marcia Maria Marco Antoni Luis Carlos Lindomar Ram Maira Passos Maria dos Sa Marcia Maria Livia Mesqui
Ortopedia(80.0 Ortopedia(80.0 Ortopedia(80.0 Ortopedia(80.0 Ortopedia(80.0 Ortopedia(80.0 Ortopedia(80.0 Ortopedia(80.0 Ortopedia(80.0 Ortopedia(80.0 Ortopedia(80.0 Ortopedia(80.0 Ortopedia(80.0
Curso Curso Curso Curso Curso Curso Curso Curso Curso Curso Curso Curso Curso
Supe Supe Supe Supe Supe Supe Supe Supe Supe Supe Supe Supe Supe
Futebol(9 Futebol(9 Surf(99.9 Futebol(9 Futebol(9 Futebol(9 Futebol(9 Futebol(9 Futebol(9 Futebol(9 Futebol(9 Futebol(9 Futebol(9
Nenhuma Nenhuma Nenhuma Nenhuma Nenhuma Nenhuma Nenhuma Nenhuma Nenhuma Nenhuma Nenhuma Nenhuma Nenhuma
Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0 Ocupacao(0.0
Terapia Ocupacional, Musicoterapia(70.0), Musicoterapia(70.0), Musicoterapia(70.0), Terapia Ocupacional, Terapia Ocupacional, Terapia Ocupacional, Terapia Ocupacional, Terapia Ocupacional, Musicoterapia(70.0), Musicoterapia(70.0), Terapia Ocupacional, Terapia Ocupacional]
NEURONIO
PESO
Saida33, 50.89132782491037, 70.77264715956395, 75.052169379882, 32.78727735587879, 48.53526995186819, 3, 3 ESCOLARIDADE ESTIMULO OCUPACAO TERAPIA
ID NOME []
ASPECTO
58
59
Criao das Entradas a partir do Banco: private void criaEntradaBanco() { this.gerente = HibernateUtility.getGerenteHibernate(); try { List listaFilhos = gerente.getListaFilho(); for(Iterator it = listaFilhos.iterator(); it.hasNext();) { Filho f = (Filho) it.next(); for (Iterator int i=0;i<verQtdNeuronios(f);i++) { NeuronioEntrada ne = new NeuronioEntrada(); ne.setNome(f.getNome()); FilhoSub fSub = new FilhoSub(f.getNome()); fSub.setId(f.getId()); if (i<f.getListaAspectosClinicos().size()) fSub.setAspecto((Aspectos_Clinicos)f.getListaAspectosClinicos().get(i)); if (i<f.getListaEscolaridade().size()) fSub.setEscolaridade((Escolaridade)f.getListaEscolaridade().get(i)); if (i<f.getListaEstimulo().size()) fSub.setEstimulo((Estimulo)f.getListaEstimulo().get(i)); if (i<f.getListaOcupacao().size()) fSub.setOcupacao((Ocupacao)f.getListaOcupacao().get(i)); if (i<f.getListaTerapias().size()) fSub.setTerapia((Terapia)f.getListaTerapias().get(i)); ne.setFilhoSub(fSub); ne.criaEntrada(); listaNeuroniosEntrada.add(ne);
Criao das Sadas: private void criaSaida() { String path = "C:\\temp\\pesosTreinados.txt"; try { //Verifica se existe um arquivo que contenha os dados dos neuronios
60 //Se no cria com pesos aleatrios File f = new File(path); if(f.isFile()) { criaNeuronioFile(f,true); } else { int linhas = new Double(Math.sqrt(TAMANHO_VETOR_SAIDA_REDE)).intValue(); for(int i = 0; i<linhas; i++) { for(int j = 0; j<linhas; j++) { NeuronioSaida ns = new NeuronioSaida("Saida"+i+j); ns.setPosicaoX(i); ns.setPosicaoY(j); System.out.println(ns); listaNeuroniosSaida.add(ns); log+=ns.toString()+"\n"; } } } } catch (Exception e) { e.printStackTrace(); } } Mtodo que Inicia os Pesos Aleatoriamente: private void iniciaPesoAleatorio() { double[] pesoTemp = new double[Kohonen.getTAMANHO_VETOR_PESOS()]; for (int i = 0; i < pesoTemp.length; i++) { pesoTemp[i] = Math.random() * 100; } this.pesoAtual = pesoTemp; } Mtodos que Treinam a Rede: public void treinaRede() { try { int indice = 0; List lista = this.getListaNeuroniosEntrada(); while (Kohonen.INSTANTE<Kohonen.CONSTANTE_TEMPO2) { if(indice<lista.size()) { NeuronioEntrada ne = (NeuronioEntrada) NeuronioSaida vencedor =
lista.get(indice);
this.getNeuronioVencedor(ne);
61
public void ajusteFino(){ Kohonen.fatorAprendizado=0.01; listaNeuroniosEntrada=new ArrayList(); listaNeuroniosSaida=new ArrayList(); criaEntradaBanco(); criaSaida(); int iteracoes = 500*TAMANHO_VETOR_SAIDA_REDE; int indice = 0; List lista = this.getListaNeuroniosEntrada(); for(int i=0;i<iteracoes;i++){ if(indice<lista.size()){ NeuronioEntrada ne = (NeuronioEntrada) lista.get(indice); NeuronioSaida vencedor = this.getNeuronioVencedor(ne); this.atualizaNeuronio(vencedor, ne); indice++; }else{ indice = o; } }