Você está na página 1de 68

Dlcia Jochem a

ANALISE DO TREINAMENTO DE UMA REDE NEURAL ARTIFICIAL

RIO DO SUL NOVEMBRO - 2003

Dlcia Jochem a

ANALISE DO TREINAMENTO DE UMA REDE NEURAL ARTIFICIAL


Trabalho de Concluso de Curso, do Curso a de Bacharel em Sistemas de Informao, ca da Faculdade de Cincias e Tecnologia, da e Universidade para o Desenvolvimento do Alto Vale do Itaja Prof. Orientador: Brignoli, Msc Prof. Co-orientador: reto, Dr. Juliano Tonizetti

Jorge Muniz Bar-

RIO DO SUL NOVEMBRO - 2003

Folha de Aprovao ca
DALCIA JOCHEM ANALISE DO TREINAMENTO DE UMA REDE NEURAL ARTIFICIAL Este Trabalho de Concluso de Curso foi julgado adequado para a obteno dos a ca crditos na disciplina de nome equivalente do curso de Sistemas de Informao, obrie ca gatria para a obteno do t o ca tulo de: BACHAREL EM SISTEMAS DE INFORMACAO

Prof. Marco Aurlio Butzke - Coordenador e

Banca Examinadora:

Prof. Juliano Tonizetti Brignoli, Msc Orientador

Prof. Sandro Alencar Fernandes

Prof. Fernando Andrade Bastos, Msc

Rio do Sul, 30 de janeiro de 2004

Dedico este trabalho a meus pais, cujo exemplo de honestidade e trabalho tem sido um norteador para a minha vida, e para minha esposo Jeerson, que tem me dado apoio nos momentos mais difceis e mostrado a simplicidade de ter esperana. c

Agradecimentos
Antes de mais nada, gostaria de agradecer a Deus por ter me acompanhado durante toda a minha existncia e por ter me confortado nos momentos mais dif e ceis da minha vida, me mostrando a luz e o caminho correto a ser seguido. Em seguida, gostaria de agradecer minha me Albina, ao meu pai Quirino e meus a a irmos, Nivaldo, Incio e Devani e tambm ao meu cunhado Luciano, que me acompaa a e nharam em todas as batalhas que a vida nos proporcionou e comigo vibraram em todas as conquistas; e at mesmo nos insucessos me apoiaram no sei que sentido teria a minha e a existncia se eles no estivessem ao meu lado. e a Gostaria em especial agradecer ao meu esposo Jeerson, por ter me apoiado nesta fase nal de minha graduao apesar de tambm estar conclu ca e ndo seu trabalho. Agradeo c tambm o amor e carinho recebido todos os dias ao chegar em casa de minha cachorrinha e Tukinha que sempre est alegre e contente com minha chegada, e por ter acompanhado a todos os dias o meu esforo. c No esquecendo, claro, dos professores que estiveram sempre auxiliando e dando a e foras para seguir em frente, em especial ao meu orientador Juliano por ter auxiliando c na escolha desta linha de pesquisa que a inteligncia articial, e agradecer a orientao e e ca recebida. Agradecer tambm o professor Barreto e sua esposa pelas palavras de incentivo e e apoio, pela ajuda que tem prestado ao longo deste per odo neste trabalho, permitindo assim caminhar ao encontro do prossional que sou hoje. Por m, gostaria de agradecer aos meus amigos e parentes, que sempre acreditaram nas minhas perspectivas e que nunca duvidaram da minha capacidade.

Voc jamais ser substitudo pela mquina. Chegar o dia em que talvez as mquinas e a a a a pensem; porm elas nunca tero sonhos. e a Tadeu Comerlatto

Resumo
Este trabalho uma anlise do treinamento de uma rede neural articial, criada e a especicamente para compresso de imagens. Vale resaltar que este trabalho vem a ser a uma extenso de um trabalho existente. a Ao longo do trabalho so efetuados treinamentos com diversas conguraes e parmetros a co a de operao da rede, am de se levantar o quanto de treinamento necessrio para que as ca e a perdas na compresso sejam aceitveis. O objetivo desta anlise evitar o treinamento a a a e excessivo, de forma a modelar o processo gerador dos dados apresentados a rede, e no, a simplismente decorraros dados. A rede em questo uma rede direta utilizando como algoritmo de aprendizado a a e retropopagao. A rede possui trs camadas, uma de entrada, uma intermediria e uma ca e a de sa da. O treinamento realizado na ferramenta MATLAB, pois este permite que sejam e extra das informaes sobre os treinamentos efetuados, dando subs co dios para a anlise a proposta.

Sumrio a

Lista de Figuras 1 Introduo ca 1.1 1.2 1.3 11

Problema de Pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Justicativa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 1.3.1 1.3.2 Objetivo Geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 Objetivos Espec cos . . . . . . . . . . . . . . . . . . . . . . . . . . 14

1.4

Organizao do trabalho . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 ca 15

2 Redes Neurais 2.1 2.2

O neurnio biolgico e o neurnio articial . . . . . . . . . . . . . . . . . . 15 o o o Redes Neurais Articiais . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.2.1 2.2.2 2.2.3 Estrutura da rede . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 Topologia das RNAs . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Treinamento e teste . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

2.3

Aspectos de aprendizado neural . . . . . . . . . . . . . . . . . . . . . . . . 22 2.3.1 2.3.2 2.3.3 Processos de aprendizagem . . . . . . . . . . . . . . . . . . . . . . . 24 Algoritmo de Retropropagao (Backpropagation) . . . . . . . . . . 26 ca Fatores que inuenciam no aprendizado . . . . . . . . . . . . . . . . 27 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

2.4

Estado da arte 2.4.1

Anlise do treinamento de uma rede neural para modelagem de a sistemas dinmicos . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 a

2.4.2

Aplicao de redes neurais no processamento digital de imagens . . 30 ca 32

3 Compresso de imagens usando uma RNA a 3.1 3.2 3.3 3.4

O que uma imagem digital . . . . . . . . . . . . . . . . . . . . . . . . . . 32 e Obtendo as imagens . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 Normalizao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 ca Compresso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 a 36

4 A ferramenta Matlab 4.1

Neural Networks Toolbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 42

5 Anlise do treinamento a 5.1

Treinamentos e testes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 5.1.1 5.1.2 5.1.3 Treinamento com 100 pocas . . . . . . . . . . . . . . . . . . . . . . 44 e Treinamento com 300 pocas . . . . . . . . . . . . . . . . . . . . . . 52 e Treinamento com 1000 pocas . . . . . . . . . . . . . . . . . . . . . 57 e 60

6 Concluso a 6.1

Recomendaes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 co 62 64

Referncias e Anexos Anexo A - Programa que converte imagens em matrizes para entrada na rede,

arquitetura da rede . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 Anexo B - Programa Simulao da rede . . . . . . . . . . . . . . . . . . . . . . . 65 ca Anexo C - Contrucao do conjunto de teste e treinamento . . . . . . . . . . . . . 66 Anexo D - Programa para treinamento da rede . . . . . . . . . . . . . . . . . . 67

Lista de Figuras
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Um neurnio biolgico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 o o Neurnio articial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 o Exemplo de uma RNA de 2 camadas com 4 entradas e 2 sa das . . . . . . . 18 Exemplo de redes diretas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Exemplo de redes com ciclos . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Rede simtrica com neurnios internos . . . . . . . . . . . . . . . . . . . . 21 e o Aprendizado Supervisionado . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Retropropagao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 ca Exemplo de uma tangente hiperblica . . . . . . . . . . . . . . . . . . . . . 28 o Tomograa da coluna lombar . . . . . . . . . . . . . . . . . . . . . . . . . 33 Tela principal do MATLAB . . . . . . . . . . . . . . . . . . . . . . . . . . 37 Tela do m-le . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 Tela da interface grca (NNTool) . . . . . . . . . . . . . . . . . . . . . . . 39 a Comparao da imagem original com sua simulao antes do treinamento . 43 ca ca MSE para 100 pocas com = 0, 01 . . . . . . . . . . . . . . . . . . . . . . 44 e Comparao da imagem original com sua simulao aps 100 pocas e ca ca o e = 0, 01 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 17 18 19 20 MSE para 100 pocas com = 0, 2 . . . . . . . . . . . . . . . . . . . . . . 46 e Comparao da imagem original com sua simulao aps 100 pocas e = 0, 2 47 ca ca o e MSE para 100 pocas com = 0, 75 . . . . . . . . . . . . . . . . . . . . . . 48 e Comparao da imagem original com sua simulao aps 100 pocas e ca ca o e = 0, 75 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

21 22 23 24 25 26

MSE para 100 pocas com = 0, 8 . . . . . . . . . . . . . . . . . . . . . . 50 e Comparao da imagem original com sua simulao aps 100 pocas e = 0, 8 51 ca ca o e MSE para 300 pocas com = 0, 2 . . . . . . . . . . . . . . . . . . . . . . 52 e Comparao da imagem original com sua simulao aps 300 pocas e = 0, 2 53 ca ca o e MSE para 300 pocas com = 0, 75 . . . . . . . . . . . . . . . . . . . . . . 54 e Comparao da imagem original com sua simulao aps 300 pocas e ca ca o e = 0, 75 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

27 28 29 30

MSE para 300 pocas com = 0, 8 . . . . . . . . . . . . . . . . . . . . . . 56 e Comparao da imagem original com sua simulao aps 300 pocas e = 0, 8 57 ca ca o e MSE para 1000 pocas com = 0, 8 . . . . . . . . . . . . . . . . . . . . . . 58 e Comparao da imagem original com sua simulao aps 1000 pocas e ca ca o e = 0, 8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

11

Introduo ca

Ainda acredito na possibilidade de construirmos um modelo da realidade. Albert Einstein A partir da evoluo das mquinas, o homem tem um grande desejo de criar uma ca a mquina que opere independente do controle humano, que tenha a capacidade de aprender a e de interagir com ambientes incertos. Uma mquina que possa ser chamada de inteligente. a O sucesso desta mquina dependeria de sua capacidade de lidar com uma variedade a de eventos inesperados, na qual aprenda tarefas cada vez mais complexas, realizando isto gradativamente. Organismos humanos so uma fonte de motivao para os estudos de a ca mquinas inteligentes. Os computadores funcionam de modo sequencial, sendo eciente a em tarefas que seguem etapas, enquanto o cerbro humano funciona de modo paralelo. e Estes estudos iniciaram por volta de 1943 quando surgiram as primeiras informaes co mencionadas sobre redes neurais, em artigos que sugeriam a construo de uma mquina ca a baseada ou inspirada no crebro humano, mas por um longo per e odo de tempo, poucos resultados foram obtidos. At que em 1949, foi proposta a primeira lei de aprendizagem e espec ca para as sinpses dos neurnios. a o Este primeiro e corajoso passo serviu de inspirao para que muitos outros pesquisaca dores perseguissem a mesma idia. e Em 1951 foi constru o primeiro neuro computador, chamado de Snark, que operava do com sucesso de um ponto de partida tcnico. Entretanto, ele nunca executou qualquer e funo de processamento de informao interessante, mas serviu de inspirao para novas ca ca ca idias. e Em 1956 nasceram dois paradigmas de IA (Inteligncia Articial), a simblica e o e o conexionista. A IA simblica tenta simular o comportamento inteligente humano deso considerando os mecanismos responsveis por tal. J a IA conexionista acredita que a a construindo-se um sistema que simule a estrutura do crebro, este sistema apresentar e a

12

inteligncia, ou seja, ser capaz de aprender, assimilar, errar e aprender com seus erros. e a O primeiro neuro computador a obter sucesso surgiu em 1957 e 1958, cujo interesse inicial era o reconhecimento de padres. Aps isso, foi desenvolvido um novo tipo de o o elemento de processamento de RNAs chamada Adaline, equipado com uma poderosa lei de aprendizado. Infelismente os anos seguintes foram marcados por um entusiasmo exagerado de muitos pesquisadores, que previam em um curto espao de tempo a criao de mquinas to c ca a a poderosas quanto o crebro humano, tirando a credibilidade dos estudos nesta rea. e a Entre os anos de 1967 e 1981 foram realizadas poucas pesquisas na rea e estas foram a silenciosas, devido aos fatos citados anteriormente. Entretanto, nesta poca os pesquisae dores e seus seguidores conseguiram novamente concretizar o renascimento da rea. a Nos anos 80 muitos dos pesquisadores foram corajosos e passaram a publicar diversas propostas para a explorao de desenvolvimento de redes neurais bem como suas ca aplicaes. co O fato mais importante foi um administrador da DARPA (Defense Advanced Research Projects Agency) aderiu as pesquisas em redes neurais articiais. Este ato no s abriu a o as portas para as redes neurais articiais, como tambm deu ` DARPA o status de umas e a das l deres mundiais em se tratando de modatecnolgica. o Neste per odo outro fato importante foi John Hopeld renomado f sico de reputao ca mundial, se interessar por redes neurais articiais, depois deste fato vrios pesquisadores a aderiram a estes estudos inuenciados por Hopeld, quando em 1986 este campo da pesquisa explodiucom a publicao do livro Processamento distribu Paralelo. ca do Em 1987 ocorreu a primeira conferncia de redes neurais em tempos modernos. e Desde 1987 muitas universidades anunciaram a formao de institutos de pesquisa e ca programas de educao em redes neurais. ca Nos ultimos anos inmeras pesquisas e aplicaes de RNAs tem surgido, consolidado u co cada vez mais esta rea de conhecimento. a

1.1

Problema de Pesquisa

O maior segredo para construir com sucesso uma RNA (Rede Neural Articial) saber e quando parar de treinar. Se for treinada muito pouco, a rede no ir aprender os padres. a a o

13

Se for treinada muito, a rede ir decorar os padres de treinamento e no generalizar a a o a contento novos padres. o

1.2

Justicativa

A aplicao de compresso de imagens foi escolhida pelo fato de que, a rede criada para ca a tal j estar implementada em uma ferramenta, que possui inmeros recursos e facilidades a u para a execuo de treinamento e simulaes. Desta forma podem ser extra ca co dos grcos a para a anlise proposta. a O objetivo do treinamento de uma RNA no memorizar os dados e sim modelar o a e processo gerador desses dados. O treinamento consiste em apresentar-se exemplos para a rede e ela aprender com a estes exemplos. Existem vrios fatores que inuenciam neste aprendizado, que tambm a e devem ser considerados na anlise. a Dentre as vantagens que torna as RNAs uma alternativa para processamento de imagens, pode-se citar a adaptao e aprendizagem, o paralelismo inerente, tolerncia a faca a lhas e a possibilidade de processar dados degradados ou incompletos. Tornando o uso de RNAs uma soluo genrica no necessitando reestruturar ou reprogramar, e sim, apenas ca e a retrein-la a RNA com novos exemplos. a A anlise do aprendizado se justica pelo fato de que h muitas variveis envolvidas, a a a e tais variveis devem ser analisadas de acordo com a aplicao da RNA. a ca Tudo isto importante para que se faa uma boa anlise do treinamento da RNA, no e c a intuito de incentivar seu uso, anal, um bom treinamento da RNA resulta em uma boa generalizao na fase de teste. ca Alm do que, a compresso de imagens tem fundamental importncia para a economia e a a no armazenamento, e performance dos processos de transferncia, em virtude da crescente e utilizao de sistemas conectados em rede e da necessidade de se tranferir cada vez mais ca dados.

14

1.3
1.3.1

Objetivos
Objetivo Geral

Analisar o treinamento de uma RNA (rede neural articial), que utiliza o aprendizado de retropropagao, de forma a modelar o processo gerador dos dados apresentados. A ca anlise ser feita utilizando-se de uma rede neural criada espec a a camente para compresso a de imagens.

1.3.2

Objetivos Espec cos

1. Compreender a relao entre o modelo articial e o modelo biolgico e estruturas ca o neurais. 2. Estudar o aprendizado da rede neural articial 3. Estudar a ferramenta MATLAB 4. Utilizar para simulao da RNA a ferramenta MATLAB ca 5. Simular a rede neural articial. 6. Analisar o treinamento da rede.

1.4

Organizao do trabalho ca

Este trabalho foi organizado em cap tulos conforme descritos a seguir. O cap tulo 1 introduz um histrico tema, o problema, a justicativa,o objetivo geral e os objetivos o espec cos e a organizao deste. O cap ca tulo 2 trata de redes neurais como sendo a fundamentao terica. Neste cap ca o tulo sero vistos os modelos de neurnios, as redes neurais a o articiais e sua estrutura e topologia, seguindo uma explicao sobre aspectos de aprenca dizado neural, o aprendizado de uma rede neural articial, processos de aprendizagem, algoritmo de retropropagao e os fatores que inuenciam no aprendizado. Tambm aborca e dando por m o estado da arte. O cap tulo 3 apresenta a compresso de imagens usando a uma RNA. O cap tulo 4 trata da ferramente Matlab e da Neural Networks Toolbox. O cap tulo 5 encontra-se a anlise do treinamento O cap a tulo 6 apresenta-se as concluses da o anlise realizada. Neste cap a tulo tambm so descritas recomendaes e extenses para e a co o trabalhos futuros.

15

Redes Neurais

A mente avana at o ponto onde pode chegar; mas depois passa para uma dimenso c e a superior, sem saber como l chegou. Todas as grandes descobertas realizaram esse salto. a Albert Einstein

2.1

O neurnio biolgico e o neurnio articial o o o

O neurnio biolgico composto de trs partes: o o e e Dentritos: fazem o transporte de informaes vindas de outros neurnios para dentro co o da clula. e Axnio: transmite um sinal do corpo celular para suas extremidades. o Corpo celular ou soma: nesta parte as informaes so somadas, processando assim co a uma outra informao, que sai da clula atravs de um axnio. ca e e o No entanto esses axnios e outros axnios de outros neurnios vo se comunicar com o o o a os dentritos de uma determinada clula, montando assim uma rede. As extremidades e do axnio so conectados com dentritos de outros neurnios pelas sinapses. Em muitos o a o casos, um axnio conectado diretamente com outros axnios ou com o corpo de outros o e o neurnios. o
As sinapses tem um papel fundamental na memorizao da informao ca ca 1 e algumas vezes de partes e so principalmente as do crtex cerebral a o mais profundas do crebro que armazenam esta informao. Pode-se e ca imaginar que em cada sinapse, a quantidade de neurotransmissores2 que podem ser liberados para uma mesma freqncia de pulsos do axnio ue o representa a informao armazenada nesta sinapse.(BARRETO, 1997, ca p.62)
Crtex cerebral: parte mais externa do crebro, responsvel pela enorme quantidade de informaes o e e a co Neurotransmissores: so substncias qu a a micas produzidas pelos neurnios e so usadas para transo a mitir informaes entre as clulas co e
2 1

16

Figura 1: Um neurnio biolgico o o


Fonte: Tafner (1998)

Podemos sintetizar que, as informaes entram no neurnio atravs dos dentritos e co o e so processadas no corpo celular. Tal processamento gera uma nova informao que sai a ca do neurnio pelo axnio, este processo serve de inspirao para os neurnios articiais. o o ca o Exemplicado na gura 1. Na explicao de Tafner (1998) consta que o neurnio articial uma estrutura lgicoca o e o matemtica que procura simular o comportamento de um neurnio biolgico. Assim a o o sendo, os dendritos foram substitu dos por entradas, cujas ligaes com o corpo celular co articial so realizadas atravs de elementos chamados de peso, simulando as sinapses3 . a e Os est mulos captados pelas entradas so processados pela funo de soma, e o limiar de a ca disparo do neurnio biolgico foi substitu pela funo de ativao. Como mostra a o o do ca ca gura 2. O funcionamento do neurnio articial da seguinte forma: as entradas chegam pelos o e dendritos, so multiplicadas pelos pesos e somados dentro do corpo celular. Se o resultado a da somatria for maior que um determinado valor limite, haver uma sa caso contrrio o a da, a no haver uma sa a a da, ou melhor podemos dizer que a sa estar desligada. da a
3

So unidades estruturais e funcionais elementares que medeiam as interaes entre os neurnios. a co o

17

Figura 2: Neurnio articial o


Fonte: Tafner (1998)

2.2

Redes Neurais Articiais

Segundo LAUER JUNIOR, as redes neurais articiais so mtodos de solucionar problea e mas, simulando o crebro humano, alm disto, uma tcnica computacional que adquire e e e e conhecimento atravs de experincias. e e Segundo Barreto (1997),uma RNA um sistema complexo cujos elementos so os e a neurnios e as conexes. A rede pode ser homognea se todos os neurnios forem iguais, o o e o ou heterognea caso os neurnios sejam diferentes. Geralmente as RNAs so do tipo e o a homogneas, principalmente por razes de simplicidade, o que no ocorre com as redes e o a biolgicas que so bastante heterogneas. o a e Os neurnios so como os ns de um grafo4 que so os elementos de processamento e o a o a suas arestas so conexes que funcionam como caminhos de conduo imediatas de sinais a o ca em uma unica direo. ca
Informalmente uma rede neural um sistema composto por vrios e a neurnios de modo que as propriedades de sistema complexo sejam o usadas. Este neurnios esto ligados por conexes, chamadas conexes o a o o sinpticas. Alguns neurnios recebem excitao do exterior e so chaa o ca a mados neurnios de entrada e correspondem aos neurnios dos rgos o o o a dos sentidos. Outros tm suas respostas usadas para alterar, de alguma e forma, o mundo exterior e so chamados neurnios de sa e corresa o da pondem aos motoneurnios que so os neurnios biolgicos que excitam o a o o
Grafo formado por um conjunto de pontos e de ligaes, com cada ligao unindo um ponto a outro. e co ca Os pontos so chamados de vrtices do grafo, e as ligaes, de arestas a e co
4

18 os msculos. Os neurnios que no so nem entrada nem sa so u o a a da a conhecidos como neurnios internos. Estes neurnios internos ` rede o o a tem grande importncia e so conhecidos na literatura saxnica como a a o hidden.(BARRETO, 1997, p.68)

Figura 3: Exemplo de uma RNA de 2 camadas com 4 entradas e 2 sa das


Fonte: Tafner (1998)

Podemos ver na gura 3 a combinao de vrios neurnios articiais, tal combinao ca a o ca forma uma RNA. As entradas da rede simulam a captao de est ca mulos5 , que podem ser conectados em muitos outros neurnios, representando assim, uma srie de sa o e das, onde cada neurnio representa uma sa o da. A conexo em si torna o sinal de sa de um a da neurnio em um sinal de entrada de outro neurnio. o o Conforme Tafner (1998) uma rede neural composta por vrios itens: e a Conexes entre camadas: so as arestas que ligam uma camada a outra; o a Camadas intermedirias; a Quantidade de neurnios; o Funo de ativao: uma funo de ordem interna, cuja atribuio fazer acontecer ca ca e ca ca e um n de ativao dentro do prprio neurnio; vel ca o o Algoritmo de aprendizado: aquele que dita como ser feito os ajustes dos pesos e a sinpticos para que a rede adquira experincia ao longo do treinamento a e
5

No presente trabalho cada neurnio de entrada equivale a um valor de p o xel

19

2.2.1

Estrutura da rede

Alm da semelhana conceitual entre o neurnio biolgico e o neurnio articial h e c o o o a tambm a semelhana na estrutura das redes neurais. Nishida (1998) diz que, para ene c tendermos melhor a estrutura de uma rede neural conveniente que se faa uma analogia e c com os elementos biolgicos do crebro humano. o e O sistema nervoso de um ser humano, assim como de qualquer primata, consiste de trs estgios bsicos: no primeiro estgio os est e a a a mulos de entrada externos so captados a pelas unidades sensoras(os olhos, por exemplo, captam sinais visuais), e o estgio de a processamento destes sinais pelo sistema nervoso central (o cerbro) e o estgio no qual e a as respostas aos est mulos de entrada so obtidos (a voz pode ser ativada em resposta a a determinada entrada, bem como aes motoras ou orgnicas). Com base nisto, pode-se co a dizer que o cerbro humano incessantemente recebe informaes provenientes do meio e co externo, as quais processa, avalia e compara ` outras infomaes que tem armazenadas a co na memria, tornando-se apto a tomar decises apropriadas. o o Nas RNAs os neurnios articiais so inteligados por conexes tais como as conexes o a o o biolgicas, denominadas conexes sinpticas. Assim como ocorre no crebro humano, too o a e dos os dados recebidos pela RNA, so passados entre os neurnios atravs desta conexes a o e o sob a forma de impulsos. Com o intuito de simular este aprendizado, pesos so designados a a `s conexes sinpticas entre neurnios articiais, e representam o conhecimento armazeo a o nado em uma RNA. Atravs de um processo de aprendizagem, ou treinamento, os pesos e sinpticos so ajustados e tornam a rede articial apta a decidircom maior ou menor a a ecincia. e Na estrutura da rede os parmetros mais relevantes so: a a Nmero de camadas (Layers) - quanto maior o nmero de camadas, maior ser a u u a complexidade e o tempo de processamento da rede. Nmero de neurnios por camada - quanto maior for o nmero de neurnios acarreta u o u o no aumento do grau de liberdade da funo de ativao. ca ca Topologia das interconexes - veremos a seguir. o

20

2.2.2

Topologia das RNAs

Segundo Barreto (1997), qualquer grafo dirigido pode dar lugar a uma topologia. Entretanto, algumas topologias recebem mais ateno dos pesquisadores. Aqui so apreca a sentadas algumas das mais comuns. Redes diretas So representadas por grafos sem ciclos e frequentemente em forma de camadas. a Uma camada de entrada, uma camada de sa e uma ou mais camadas internas.6 da As informaes percorrem apenas em um sentido da entrada para a sa e conco da forme alguns autores a topologia mais usada, juntamente com o aprendizado da e retropropagao. ca

Figura 4: Exemplo de redes diretas


Fonte:
ABRAHART; SEE

Redes com ciclos So representadas por um grafo de conectividade que deve conter ao menos um ciclo, a possui memria e guarda o momento anterior, o que faz com que ela no dependa o a somente dos sinais de entrada, como tambm do valor anterior de sa da rede. e da Nesta topologia ocorre realimentao, ou retroao, onde uma sa de uma caca ca da mada pode realimentar a entrada de dados de outra camada, podendo ou no haver a camada intermediria. Vide gura 5. a
6

Tambm chamadas de intemedirias ou escondidas (hidden) e a

21

Figura 5: Exemplo de redes com ciclos


Fonte: Pujol (1994)

Redes simtricas e E um caso particular de redes com ciclos, onde o grafo dessa rede tem arcos no a orientados, como podemos ver na gura 6.

Figura 6: Rede simtrica com neurnios internos e o


Fonte:
TATIBANA; KAETSU

2.2.3

Treinamento e teste

Assim como uma rede neural biolgica desenvolvida deve possuir a capacidade de o armazenar novos conhecimentos, com o intuito de torn-los uteis ` tomadas de deciso, a a a uma RNA deve ser treinada com o mesmo objetivo: aprender.

22

E no processo de treinamento que devem ser ajustados os parmetros, para que a rede a habilite-se a responder o mais corretamente poss a quaisquer outros est vel mulos que lhe forem apresentados em uma fase posterior ao treinamento, denominada de teste. O treinamento, pode-se assim dizer, inicia quando um exemplo apresentado a rede e e termina quando todas as conexes esto devidamente ajustadas (treinadas) para recoo a nhecer todos os exemplos mostrados ` rede (ou pelo menos uma boa parte dos exemplos). a A partir deste momento a rede est pronta para a fase de testes e, a seguir, para o uso. a Quanto ao conjunto de dados que sero apresentados ` rede, podemos dizer que, a a quanto mais completo o conjunto, mais tempo computacional ser utilizado para ajustar a as conexes e, certamente, melhor ser o seu treinamento. o a E a fase de treinamento que constuma receber uma ateno especial, pois quanto ca melhor o conjunto de treinamento, melhor o resultado da atuao da rede. E importante ca comentar que a ecincia da aplicao depende no s do bom dimensionamento da rede, e ca a o mas tambm da seriedade com que o conjunto de treinamento mostrados. (TAFNER; e e
XEREZ; RODRIGUES FILHO, 1996)

Devemos ter sempre em mente que tudo o que uma rede neural ser capaz de fazer a depende do que ela for capaz de aprender. Neste trabalho o treinamento realizado por pocas. Uma poca ocorre quando todo e e e o conjunto de treinamento apresentado uma vez a rede e s depois disto, as sinapses so e o a atualizadas.

2.3

Aspectos de aprendizado neural


O mecanismo do descobrimento no lgico e intelectual - uma iluminao a e o e ca subitnea, quase um xtase. a e Albert Einstein

Barreto (1997) diz que aprender o ato que produz um comportamento diferente e a um est mulo externo devido ` excitaes recebidas no passado e de uma certa forma a co e sinnimo de aquisio de conhecimento. o ca No caso das redes neurais aprender modicar os valores das conexes entre neurnios e o o de modo a modicar o comportamento da rede, porm, o conhecimento da rede ca e armazenado nos valores das conexes entre neurnios. o o

23

Para saber como resolver um problema de IA, precisamos saber qual o tipo de conhecimento envolvido. Segundo Barreto (1997), temos 3 tipos de conhecimento: conhecimento factual, conhecimento operacional e conhecimento de habilidade. Para entendermos cada tipo de conhecimento usaremos como exemplo o aprendizado de uma l ngua. O conhecimento factual consiste no vocabulrio desta l a ngua e um conhecimento e expl cito. As regras de gramtica que permitem combinar palavras deste vocabulrio a a para formar frases so o conhecimento operacional da l a ngua. E com este conhecimento operacional que a partir do conhecimento factual poss obter frases. Entretanto este e vel conhecimento factual e operacional so insucientes para escrever bem. Falta a prtica a a e a inspirao, tipo de conhecimento diferente, chamado habilidade. ca Vrios autores denem que aprendizado um processo pela qual os parmetros a e a aleatrios de uma rede neural so adaptados atravs da continuidade do processo de o a e simulaao do ambiente na qual a rede est. O tipo de aprendizado determinado pela c a e maneira como os parmentros so alterados. (MOREIRA, 2002)(SILVA; COSTA, 2002) a a As RNAs possuem a capacidade de aprender atravs de exemplos e fazer interpolao e ca e extrapolao do que aprenderam. Este aprendizado ocorre quando a RNA atinge uma ca soluo generalizada para uma classe de problemas. ca Um algoritmo de aprendizado um conjunto de regras bem denidas para a soluo e ca de uma problema de aprendizado. Existem muitos tipos de algoritmos de aprendizado, estes algoritmos diferenciam-se entre si principalmente pelo modo como os pesos so a modicados. As RNAs baseiam-se nos dados para extrair um modelo geral, portanto, a fase de aprendizado deve ser rigirosa e verdadeira, a m de se evitar modelos esprios. u E nas sinapses que est armazenado o conhecimento da RNA, ou seja, nos pesos a atribu dos `s conexes entre os neurnio. Parte dos dados devem ser separados para o a o o treinamento da RNA, estes dados devem ser escolhidos aleatriamente, a m de que a o RNA aprendaas regras e no decoreos exemplos. O restante dos dados sero utilizados a a para a fase de testes, a m de que se possa deduzircorretamente o interrelacionamento dos dados. (DALBEM, 2003) (TATIBANA; KAETSU, ) (SILVA; COSTA, 2002)

24

2.3.1

Processos de aprendizagem

O paradigma de aprendizagem o modelo do ambiente no qual a rede neural opera. e Portanto, apresentado abaixo a categoria de aprendizagem supervisionada, tendo tambm e e a categoria de aprendizagem no-supervisionada. a De acordo com Schwengber (2003, p.92) os paradigmas de aprendizagem,[...]ditam como so feitos os ajustes dos pesos sinpticos para que a rede adquira experincia ao a a e longo do treinamento. Supervisionado Precisamos de uma tcnica para o aprendizado do neurnio, pois quando conece o tarmos, os neurnios entre si, eles podem produzir qualquer sa o da, inclusive aquela errada. Assim sendo, teremos que trein-los para que possam desempenhar suas a funes corretamente. Comearemos por uma regra bem simples, pois ter a simco c a plicidade do modelo de neurnio. Buscaremos ento inspirao no sistema neural o a ca biolgico. o Quando uma criana comea a falar, geralmente troca alguns sons pronunciando c c assim as palavras de forma incorreta. A criana passa, por um per c odo de aprendizado, at falar de maneira correta. Este aprendizado da seguinte forma: todas e e as vezes que a criana fala uma palavra errada algum repete tal palavra de forma c e correta para que ela aprenda os sons. Com o exemplo acima podemos explicar o que aprendizado supervisionado. No e sistema biolgico a resposta correta insentivada, assim, devemos passar esta idia o e e para nossa RNA, ou seja, temos que estimular as situaes que queremos que se co repitam e reprimir as situaes que no so as esperadas. co a a O aprendizado chamado de supervisionado porque a sa desejada que a rede deve e da resultar fornecida por um supervisor (professor) externo. O objetivo ajustar os e e parmetros da rede, de forma a encontrar uma ligao entre os pares de entrada e a ca sa fornecida. da Na gura 7 o professor indica, explicitamente, um comportamento bom ou ruim para a rede, visando direcionar o processo de treinamento. A rede tem sua sa corrente da (calculada) comparada com a sa desejada, recebendo informaes do supervisor da co sobre o erro da resposta atual. A cada padro de entrada submetido ` rede comparaa a se a resposta desejada (que representa uma ao tima a ser realizada pela rede) ca o

25

com a resposta calculada, e os pesos das conexes so ajustados para minimizar o o a erro. A minimizao da diferena incremental, j que pequenos ajustes so feitos ca c e a a nos pesos ` cada etapa de treinamento, de tal forma que estes caminhem, se poss a vel, para uma soluo.(DALBEM, 2003) ca

Figura 7: Aprendizado Supervisionado


Fonte: Dalbem (2003)

A desvantagen do Aprendizado Supervisionado que, na ausncia do professor, a e e rede no conseguir aprender novas estratgias para situaes no cobertas pelos a a e co a exemplos do treinamento da rede. No supervisionado a No aprendizado no supervisionado, como o prprio nome diz, no h um professor a o a a ou supervisor para acompanhar o processo de aprendizado. O aprendizado no supervisionado permite ` rede aprender sem que haja um cona a junto de respostas desejadascomo referncia para as sa e das da rede. Neste caso, os pesos so ajustados a medida em que a rede vai sendo provida de padres de a o entrada selecionados como representativos de cada classe. Segundo Barreto (1997) diz que, a modicao nos valores das conexes sinpticas ca o a no depende se a resposta foi correta ou no. Usa-se por outro lado um esquema, tal a a que, para exemplos de coisas semelhantes, a rede responda de modo semelhante. Mas este aprendizado, s se torna poss o vel, quando existe redundncia nos dados de a entrada. Sem redundncia seria imposs encontrar quaisquer padres ou caraca vel o ter sticas dos dados de entrada.

26

2.3.2

Algoritmo de Retropropagao (Backpropagation) ca

O processo de treinamento de uma RNA consiste basicamente em apresentar pares entrada-sa ` rede, calcular as sa da a das da rede em funo das entradas, calcular o erro ca entre a sa desejada e a sa calculada e alterar os valores sinpticos por algum tipo da da a de algoritmo, que neste caso, ser o algoritmo de retropropagao. a ca A medida que os pares entrada-sa vo sendo apresentados, e os pesos das sinpses da a a atualizados, a soma do erro mdio quadrtico (MSE)da sa da rede tende a diminuir. e a da Na gura 8 podemos visualizar a fase forward que um sinal de entrada (est e mulo), que est mula a entrada da rede, propagando-se para frente (neurnio por neurnio) atravs o o e da rede e segue para a camada de sa da rede como um sinal de sa da da. Temos a fase backward que um sinal de erro que origina-se dos neurnios de sa e o da da rede e propaga-se para trs (camada por camada) atravs da rede. a e

Figura 8: Retropropagao ca
Fonte: Dalbem (2003)

Segundo Silva e Costa (2002, p. 43) o algoritmo de Backpropagation um mtodo e e iterativo de gradiente, projetado para minimizar a soma do erro quadrtico entre, a sa a da atual e a sa desejada da O processo de treinamento da RNA pelo algoritmo de retropropagao realiza, como o ca

27

prprio nome diz, a retropopagao dos erros calculados das sa o ca das em direo `s entradas. ca a O erro calculado na sa de um neurnio multiplicado pela derivada da funao de da o e c ativao daquele neurnio e propagado para a sua entrada. Em seguida este valor ca o e enviado para todos os neurnios da camada anterior, e pesados pelas respectivas sinapses. o

2.3.3

Fatores que inuenciam no aprendizado

H diversos fatores que inuenciam no aprendizado de uma rede neural. Estes fatores a melhoram signicativamente o desempenho do algoritmo de retropropagao, como so ca a descritos a seguir. Taxa de aprendizado () E uma pequena constante positiva utilizada na equao do ajuste dos pesos no ca algoritmo de retropropagao. (SILVA; COSTA, 2002) ca Uma taxa de aprendizado pequena implica em pequenas variaes dos pesos sinpticos, co a tornando o treinamento lento e aumentando as chances de paradas em m nimos locais (que quando a rede pensa que achou o erro m e nimo global); altas taxas de aprendizado, no entanto, podem levar a RNA a saturao ou mesmo ` oscilao, ca a ca compromentendo todo o processo de aprendizado. Para estipula valores para a taxa de aprendizado inicialmente usa-se valores padres, o e depois vai se alterando estes valores empiricamente. Segundo Silva e Costa (2002), os valores tipicamente usados para a taxa de aprendizado so valores num intervalo de 0, 05 < < 0, 75. a Termo momentum E usado para diminuir a possibilidade de oscilaes durante a execuo do algoritmo co ca de retropropagao. Silva e Costa (2002), sugere que os valores quem num intevalo ca de [0.2, 0.7]. Este termo incluso na frmula de ajuste dos pesos aumentado a velocidade de e o aprendizado (acelerao), reduzindo o perigo de instabilidade. O termo momentum ca pode acelerar o treinamento em regies muito planas da superf de erro. Alm o cie e disso, ele impede a oscilao de pesos em vales e picos ca Funo de ativao ca ca Processa os est mulos ponderados pelos respectivos pesos (sinapses) e mede o estado de ativao para o neurnio. ca o

28

Segundo Tafner, Xerez e Rodrigues Filho (1996, p. 59), a funo de ativao uma ca ca e funo de ordem interna, cuja atribuio fazer acontecer um n ca ca e vel de ativao ca dentro do prprio neurnio, ou seja, uma deciso tomada pelo neurnio sobre o o o e a o que fazer com o valor resultante do somatrio das entradas ponderadas. o Neste trabalho usada a tangente hiperblica como funo de ativao, mapeando e o ca ca a entrada dos neurnios no intervalo de [-1, +1]. o

Figura 9: Exemplo de uma tangente hiperblica o Inicializao dos pesos ca Aqui necessrio ter cuidado com a escolha dos valores iniciais, pois dependo dos e a valores a rede pode at no conseguir aprender. Se os valores forem muito grandes e a provvel que os neurnios da rede sejam levados a saturao. Como no sabemos e a o ca a quais so os valores ideais, opta-se por valores aleatrios e pequenos. a o Silva e Costa (2002) diz que, frequentemente um intervalo [-a, +a] onde tipicamente 0, 1 < a < 2. Claro que isto no resolve totalmente o problema, e muitas vezes pode a ser necessrio iniciar o treinamento novamente, com outros pesos. a Modelagem da Rede neural A modelagem exige uma ateno em relao: ca ca Limpeza dos dados - para que no tenha-se dados incorretos, dados ausentes e a inconsistncia; e

29

A seleo dos dados - que tem como objetivo a diminuio do tamanho da ca ca rede, e consequentemente, acelerar o aprendizado e melhorar a generalizao ca da rede; O pr-processamente divido em: e e Combinao de atributos - razo, produto soma ou diferena de 2 valores; ca a c Escalonamento - linear ou no-linear (logar a tmico); Normalizao de vetores - dividindo o vetor pela norma, dividindo o vetor ca pela soma ou dividindo pelo mximo. a A representao dos dados - deve ser feita em funo do conjunto de dados. ca ca Topologia da rede neural Aqui dene-se o nmero de camadas escondidas e o nmero de neurnios em cada u u o uma dessas camadas, e depende diretamente da aplicao e utilizao da rede. ca ca No momento, de denir a topologia da rede neural, importante observar o come promisso entre convergncia e generalizao. e ca A convergncia a capacidade de uma RNA de aprender todos os padres do cone e o junto de treinamento. A capacidade de generalizao de uma RNA inuenciada ca e pelo tamanho, a ecincia do conjunto de treinamento e a arquitetura da rede. e Critrio de parada e Considera-se que o algoritmo de retropropagao tenha convergido quando a taxa ca absoluta de variao do MSE por poca for sucientemente pequena. Esta taxa ca e de variao tipicamente considerada sucientemente pequena se ela se encontrar ca e no intervalo de 0, 1 a 1 por cento, por poca. Outro critrio de parada limitar o e e e nmero mximo de iteraes. (SILVA; COSTA, 2002) u a co Analisando os fatores que inuenciam no treinamento da rede neural, vemos que todos estes fatores so de extrema importncia no momento do treinamento da rede, e o que a a se espera de uma rede bem treinada que ela aprenda o suciente sobre o passado para e generalizar o futuro. No entanto o aprendizado de uma rede atravs do algoritmo de treinamento de retroe propagao, uma soluo muito atraente e eciente, logicamente, desde que esta tcnica ca e ca e seja bem utilizada, podendo resolver vrios problema que na computao tradicional a ca torna-se inecaz.

30

2.4

Estado da arte

E encontrado na literatura um nmero elevado de publicaes na rea de redes neurais u co a articiais, a maioria dos autores levam em considerao a anlise do treinamento em suas ca a aplicaes. No entato, citamos duas redes nas quaia foram realizadas diversas simulaes co co e analisados os resultados. Podem ser citados:

2.4.1

Anlise do treinamento de uma rede neural para modelaa gem de sistemas dinmicos a

O objetivo deste trabalho caracterizar procedimentos de treinamento de uma rede e neural na modelagem de sistemas dinmicos. E utilizada uma rede recorrente com 3 a camadas, com apenas 1 camada intermediria, e o treinamento feito pelo algoritmo de a retropropagao. A proposta controlar o n de um tanque, atuando-se na vazo de ca e vel a entrada, considerando-se a vlvula de sa para o uxo, sempre aberta. Neste trabalho a da o foco da anlise foi a inuncia dos pesos iniciais assim como do conjunto de dados a e para treinamento. A inicializao dos pesos foi aleatria e mantida constante para os 12 ca o conjuntos de treinamento, o resultado obtido demostrou expl citamente a importncia do a vetor de treinamento assim como a inicilizao dos pesos, permitindo a minimizao do ca ca erro mdio quadrtico a valores aceitveis. Vrias simulaes foram feitas, obtendo bons e a a a co resultados, e o melhor foi obtido com 50 per odos, onde o modelo se aproximou muito bem a planta proposta. O resultado das simulaes mostrou claramente a capacidade de co uma rede neural recursiva, de modelar sistemas dinmicos no lineares. (SCHNITMAN; a a
FONTES, )

2.4.2

Aplicao de redes neurais no processamento digital de ca imagens

Neste trabalho, o autor usou uma percetron7 multicamadas para a aplicao de comca presso de imagens em tons de cinza com o aprendizado de retropropagao. Para o a ca treinamento desta rede a imagem foi dividida em janelas quadradas de KxK pixels que funciona da seguinte forma: os ajustes dos pesos feito para todas as janelas da imagem. e A janela introduzida e um pequeno ajuste feito em funo desta janela. Na seqncia, e e ca ue uma janela apresentada e um novo ajuste feito. Este passo repetido para um srie de e e e e imagens. Percorrida a srie uma vez a seqncia reiniciada. Uma srie de imagens deve e ue e e
7

Uma percetron um tipo espec e co de redes diretas.

31

ser aprensentada ` rede, de modo que ao nal do treinamento a rede tenha aprendido a a reproduzir uma sa igual ` entrada para uma determinada classe de imagens. A funo da a ca de ativao usada foi a funo exponencial. O autor concluiu que a rede funcionou bem ca ca para imagens em tons de cinza, tanto a n de inspeo visual das imagens descomprivel ca midas, quanto a n de sinal/ru vel do. O processo de treinamento desta rede foi exaustivo e consumiu vrias horas de processamento. (PUJOL, 1994) a

32

Compresso de imagens usando a uma RNA

Para entender como funciona o processo de compresso de imagens usando RNA a e necessrio entender o que uma imagem digital, o processo de obteno das imagens a e ca e de como apresenta-las a RNA. E necessrio tambm compreender quais so os dados a e a relevantes de uma imagem digital. A RNA utilizada para a anlise proposta, foi criada por a
SCHWENGBER em seu trabalho de mestrado. As imagens e a normalizao tambm foram ca e

feitas por ele, mas todo esse processo descrito a seguir para uma melhor compreenso. e a

3.1

O que uma imagem digital e

Uma imagem digital nada mais do que uma matriz de pontos. Cada ponto de uma e imagem digital chamado de pixel (PICture ELement).(PUJOL, 1994) Assim, pode-se e dizer que a dimenso de uma imagem digital sua largura e altura em pixels. Se a imagem a e for em escala de cinza, cada pixel ter uma intensidade. Sendo a imagem colorida, cada a pixel conter a informao referente a sua cor. a ca Em imagens digitais emprega-se o termo profundidade de cores que dene a quantidade de cores usada na imagem. Uma imagem com profundidade de 8 bits pode utilizar at 256 cores (28 ). Para 16 bits, 65536 cores. e Para imagens coloridas, existe o modelo RGB (Red, Green, Blue) expressando a intensidade dessas trs cores primrias, vermelho, verde e azul.(LOPES, ) e a

3.2

Obtendo as imagens

As imagens utilizadas so de tomograa computadorizada e encontradas originalmente a no padro DICOM. O DICOM um padro para o armazenamento de imagens mdicas. a e a e

33

Uma tomograa uma seqncia de fotos que exploram uma determinada rea do e ue a corpo. O tomgrafo faz a leitura como um scanner tridimencional, gerando imagens o em cortes ou fatias. Estas imagens so armazenadas em disco e gerenciadas atravs do a e protocolo DICOM. Um arquivo DICOM , ento, um conjunto de imagens, contendo tambm informaes e a e co descritivas como, nome do paciente, do mdico, tipo da tomograa e outros. e

Figura 10: Tomograa da coluna lombar


Fonte: Schwengber (2003)

As imagens originais tem a dimenso de 512x512 pixels e so de uma tomograa de coa a luna lombar (veja a gura 10). Essas seqncias geralmente constituem-se de um nmero ue u aproximado de 60 a 110 imagens, e so imagens muito semelhantes devido seqncia em a ue que so obtidas. Foram utilizadas 67 imagens de tomograa da coluna lombar para treia namento e testes da RNA, sendo 60 para treinamento e 7 para os testes. As 7 imagens para testes foram escolhidas aleatoriamente. (SCHWENGBER, 2003, p. 111)

3.3

Normalizao ca

As imagens precisam passar por um processo de normalizao que prepara as imagens ca para serem apresentadas a rede. Em primeiro lugar elas esto armazenadas dentro do a arquivo DICOM, assim elas precisaram ser extra das. Para isso, utilizou-se um software denominado FP Image e que pode ser encontrado em http://www.fpimage.com. Foram salvas em fomato BMP com profundidade de cor de 8 bits e com a mesma resoluo em ca que se encontravam no arquivo DICOM (512x512 pixels).

34

Para representar as imagens para e RNA necessrio a criao de uma matriz ree a ca presentativa dos valores dos pixels. Porm as imagens com o tamanho de 512x512 pixels e geraria uma matriz de 262144 posies. Sendo assim, a RNA teria que ter essa quantidade co de neurnios de entrada. No h meios computacionais para tal carga de processamento. o a a Alm do que, estamos simulando o comportamento paralelo de uma rede neural em come putadores convencionais. O que implicaria em um tempo altamente elevado para o treinamento e teste da RNA. (TAFNER; XEREZ; RODRIGUES FILHO, 1996) (SCHWENGBER, 2003, p. 115) Com isso, as imagens foram redimencionadas para 15x15 pixels atravs de um proe grama feito no prprio MatLab (veja cap o tulo 4). Este programa, faz uso de um conjunto de ferramentas de manipulao de imagens presente no MatLab. A listagem do programa ca est listada no anexo ?? a O passo seguinte consiste em construir os conjuntos de treinamento e teste na forma de matriz, como dito anteriormente, fazendo com que as informaes sejam adequadas co para a entrada na RNA. Uma imagem de 15x15 resultaria em uma matriz com o mesmo tamanho. Cada uma das posies da matriz representaria o valor de um pixel da imagem. co Com tudo, precisamos apresentar as 60 imagens, do conjunto de treinamento, ` RNA. a Cada uma das 60 imagens possui no total 225 valores de pixels (15x15), estes valores precisam ser organizados em uma matriz de 225x1 que ir compor uma matriz de 225x60 a que representa todos os valores das 60 imagens para serem apresentadas ` RNA. O mesmo a processo feito com as 7 imagens do conjunto de testes, resultando em uma matriz de e 225x7. O prximo passo a normalizao prpriamente dita, pois os valores de representao o e ca o ca dos pixels que esto nas matrizes de treinamento e teste so valores entre 0 e 255. Estes a a precisam ser convertidos em valores entre 1e1.

3.4

Compresso a

A compresso da RNA est baseada na utilizao de uma camada interna que contm a a ca e um nmero menor de neurnios que as camadas de entrada e sa u o da. Assim, se um nmero u menor de neurnios pode representar uma matriz maior (que a camada de entrada), temo e se a compresso, ou seja a diminuio da representao dos valores pictoriais da imagem. a ca ca A RNA tem 225 neurnios na camada de entrada conectados a camada intermediria o a que possui 45 neurnios (correspondendo a 20% do nmero de entrada, gerando uma o u

35

compresso de 80% na rede), tal nmero representa a taxa de compresso. E a camada a u a de sa contm 225 neurnios, pois a sa igual a entrada. da e o da e

36

A ferramenta Matlab

Algo s impossvel at que algum duvide e acabe provando o contrrio e o e e a Albert Einstein O MATLAB (Matrix Laboratory) uma linguagem de programao e uma ferramenta e ca de clculo, sendo tambm utilizada para visualizao de alta performance. A ferramenta a e ca permite implementar e resolver problemas matemticos muito mais rpida e ecientemente a a que atravs de outras linguagens como C, Basic, Pascal ou Fortran. e O MATLAB possui uma fam de aplicativos espec lia cos, chamadas de toolboxes (caixa de ferramenta), que so colees de funes usadas para resolver determinados a co co problemas tais como: otimizao, manipulao algbrica, redes neurais, processamento ca ca e de sinais, processamento de imagens, simulao de sistemas dinmicos, entre outros. ca a Provalvelmente, a caracter stica mais importante do MATLAB a sua extensibilidade, e que permite que engenheiros, matemticos cientistas, ou qualquer um, contribuam para a o enriquecimento. Todos os programas so abertos; isto , o algoritmo usado na soluo de um problema a e ca conhecido e pode ser modicado. Este fato , talvez, a maior virtude do MATLAB pois e e possibilitou que fossem preparados vrios aplicativos, os toolboxes, usando a plataforma a MATLAB como base. Enquanto que o programa principal do MATLAB depende da plataforma (Unix, Windows, Macintosh) os arquivos .m, que constituem os aplicativos, so independentes da a plataforma e podem ser facilmente convertidos de uma plataforma para a outra. A interface do MATLAB contitu pelo workspace, janela de histrico,e pelo e da o prompt de comando. No workspace, ` medida que os comandos so introduzidos e as variveis denidas, a a a estes so guardados no workspace, podendo ser acessados quando necessrio. Ao sair a a do MATLAB (atravs do comando quit ou exit) todas as variveis do workspace so e a a

37

Figura 11: Tela principal do MATLAB perdidas, a menos que sejam guardadas com o comando save. Digitando save, todas as variveis so salvas em um arquivo chamado matlab.mat. a a No prompt de comando, quando inciado o matlab, o s e mbolo >> aparece na tela. Este s mbolo indica que pode-se iniciar inserindo comandos.

4.1

Neural Networks Toolbox

E uma biblioteca espec ca de funes e programas, que permite a criao, treinamento co ca e simulao de RNAs. ca H duas formas de utilizar redes neurais no MATLAB, pode ser via linha de comando, a em m-le vide gura 12 ou via interface grca(NNTooL) vide gura13. a Veremos agora alguns comandos e funes do Neural Networks Toolbox: co Criar uma rede: usa se o comando net.

38

Figura 12: Tela do m-le Exemplo: new = new([-1 2;0 5],[3,1]tansig,tansig,traingdx); onde: net = objeto rede New = cria uma rede direta com aprendizado de retropropagao ca [-1 2;0 5 ]= valores e nmeros de vetores da matriz de entrada u [3,1 ]= nmero de neurnios da camada intermediria e nmero de neurnios da u o a u o sa da tansig,tansig = funo de transferncia tangente hiperblica ca e o traingdx = funao de treinamento, que atualiza os valores dos pesos e bias auc tomaticamente e permite adaptar parmentros, como constante momentum e a taxa de aprendizado.

39

Figura 13: Tela da interface grca (NNTool) a Funo para simulao da rede: sim() ca ca Exemplo: X = sim(net, p2); onde: X = acumula o resultado do treinamento p2 = matriz dos elementos de teste da rede. Inicializao dos pesos e bias, o comando para criar os valores INIT. Para que a ca e rede possa ser inicializada usa-se: net = init(net); Para efetuar o treinamento o comando usado : e [net, tr] = train(net, p, t);

40

Onde: net = a rede tr = registro de treinamento train = funao treinamento c p = matriz de entrada t = matriz de sa da Prevendo a generalizao que conhecido como overtraining, existem dois comanca e dos para evitar esta situao: ca Regularization Early Stopping A funo imread, l a imagem do disco e gera a matriz conforme suas dimenses. ca e o Exemplo: imagem=imread(C:\WINDOWS\Desktop\simulacao\matriz_treino.mat) onde: imagem = varivel matriz dos elementos a (C:\WINDOWS\Desktop\simulacao\matriz_treino.mat) = caminho do arquivo de imagem no disco Funo imresize()esta funo redimensiona o tamanho da matriz para uma taxa ca ca escolhida. Exemplo: novamtz = imresize(imagem, 0.03); onde: imagem = matriz original 0.03 = taxa de dimenso escolhida a Funao imwrite() usada para gravar novamente no disco a matriz. c e Exemplo: imwrite(novamtz,(C:\WINDOWS\Desktop\simulacao\IM_01.bmp) onde:

41

novamtz = matriz de 15x15 j redimensionada a IM_01.bmp = arquivo BMP gravado no disco Funo reshape() usada para manipulao de matrizes. Neste caso, para colocar ca e ca e uma imagem em uma matriz de 225x1. Funo premnmx() usada para normalizao de vetores da matriz para valores ca e ca entre 1 e 1.

42

Anlise do treinamento a

Seria possvel descrever tudo cienticamente, mas isso no faria sentido. Era como a descrever uma sinfonia de Beethoven como uma variao de comprimento de onda. ca Albert Einstein A RNA usada para a anlise possui a seguinte arquitetura: a Neurnios da camada de entrada: 225; o Neurnios da camada intermediria: 45; o a Neurnios da camada de sa o da: 225 Funo de ativao: tangente hiperblica. ca ca o A anlise feita baseada nos grcos extra a e a dos no MATLAB e na literatura dispon vel. A anlise leva em considerao a relao entre o erro mdio quadrtico (MSE) e a ca ca e a a quantidade de pocas, que reete diretamente no tempo de processamento. e Para analisarmos a performance da rede, levando em considerao as diferentes e ca conguraes dos parmetros. So eles: co a a Quantidade de pocas: o conjunto de treinamento possui 60 imagens, que so mose a tradas uma a uma ` RNA. Aps mostradas as 60 imagens a rede, conclui-se uma a o poca, isto , aps todo o conjunto de treinamento (as 60 imagens) ser apresentado e e o a rede equivale a uma poca. e Taxa de aprendizado (): so utilizados valores dentro de um intervalo conforme a a literatura, e estes valores so alterados empiricamente. a Termo momentum: este valor incluso para auxiliar o aprendizado, os valores cam e num intervalo sugerido pela literatura.

43

Soma do erro mdio quadrtico: estipulado um valor pequeno para o critrio de e a e e convergncia. e ` E necessrio estabelecer um critrio de convergncia, ou seja, denir a situao para a e e ca a qual se considera que a rede convergiu. A forma mais direta de estabelecer este critrio, e denir um limite mximo para o erro produzido. e a Na anlise avaliada empiricamente a inuncia do fator de aprendizado na ecincia a e e e do treinamento, para isto, so executadas varias sesses de treinamento, enquanto o a o parmetro MSE mantido constante. Outro aspecto a ser analisado o comportamento a e e dos erros durante o treinamento. Antes de iniciar o treinamento gerado o grco da gura ??. A simulao consiste e a ca em apresentar uma imagem a entrada da RNA e ler os valores correspondentes da sa da da RNA. Observa-se no grco a imagem original na forma de uma linha diagonal reprea sentada pelos pontos vermelhos. Os pontos vermelhos so gerados a partir da plotagem1 a dos valores dos pixels, repetindo os valores de X para Y, gerando a diagonal. A imagem simulada na RNA (valores coletados na sa da) antes do treino representado pelos e trigulos azuis, onde o eixo X representa os valores da imagem original e o eixo Y da a imagem simulada. No grco estes pixels esto representados na forma normalizada, ou a a seja, com valores entre -1 e 1.

Figura 14: Comparao da imagem original com sua simulao antes do treinamento ca ca
1

Plotagem - criar uma imagem criando uma srie de linhas, ou seja, gerar o grco e a

44

5.1

Treinamentos e testes

Em todos os treinamento sero usados os parmetros xos, que so os seguintes: a a a Matriz de treinamento: 225x60; Matriz de teste: 225x7 Soma do erro mdio qudratico (MSE) = 0.0001 e a Os valores para foram escolhidos aleatoriamento dentro de um intervalo sugerido pela literatura.

5.1.1

Treinamento com 100 pocas e

Inicia-se o primeiro treinamento e teste com os seguintes parmentros: a = 0.01; Termo momentum = 0.01;

Figura 15: MSE para 100 pocas com = 0, 01 e O grco da gura 15 demostra que conforme apresentamos as imagens a RNA o erro a diminui, convergindo em direo ao erro desejado. Mas indica tambm que falta muito ca e

45

para atingir o objetivo que o erro de 0.0001 estipulado. O tempo de processamento e necessrio para este treinamento e teste foi de 12 minutos. a

Figura 16: Comparao da imagem original com sua simulao aps 100 pocas e ca ca o e = 0, 01 Atravs da comparao entre o grco da gura 16, e o grco da gura 14, nota-se e ca a a uma vis aproximao entre a imagem simulado e a imagem original. vel ca Segue os parmetros para o novo treinamento: a = 0.2; Termo momentum = 0.2;

46

Figura 17: MSE para 100 pocas com = 0, 2 e Nesta segunda situao, vis no grco da gura 17, observamos um avano consica vel a c dervel em relao a gura 15. Visto que aumentou-se o tamanho do passo de aprendizado, a ca a rede convergiu muito mais em menos tempo de processamento (10 min.). Verica-se novamente um avano devido ao aumento da . c

47

Figura 18: Comparao da imagem original com sua simulao aps 100 pocas e ca ca o e = 0, 2 Para esta nova sesso de treinamento tem-se a seguinte congurao da RNA: a ca = 0.75; Termo momentum = 0.75;

48

Figura 19: MSE para 100 pocas com = 0, 75 e Comparando com o grco da gura ?? observa-se que a diferena praticamente a c e impercept vel. Tempo de processamento consumiu 11 minutos. O mesmo acontece com o grco da gura 20. a

49

Figura 20: Comparao da imagem original com sua simulao aps 100 pocas e ca ca o e = 0, 75 Para esta nova sesso de treinamento tem-se a seguinte congurao da RNA: a ca = 0.8; Termo momentum = 0.8;

50

Figura 21: MSE para 100 pocas com = 0, 8 e No grco da gura 21, nota-se apenas um aumento na diferena entre o treinamento a c e teste em relao ao grco da gura 19, isto indica que houve uma convergencia ainda ca a maior. O tempo de processamento se manteve igual (11 minutos)

51

Figura 22: Comparao da imagem original com sua simulao aps 100 pocas e ca ca o e = 0, 8 Como era esperado h um condensamento maior dos tringulos azuis em direo a a a ca diagonal vermelha. No foram feitos mais treinamentos com = 0, 01 pois o avano se d muito lentaa c a mente.

52

5.1.2

Treinamento com 300 pocas e

A seguir, uma nova seo de treinamentos: ca = 0.2; Termo momentum = 0.2;

Figura 23: MSE para 300 pocas com = 0, 2 e Vericamos neste grco da gura 23 que apartir da poca 100 (que onde termina o a e e grco da gura 17) h um vis decrscimo da taxa de erro, indicando que o treinamento a a vel e continua convergindo. Este treinamento consumiu 33 minutos de processamento.

53

Figura 24: Comparao da imagem original com sua simulao aps 300 pocas e ca ca o e = 0, 2 Observando o grco da gura 24 nota-se uma variao menor em relao aos treinaa ca ca mentos anteriores. A seguir, uma nova sesso de treinamento: a = 0.75; Termo momentum = 0.75;

54

Figura 25: MSE para 300 pocas com = 0, 75 e A evoluo entre o grco da gura ?? com este grco, ambos com 300 pocas, ca a a e e notadamente maior do que a evoluo ocorrida entre os grcos da guras ?? e 19, com ca a 100 pocas. Nesta situao, o aumento do (taxa de aprendizado) causou uma alterao e ca ca mais acentuada no MSE, com 300 pocas do que com 100 pocas. e e Vendo o grco da gura 25, observa-se tambm que h signicativa reduo do MSE a e a ca em 300 pocas, como prev a teoria. Quanto maior a (taxa de aprendizado), maior a e e e reduo do MSE. Como o objetivo de reduzir o MSE, isso esta sendo alcanado com o ca e c mtodo de treinamento e teste de interpolao das imagens na rede. e ca

55

Isto visto tambm no grco da gura 26. Observa-se a caminhadados tringulos e e a a azuis em direo ao pontos vermelhos. ca

Figura 26: Comparao da imagem original com sua simulao aps 300 pocas e ca ca o e = 0, 75 A seguir, uma nova sesso de treinamento: a = 0.8; Termo momentum = 0.8;

56

Figura 27: MSE para 300 pocas com = 0, 8 e Pode-se disser que a diferena entre os grcos das guras 27 e ?? bastante sutil. c a e Outra diferena vista foi o tempo de processamento, que passou de 34 minutos para 37 c minutos.

57

A diferena sutil foi notada tambm no grco da gura 28. c e a

Figura 28: Comparao da imagem original com sua simulao aps 300 pocas e ca ca o e = 0, 8

5.1.3

Treinamento com 1000 pocas e

Com base nos treinamentos anteriores, s foi efetuado o treinamento de 1000 pocas o e com a taxa de aprendizado de 0,8. No foi necessrio efetuar treinamentos de 1000 pocas a a e com as taxas de aprendizado menores que 0,8, devido a continua convergncia vericada e com esta taxa de aprendizado.

58

Figura 29: MSE para 1000 pocas com = 0, 8 e No grco da gura 29, observamos que o MSE se torna praticamente estvel, mas a a ainda em direo a convergncia. ca e Conclui-se como isto, que no necessrio treinar a rede com mais pocas, pelo fato a e a e de que a rede no tem o objetivo de memorizar os dados e sim modelar o processo gerador a desses dados. Em comparao aos demais treinamentos, o grco da gura 30 demonstra uma proca a ximidade muito mais acentuada entre a gura simulada e sua original.

59

Figura 30: Comparao da imagem original com sua simulao aps 1000 pocas e ca ca o e = 0, 8

60

Concluso a

Neste trabalho, foi demonstrado o potecial das redes neurais em atingir o objetivo da compresso, o que justica futuros trabalhos nesta rea. Ficou claro com este trabalho a a que a importncia das redes neurais, esta na sua habilidade de aprender. E o aprendizado a ocorreu quando a rede atingiu uma soluo generalizada, para o conjunto de imagens ca apresentada. Para entender o funcionamento de uma RNA foi preciso buscar conhecimentos sobre as redes biolgicas, pois seu funcionamento muito importante no entendimento das o e RNAs. Houve um pouco de diculdade inicialmente mas aps muito estudo foi superado o a diculdade, trazendo um bom entendimento. A ferramenta MATLAB mostrou-se muito eciente para a execuo dos testes e sica mulaes, fornecendo informaes para a anlise. Houveram algumas diculdades iniciais co co a em virtude da quantidade de recursos que a ferramenta possui. Conclui-se que o treinamento excessivo no recomendado, visto que a RNA no a e a necessita memorizar os dados e sim modelar o processo gerador desses dados. O objetivo da RNA no a perfeio, assim, a compresso sempre ser uma coma e ca a a presso com perdas, visto que, o objetivo da RNA trabalhar com dados imprecisos ou a e incompletos. Ao longo do desenvolvimento deste trabalho foram realizados vrios treinamentos a visando chegar ` melhor congurao de rede neural para o problema de compresso de a ca a imagens. Das simulaoes podemos tirar as seguintes concluses: c o Quanto menor a taxa de aprendizado, mais lenta a convergncia do algoritmo, o que e e e previsto pela teoria. E quanto maior a taxa de aprendizado, mais rpida e a convergncia. a e Tendo em vista que no conjunto de teste no so as mesmas imagens usadas no a a treinamento, conclui-se que a rede aprende a reconhecer um conjunto de imagens e seus

61

aspectos semelhantes. Se aumentar o nmero de neurnios na camada intermediria, a rede faria menor u o a compresso, porm, necessitaria de menos treinamentos para aprender. Isto implica no a e aumento do processamento necessrio para o treinamento o que exigiria um equipamento a com maior capacidade.

6.1

Recomendaes co

A pesquisa desenvolvida neste trabalho um passo importante para vericar a ecincia e e das redes neurais quanto a generalizao. Podemos citar como passo futuros: ca A necessidade de mais experincias com outros tipos de imagens. Melhoramento da e rede para compresso de imagens coloridas. Aumentar a rede, para processar imagens a maiores, lgico que para isto vai precisar um equipamento de maior potencial de proo cessamento para treina-la. Melhoramentos para a utilizao na prtica da rede para ca a compresso de imagens. a

62

Referncias e
ABRAHART, Robert J.; SEE, Linda. Neural network vs. arma modelling: constructing benchmark case studies of river ow prediction. Dispon vel em: <http://www.geocomputation.org/1998/05/gc_05.htm>. Acesso em: 29 de jan de 2004. BARRETO, Jorge Muniz. Inteligncia articial no limiar do sculo XXI. e e Florianpolis: J.M.Barreto, 1997. o DALBEM, Pablo. Redes neurais articiais. 2003. Dispon vel em: <http: //geocities.yahoo.com.br/pablo_dalbem/>. Acesso em: 26 de Set de 2003. LAUER JUNIOR, William. Redes neurais. Dispon vel em: <http://www. williamlauer.hpg.ig.com.br>. Acesso em: 26 de Set de 2003. LOPES, J. M. Brisson. Computao grca. Blumenau: EKO. Dispon em: ca a vel <http://mega.st.utl.pt/~ic-cg/programa/livro/FormatosdeImagem.pdf>. Acesso em: 10 de Nov de 2003. MOREIRA, Fabiano Cordeiro. Reconhecimento e classicao de padres de ca o imagens de n cleos de linfcitos do sangue perifco humano com a utilizao u o e ca de redes neurais articiais. Dissertao (Mestrado) Universidade Federal de Santa ca Catarina, Programa de Ps-graduao em Cincia da Computao, Florianpolis, 2002. o ca e ca o NISHIDA, Waleska. Uma rede neural articial para classicao de imagens ca multiespectrais de sensoriamento remoto. Dissertao (Mestrado) Universidade ca Federal de Santa Catarina, Programa de Ps-graduao em engenharia da produo, o ca ca Florianpolis, 1998. o PUJOL, Joo Carlos Figueira. Aplicao de redes neuronais no processamento a ca digital de imagens. Dissertao (Mestrado) Universidade Federal de Minas Gerais, ca Instituto de Cincias Exatas, Departamento de Cincia da Computao, Belo Horizonte, e e ca 1994. SCHNITMAN, Leizer; FONTES, Adhemar de Barros. Anlise do treinamento de a uma rede neural para modelagem de sistemas dinmicos. Universidade Federal a da Bahia - Departamento de Engenharia Eltrica. e SCHWENGBER, Alexandre. Compresso de imagens mdicas com redes neurais. a e Dissertao (Mestrado) Universidade Federal de Santa Catarina, Departamento ca de Informtica e de Estat a stica, Curso de Mestrado em Cincia da Computao, e ca Florianpolis, 2003. o

63

SILVA, Robson Rocha da; COSTA, Walter Coelho da. Ambiente de simulao em ca Redes Neurais. 2002. Projeto de graduao, Universidade do Estado do Rio de Janeiro. ca Dispon em: <http://www.ica.ele.puc-rio.br/cursos/download/RN-SAN.zip>. vel Acesso em: 10 de Nov de 2003. TAFNER, Malcon Anderson. As redes neurais articiais: aprendizado e plasticidade. Crebro e mente, So Paulo, n. 005, mar 1998. Dispon e a vel em: <http: //www.epub.org.br/cm/n05/tecnologia/rna.htm>. Acesso em: 26 de Set de 2003. TAFNER, Malcon A.; XEREZ, Marcos de; RODRIGUES FILHO, Ilson W. Redes neurais articiais: introduo e princ ca pios de neurocomputao. Blumenau: ca EKO, 1996. TATIBANA, Cassia Yuri; KAETSU, Deisi Yuki. Redes neurais. Dispon em: vel <http://www.din.uem.br/ia/neurais/>. Acesso em: 26 de Set de 2003.

64

Anexos
Anexo A - Programa que converte imagens em matrizes para entrada na rede, arquitetura da rede
load(C:\simulacao\matriz_treino.mat); % carrega a matriz de treinamento load(C:\simulacao\matriz_teste.mat); P = matriztreino(1:225,1); T =P; %ranges entre -1 e 1 para criar a rede neural pr = minmax(P); pr(:,1)=-1; pr(:,2)= 1; net = newff(pr,[45,225],{tansig,tansig},traingdx); net.trainParam.goal = 0.0001; net.trainParam.show = NaN; net.trainParam.epochs = 1; net.trainParam.mc = 0.8; net.trainParam.lr = 0.8; % Soma do erro quadratico desejavel % Mostra grafico em N epocas. % Numero de epocas. % Constante do Momento % Taxa de aprendizado % carrega a matriz de testes

65

Anexo B - Programa Simulao da rede ca


P = matrizteste(1:225,6); T = P; resultado = sim(net,P); pospro = postmnmx(resultado,0,241); plot(T,T,r.,P,resultado,>); legend(Imagem Original,Imagem Simulada 1000 epocas); xlabel(Valores Pixeis); ylabel(Valores Pixeis); title(Momento 0.8 aprendizado 0.8); a = reshape(pospro,15,15); nova = round(a); b = postmnmx(P,0,241); c = reshape(b,15,15); velha = round(c); novaok = MAT2GRAY(nova); velhaok = MAT2GRAY(velha);

66

Anexo C - Contrucao do conjunto de teste e treinamento


mtztam = 225; %tamanho da matriz

camori = C:\simulacao\IM_; %path para origem imganes matriztreino = zeros(225,60); cont = 0; for arqnr = 1:60 cont = cont+1; arqnr = num2str(arqnr); imagem = imread(strcat(camori,arqnr,.bmp)); imatemp = reshape(imagem,mtztam,1); arqnr = str2num(arqnr); matriztemp = imatemp; a = double(matriztemp); P = premnmx(a); matriztreino(1:225,cont) = P; end save(C:\simulacao\matriz_treino.mat,matriztreino);

67

Anexo D - Programa para treinamento da rede


echo off for vezes = 1:1000 %valor = randperm(60); for nr = 1:60 %ngr = T =P; [net, tr] = train(net,P,T); treino_erro(nr) = tr.perf(2); %saida = sim(net,P); %erroatual = saida - P; %simulac_erro(vezes) = mse(erroatual); end treino(vezes) = (sum(treino_erro))/60; %total = (sum(treino_erro))/60; %tg(vezes) = total; vezes for testecont = 1:7 saida = sim(net,(matrizteste(1:225,testecont))); sai(testecont) = mse(saida - (matrizteste(1:225,testecont))); end sai_fim = sum(sai)/7; sai_final_8_8(vezes) = sai_fim; end x = (1:1:1000); %plot(x,tg,o-,x,simulac_erro,*-); plot(x,sai_final_8_8,r-,x,treino,-); legend(treinamento,teste); xlabel(pocas); e ylabel(MSE); %save(c:\rna\resultados\600_0805.mat,net); valor(1,nr); P = matriztreino(1:225,nr);