Reconhecimento automático de caracteres com redes

Transcrição

Reconhecimento automático de caracteres com redes
Universidade de Aveiro
Departamento de Electrónica e de Telecomunicações
Reconhecimento automático de
caracteres com redes neuronais
Executantes: Pedro Kulzer & António Branco
Orientadores: Prof. Dr. Ana Tomé e Prof. Mstr. Armando Pinho
Âmbito:
Projecto de 5º ano
Setembro de 1994
Projecto de 5º ano
Reconhecimento automático de caracteres com
redes neuronais
Pedro Kulzer & António Branco
UNIVERSIDADE DE AVEIRO
Departamento de Electrónica e de Telecomunicações
JUNHO 1994
RESUMO
Neste trabalho pretende-se estudar a implementação de um sistema visual capaz de classificar dígitos
isolados manuscritos, com redes neuronais artificiais. Numa primeira fase, estudámos implementações já
existentes (LeCun, StepNet, OCON, etc.) e realizámos classificações com uma rede OCON (One Class One
Network). Esta rede utilizava a retropropagação do erro e obteve resultados razoáveis, conseguindo-se tirar
conclusões quanto à constituição do conjunto de treino (rotações e nº de padrões). Porém, na fase de
introdução dos campos receptivos em redes de classificação por template (retropropagação e Kohonen
olham para as entradas vectorialmente - os zeros contam como parte do padrão), concluímos que era
necessária uma regra de aprendizagem que, ao contrário das anteriores, origine uma rede sensível a
estímulos (só aos uns) - regra de Hebb. Usando e aplicando as características e resultados da rede
Kohonen (vizinhança e organização), modificando a regra de Hebb com a normalização de pesos, obtivémos
resultados referentes à organização semelhantes aos do Kohonen (muito bons), com uma rede que já fica
sensível apenas a estímulos. O estudo das redes de Kohonen foi de primordial importância.
Durante o estudo de estruturas que utilizavam campos receptivos (LeCun, Cognitron, NeoCognitron),
verificando que estas usavam noções neurofisiológicas (células simples, complexas, etc.) para nós
completamente desconhecidas, para tentar compreendê-las e construir bases sólidas, decidimos efectuar
um estudo alargado e minucioso sobre estas noções. Nesta fase, tentámos analisar e explanar os
pormenores que nos pareciam ser os mais pertinentes para serem englobados num modelo que
pudessemos utilizar para a construção de um córtex visual. Tentámos abranger uma vasta área dentro
desse campo, para assim não negligenciar características neuronais que mais tarde se podem revelar
indispensáveis, mas que não estariam englobadas no modelo nem no nosso conhecimento
(habituação/desabituação necessárias para eliminar misturas de sensibilidades entre padrões nas células
simples, facilitação/inibição lateral entre sinapses para selectividade das células hiper-complexas, ligações
laterais entre neurónios para vizinhança, etc.). Um exemplo desta necessidade é a rede de LeCun (segunda
implementação), em que este sentiu a necessidade de utilizar noções neurofisiológicas extraídas da
estrutura neuronal do córtex visual, para atingir melhores resultados com uma rede com menos graus de
liberdade. Porém, ainda tivémos que acrescentar novos pormenores e modos de funcionamento durante a
fase de desenvolvimento e implementação dos vários módulos do sistema visual artificial (retina, córtex
visual e classificador).
Nesta fase de modelização do sistema visual, efectuámos uma retina e um córtex visual artificiais. Em
todas as implementações utilizámos estruturas não-mínimas que fossem representativas do modelo
biológico, tanto em dimensão como em estrutura morfológica. As estruturas não-mínimas justificam-se pela
necessidade de se evitarem constrangimentos reais ao treino e organização da rede (há mais hipóteses
duma boa organização com maior número de neurónios). O córtex visual conseguiu organizar-se de forma
conveniente. Toda rede possui um funcionamento do tipo das redes STM (Short Term Memory) que
proporciona uma adaptação dinâmica da actividade global desta. Isto vai ajudar a uma capacidade
melhorada de discriminação de features ambíguas ou não nos padrões de entrada, através dum mecanismo
automático de controlo do “ganho” da rede (tipo AGC - Automatic Gain Control).
Numa fase final, implementámos um classificador com a retropropagação do erro. No entanto, não
nos interessava voltar a olhar para as saídas do córtex visual de forma vectorial (os resultados falam por si).
Em vez disso, talvez trabalho futuro possa promover a implementação dum classificador com uma estrutura
funcional semelhante à do ART (Adaptive Resonance Theory de Grossberg), mas que fosse biológicamente
mais plausível (mapas de actividade em vez de grandmother cells) com ligações laterais treinadas de forma
a realizar operações automáticas de rotação, translação e associação, durante a fase de reconhecimento,
em vez da vulgar fase de procura do ART. Com isso, poder-se-ia testar a hipótese dum sistema completo
destes poder aprender a reconhecer correctamente caracteres, com poucos mas bem escolhidos exemplos
de treino. Além deste classificador, ainda se poderia pensar em implementar algum mecanismo semelhante
à geração de saccades para o reconhecimento automático de padrões contidos em grandes áreas.
O relatório está organizado em capítulos autónomos. Para proporcionar um acompanhamento mais
fluente e ligado dos textos e imagens, o texto referente a cada imagem é posicionado junto a esta, além
destes estarem inseridos nos locais exactos a que se referem.
Neste relatório, além de se efectuar um estudo sobre o reconhecimento neuronal de caracteres
manuscritos, pretende-se proporcionar um conjunto de bases sólidas para eventuais trabalhos futuros nesta
área, para assim se poder evitar trabalho de pesquisa desnecessário, procedendo a estudos superiores.
Palavras-chave: Kohonen, Regra de Hebb, Enriquecimento de contraste, STM, Colunas simples, Hiper-colunas, Ligações
laterais de feedback On-center/Off-surround, Chapéu mexicano, Retina, Córtex visual, Orientações, Ângulos, Competição, Features.
CONTEÚDO
CAPÍTULO 1 - Redes neuronais e neurónios
1.1 INTRODUÇÃO ....................................................................................................................................................1-1
1.2 BREVE HISTÓRIA ...............................................................................................................................................1-2
1.3 BASES BIOLÓGICAS E FISIOLÓGICAS...................................................................................................................1-3
1.4 CARACTERÍSTICAS BÁSICAS DE FUNCIONAMENTO .............................................................................................1-3
1.5 EXEMPLOS DE APLICAÇÃO ACTUAL ...................................................................................................................1-4
1.6 MODO DE APRENDIZAGEM ................................................................................................................................1-4
1.7 O FUTURO .........................................................................................................................................................1-5
1.8 ESTRUTURA DO CÉREBRO .................................................................................................................................1-6
1.8.1 Neocórtex ..................................................................................................................................................1-7
1.8.2 Funções cerebrais .....................................................................................................................................1-8
1.8.3 Teorias da memória ..................................................................................................................................1-8
1.8.4 Aspectos essenciais no funcionamento do cérebro ...................................................................................1-9
1.9 O NEURÓNIO .....................................................................................................................................................1-9
1.9.1 Características morfológicas e funcionais..............................................................................................1-10
1.9.1.1 Árvore dendrítica ................................................................................................................................................1-10
1.9.1.2 Sinapses ..............................................................................................................................................................1-11
1.9.1.2.1 A teoria de Donald Hebb para a aprendizagem sináptica.............................................................................1-12
1.9.1.2.2 Outros tipos de sinapses...............................................................................................................................1-14
1.9.1.2.3 Facilitação hetero-sináptica..........................................................................................................................1-14
1.9.1.2.4 Habituação e desabituação ...........................................................................................................................1-15
1.9.1.3 Corpo celular ......................................................................................................................................................1-16
1.9.1.4 Axónio ................................................................................................................................................................1-16
1.9.2 O neurónio como unidade funcional.......................................................................................................1-17
1.9.3 Resultados de investigações mais recentes .............................................................................................1-18
CAPÍTULO 2 - Introdução ao reconhecimento de caracteres
2.1 PORMENORES TEÓRICOS ...................................................................................................................................2-1
2.1.1 Motivação do estudo de reconhecimento de caracteres............................................................................2-1
2.1.2 Classificação dos sistemas de reconhecimento de caracteres ..................................................................2-1
2.1.3 Psicologia da leitura .................................................................................................................................2-2
2.1.4 Optical Character Recognition (OCR)......................................................................................................2-2
2.1.5 Sistemas de reconhecimento de caracteres manuscritos...........................................................................2-3
2.1.6 Reconhecimento de caracteres isolados....................................................................................................2-3
2.2 MÉTODOS DE RECONHECIMENTO DE CARACTERES ISOLADOS COM REDES NEURONAIS .....................................2-3
2.2.1 Definições e figuras de mérito...................................................................................................................2-3
2.2.2 Stepnet.......................................................................................................................................................2-4
2.2.2.1 Análise do Stepnet ................................................................................................................................................2-4
2.2.2.2 Resultados.............................................................................................................................................................2-4
2.2.3 Modelos para padrões invariantes............................................................................................................2-4
2.2.4 Neocognitron.............................................................................................................................................2-5
2.2.4.1 Estudo do modelo .................................................................................................................................................2-5
2.2.4.2 Arquitectura da rede..............................................................................................................................................2-5
2.2.4.3 Construção e treino da rede...................................................................................................................................2-5
2.2.4.4 Resultados e comentários......................................................................................................................................2-6
2.2.5 LeCun ........................................................................................................................................................2-6
2.2.5.1 Features e partilha de pesos ..................................................................................................................................2-6
2.2.5.2 Arquitectura da rede..............................................................................................................................................2-7
2.2.5.3 Resultados.............................................................................................................................................................2-8
2.3 COMBINAÇÃO DE TREINO SUPERVISIONADO E NÃO SUPERVISIONADO ...............................................................2-8
2.3.1 Porquê este método? .................................................................................................................................2-8
2.3.2 Resultados .................................................................................................................................................2-9
2.4 OUTRAS IMPLEMENTAÇÕES E EXPERIÊNCIAS.....................................................................................................2-9
CAPÍTULO 3 - Backprop para o reconhecimento de dígitos
3.1 CLASSIFICAÇÃO COM UMA REDE ACON ...........................................................................................................3-1
3.2 CLASSIFICAÇÃO COM UMA REDE OCON ...........................................................................................................3-1
3.3 EXEMPLO ..........................................................................................................................................................3-3
3.3.1 Conjuntos de treino ...................................................................................................................................3-3
3.3.2 Método de treino e estrutura da rede........................................................................................................3-4
3.3.3 Classificação de padrões de duma só pessoa ...........................................................................................3-4
3.3.3.1 Rede para a classificação do "0" ...........................................................................................................................3-4
3.3.4 Resumo ......................................................................................................................................................3-6
3.4 CONCLUSÕES ....................................................................................................................................................3-7
CAPÍTULO 4 - Estudo das redes de Kohonen
4.1 INTRODUÇÃO ....................................................................................................................................................4-1
4.2 REGRA DE APRENDIZAGEM NÃO SUPERVISIONADA DE KOHONEN ......................................................................4-1
4.2.1 Regra proposta por Kohonen....................................................................................................................4-1
4.2.2 Vizinhança modelizada por uma função tipo "Mexican hat"....................................................................4-2
4.2.3 Decrescimento da constante de aprendizagem ε(t)...................................................................................4-2
4.2.4 Mecanismo de consciência........................................................................................................................4-3
4.2.5 Fases de aprendizagem .............................................................................................................................4-3
4.2.6 Noção de erro............................................................................................................................................4-4
4.2.7 Efeitos especiais ........................................................................................................................................4-4
4.2.7.1 Efeito de amplificação ..........................................................................................................................................4-4
4.2.7.2 Efeito fronteira......................................................................................................................................................4-5
4.2.7.3 Efeito de colapso...................................................................................................................................................4-6
4.2.7.4 Efeito de pinch ......................................................................................................................................................4-6
4.2.7.5 Efeito da focalização.............................................................................................................................................4-6
4.3 TESTES EXPERIMENTAIS ....................................................................................................................................4-6
4.3.1 Exemplo da progressão do treino de um “T” ...........................................................................................4-7
4.3.1.1 Conjunto de treino e parâmetros ...........................................................................................................................4-7
4.3.1.2 Progressão do treino .............................................................................................................................................4-7
4.3.2 Influência da forma da camada e dos padrões de treino ..........................................................................4-9
4.3.2.1 Treino de um “T” com neurónios pertencentes a um plano 8x8 ...........................................................................4-9
4.3.2.2 reino de um “T” com neurónios pertencentes a um plano 16X4.........................................................................4-10
4.3.3 Influência da consciência na aprendizagem ...........................................................................................4-10
4.3.3.1 Treino de um rectângulo usando consciência .....................................................................................................4-10
4.3.4 Estudo da vizinhança ..............................................................................................................................4-11
4.3.4.1 Treino de um “L” com vizinhança grande mas decrescente................................................................................4-11
4.3.4.2 Treino de um “L” com vizinhança fixa baixa......................................................................................................4-11
4.3.4.3 Treino de um “L” com vizinhança fixa elevada ..................................................................................................4-12
4.3.4.4 Treino de um “L” com vizinhança fixa de 2 .......................................................................................................4-12
4.3.5 Estudo da constante de aprendizagem Epsilon.......................................................................................4-12
4.3.5.1 Treino de um “L” com epsilon fixo elevado .......................................................................................................4-13
4.3.5.2 Treino de um “L” com epsilon fixo baixo...........................................................................................................4-13
4.3.6 Estudo do tempo de decrescimento .........................................................................................................4-13
4.3.6.1 Treino de um “L” com um tempo de decrescimento elevado..............................................................................4-13
4.3.6.2 Treino de um “L” com um tempo de decrescimento baixo .................................................................................4-14
4.3.7 Estudo do efeito da densidade de padrões ..............................................................................................4-14
4.3.7.1 Treino de um “L” ................................................................................................................................................4-15
4.3.8 Treino com menos atractores que padrões de treino ..............................................................................4-15
4.3.8.1 Treino do “L”......................................................................................................................................................4-15
4.4 CONCLUSÕES..........................................................................................................................................4-16
CAPÍTULO 5 - Estudo do sistema visual
5.1 INTRODUÇÃO ....................................................................................................................................................5-1
5.2 A RETINA ..........................................................................................................................................................5-1
5.2.1 Anatomia da retina....................................................................................................................................5-2
5.2.1.1 Camadas na via retiniana ......................................................................................................................................5-2
5.2.1.2 Organização funcional ..........................................................................................................................................5-3
5.2.2 Análise da função dos neurónios retinianos .............................................................................................5-4
5.2.2.1 Células da camada nuclear interna ........................................................................................................................5-4
5.2.2.2 Células da camada ganglionar...............................................................................................................................5-5
5.3 MECANISMOS CEREBRAIS DA VISÃO ..................................................................................................................5-7
5.3.1 Caminho até ao cérebro............................................................................................................................5-7
5.3.2 Mapeamento e arquitectura do córtex visual............................................................................................5-8
5.3.3 Propriedades funcionais dos neurónios visuais ........................................................................................5-9
5.3.3.1 Neurónios geniculados..........................................................................................................................................5-9
5.3.3.2 Neurónios corticais ...............................................................................................................................................5-9
5.3.3.2.1 Neurónios simples..........................................................................................................................................5-9
5.3.3.2.2 Neurónios complexos...................................................................................................................................5-11
5.3.3.2.3 Neurónios hiper-complexos .........................................................................................................................5-11
5.3.4 Funções e estrutura do córtex estriado e pré-estriado............................................................................5-12
5.3.4.1 Colunas corticais.................................................................................................................................................5-13
5.3.4.1.1 Plasticidade das colunas...............................................................................................................................5-14
5.3.4.2 Hiper-colunas corticais .......................................................................................................................................5-15
5.3.4.3 Neurónios com grandes campos receptivos ........................................................................................................5-16
5.3.4.4 Outras características ..........................................................................................................................................5-17
5.3.5 Mapas cerebrais......................................................................................................................................5-17
5.3.5.1 Mapas visuais......................................................................................................................................................5-18
5.3.5.2 Propriedades e vantagens dos mapas ..................................................................................................................5-19
5.4 OUTRAS ÁREAS CORTICAIS DE FUNÇÃO VISUAL...............................................................................................5-20
5.5 MOVIMENTOS DO OLHO E PERCEPÇÃO VISUAL ................................................................................................5-21
5.5.1 Introdução...............................................................................................................................................5-21
5.5.2 Plasticidade, memória associativa e de trabalho....................................................................................5-21
5.5.3 Bases para o reconhecimento de padrões...............................................................................................5-22
5.5.4 Stephen Grossberg - Aprendizagem atencional e saccádica ..................................................................5-23
5.5.4.1 Memória de curta duração - STM, e de duração longa - LTM............................................................................5-24
CAPÍTULO 6 - Implementação de um modelo
6.1 INTRODUÇÃO ....................................................................................................................................................6-1
6.2 DIAGRAMA DE BLOCOS .....................................................................................................................................6-2
CAPÍTULO 7 - Retina artificial
7.1 CONSIDERAÇÕES INICIAIS..................................................................................................................................7-1
7.2 FUNCIONAMENTO .............................................................................................................................................7-1
7.3 IMPLEMENTAÇÃO PRÁCTICA .............................................................................................................................7-2
7.3.1 Parâmetros da rede...................................................................................................................................7-2
7.3.2 Resultados .................................................................................................................................................7-3
7.4 COMENTÁRIOS FINAIS .......................................................................................................................................7-5
CAPÍTULO 8 - Córtex visual artificial
8.1 CONSIDERAÇÕES INICIAIS..................................................................................................................................8-1
8.2 FUNCIONAMENTO .............................................................................................................................................8-1
8.3 HIPER-COLUNA PROTÓTIPO ...............................................................................................................................8-2
8.3.1 Implementação práctica............................................................................................................................8-3
8.3.1.1 Camada de neurónios simples...............................................................................................................................8-4
8.3.1.1.1 Parâmetros arquitecturais...............................................................................................................................8-4
8.3.1.1.2 Parâmetros de treino ......................................................................................................................................8-6
8.3.1.1.3 Conjunto de treino .......................................................................................................................................8-10
8.3.1.1.4 Dados do NeuroCAD...................................................................................................................................8-11
8.3.1.1.5 Resultados experimentais.............................................................................................................................8-11
8.3.1.1.5.1.1 Treinos preliminares.......................................................................................................................8-12
8.3.1.1.5.2 Treino definitivo desta primeira camada ...............................................................................................8-13
8.3.1.1.6 Selectividade simples...................................................................................................................................8-15
8.3.1.2 Camada de neurónios complexos........................................................................................................................8-16
8.3.1.2.1 Parâmetros arquitecturais.............................................................................................................................8-16
8.3.1.2.2 Dados do NeuroCAD...................................................................................................................................8-18
8.3.1.2.3 Resultados experimentais.............................................................................................................................8-19
8.4.1.3 Camada de neurónios hiper-complexos ..............................................................................................................8-20
8.4.1.3.1 Parâmetros arquitecturais.............................................................................................................................8-20
8.4.1.3.2 Parâmetros de treino ....................................................................................................................................8-23
8.4.1.3.3 Conjunto de treino .......................................................................................................................................8-23
8.4.1.3.4 Dados do NeuroCAD...................................................................................................................................8-23
8.4.1.3.5 Resultados experimentais.............................................................................................................................8-24
8.4.1.3.5.1.1 Treinos preliminares.......................................................................................................................8-24
8.4.1.3.5.2 Treino definitivo desta terceira camada ................................................................................................8-26
8.4.1.3.6 Selectividade hiper-complexa ......................................................................................................................8-28
8.4.1.4 Camada de saída .................................................................................................................................................8-29
8.4.1.4.1 Parâmetros arquitecturais.............................................................................................................................8-29
8.4.1.4.2 Dados do NeuroCAD...................................................................................................................................8-29
8.4.1.4.3 Resultados experimentais.............................................................................................................................8-30
8.4.2 Aspecto final............................................................................................................................................8-31
8.4.2.1 Estrutura..............................................................................................................................................................8-32
8.4.2.2 Dados do NeuroCAD ..........................................................................................................................................8-32
8.4.3 Testes e verificações finais ......................................................................................................................8-32
8.4.3.1 Padrões desconhecidos .......................................................................................................................................8-32
8.4.3.2 Opaquicidade a contornos indesejados ...............................................................................................................8-33
8.4.3.3 Problemas observados.........................................................................................................................................8-34
8.4.3.3.1 Segmentos curtos que não sobrevivem na invariância da camada complexa ...............................................8-34
8.4.3.3.2 Falta de selectividade na camada hiper-complexa........................................................................................8-34
8.4.3.3.3 Saturação da camada de saída ......................................................................................................................8-36
8.4.3.3.4 Aprendizagem real defeituosa ......................................................................................................................8-36
8.4.3.4 Limitações observadas ........................................................................................................................................8-37
8.4.3.4.1 Segmentos mínimos detectáveis na camada simples ....................................................................................8-37
8.4.3.4.2 Contornos semelhantes e juntos são aglomerados pela camada complexa...................................................8-37
8.4.4 Melhoramentos........................................................................................................................................8-37
8.4.4.1 Limiar adaptativo melhorado ..............................................................................................................................8-38
8.4.4.2 Mecanismos de enriquecimento de contraste e auto-normalização.....................................................................8-38
8.4.4.3 Vizinhança automática........................................................................................................................................8-41
8.4.4.4 Distinção sináptica..............................................................................................................................................8-42
8.4.4.5 Aprendizagem contínua ......................................................................................................................................8-42
8.4.5 Resultados finais .....................................................................................................................................8-43
8.4.6 Comentários e conclusões.......................................................................................................................8-44
8.5 MÚLTIPLAS HIPER-COLUNAS NO NETFLOW .....................................................................................................8-47
8.5.1 Parâmetros arquitecturais ......................................................................................................................8-47
CAPÍTULO 9 - Pós-processamento e Classificação
9.1 INTRODUÇÃO ....................................................................................................................................................9-1
9.2 IDEIAS E TEORIAS ..............................................................................................................................................9-1
9.2.1 Exemplo de capacidade de auto-procura..................................................................................................9-2
9.2.2 Exemplo de associação a um gerador de saccades ..................................................................................9-3
9.3 RESULTADOS PRÁCTICOS ..................................................................................................................................9-3
9.4 FONTES PARA TRABALHO FUTURO ....................................................................................................................9-4
APÊNDICE A - Base de dados dos caracteres
APÊNDICE B - Hardware, programas e bibliotecas
APÊNDICE C - Bibliografia e Referências
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-1
1. Redes neuronais e neurónios
Antes de tudo, vamos aqui apresentar alguns factos relacionados com as redes neuronais. Daremos especial
ênfase aos aspectos detalhados do funcionamento do próprio neurónio.
1.1 Introdução
Redes neuronais, modelos coneccionistas, ou, usando um nome mais recente, sistemas neuromórficos, são
sistemas deliberadamente construídos para fazer uso dos princípios organizacionais que se pensa serem utilizados no
cérebro humano. Compreender o comportamento humano e a construção do cérebro são questões importantes e
interessantes, e o desejo de compreender os sistemas mais complexos da natureza continua a ser a principal fonte de
motivação para as pessoas que trabalham na área das redes neuronais.
Se uma pessoa compreende alguma coisa, então também poderá construir uma máquina para fazê-la. Se se deseja
fazer máquinas que pensem, ajam e se movam como os humanos, então uma boa estratégia inicial é a de estudar a forma
como os humanos pensam, agem e se movem.
Os humanos sempre desejaram construir máquinas inteligentes. Existem histórias sobre robôs, autómatos e
homens mecânicos através dos milénios. Hoje em dia já se possui tecnologia suficientemente avançada que permita a
construção de sistemas com uma complexidade que se aproxima à do número de elementos e interligações existentes no
cérebro. Ao mesmo tempo e no entanto, não sabemos bem como organizar essa complexidade ou que funções utilizar no
seu interior, mesmo que tenhamos conseguido contruir esse sistema. Também não se sabe se basta construir um sistema
com uma estrutura semelhante à do cérebro para se obter um comportamento inteligente, sem certos mecanismos
importantes que ainda possam estar por descobrir.
Desde os anos 80 que a técnica das redes neuronais obteve um enorme incremento. Uma das razões para esse
incremento, é o facto das redes neuronais serem mais parecidas com o modo de funcionamento do cérebro humano no
que respeita à sua concepção geral, do que as convencionais arquitecturas das máquinas de Von Neumann. As redes
neuronais podem, por isso mesmo, ser utilizadas com maior sucesso para simular importantes faculdades humanas tais
como a aprendizagem por exemplos, a generalização para além dos exemplos apresentados, o rápido reconhecimento de
padrões incompletos e complexos, a memorização associativa, o chamamento de informações, etc.
Nós humanos podemos, por exemplo, reconhecer e interpretar complicados sinais de som e imagem, em fracções
de segundo. Conseguimos reconhecer pessoas que já não víamos há muito tempo e que se modificaram muito nesse
tempo, sem qualquer esforço apreciável. Conseguimos reconhecer muitas pessoas apenas pela sua voz, maneira de
andar, movimentos ou outras características. Conseguimos ler livros e perceber as matérias, e conseguimos conversar
com outras pessoas sobre os mais variados temas, aparentemente sem qualquer esforço.
Qualquer sistema computacional convencional seria sobrecarregado se tentassemos que ele executasse tais
coisas, apesar dos computadores actuais serem 1000X mais rápidos do que o nosso cérebro. Onde estará o segredo desta
espantosa potência do cérebro? A chave para a compreensão do modo de funcionamento do cérebro e duma possível
inteligência artificial, não está na rapidez ou precisão das operações que são executadas sobre a informação, mas sim na
natureza altamente paralela do processamento dos dados no cérebro. A chave está, portanto, na estrutura de rede das
fibras nervosas.
O cérebro contém, num peso médio de 1500 grama, até 100 mil milhões de neurónios. Supõem-se que o poder de
cálculo dum único neurónio seja comparável ao de um PC médio (1000 multiplicações e adições de números reais em
10 milisegundos). Já dos 100 mil milhões de neurónios existe uma grande parte activa ao mesmo tempo, comunicando
entre si, surge uma enorme capacidade de processamento que é muito maior que todos os computadores actuais juntos.
1-1
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-2
Apesar de toda esta capacidade de processamento, o nosso cérebro não consegue realizar operações matemáticas
com relativa complexidade, ou então leva minutos para isso (se conseguir realizar das mais simples). Parece que o
cérebro não está optimizado para realizar esse tipo de operações que requerem precisão. O cérebro não é um
computador geral, mas sim um sistema altamente especializado no processamento de dados, cuja estrutura é devida a
muitos anos de evolução. O cérebro foi evoluíndo de forma a melhorar as probabilidades de sobrevivência do homem,
em que interessam operações relacionadas com essa sobrevivência. A resolução de operações matemáticas precisas
nunca foi de importância vital...
A importância da sobrevivência centrava-se sempre na adaptação do organismo às condições do Mundo exterior,
e da tomada de comportamentos adequados. O cérebro vai aprendendo e vai também generalizando a partir dos
resultados já obtidos anteriormente. Assim foram surgindo formas de vida mais ou menos inteligentes, com maior ou
menor capacidade de se adaptarem às condições presentes. Não admira pois, que se tenha vindo a dar uma importância
cada vez maior ao estudo do cérebro, bem como à obtenção e implementação de modelos que simulem estas
característias tão únicas dos sistemas nervosos. Uma forma especial destes modelos, são precisamente as redes
neuronais artificiais. À medida que se vai descobrindo novos pormenores do funcionamento do cérebro, também as
redes neuronais artificiais vão possuindo cada vez mais informação modelizada, de forma a se simular cada vez melhor
certas funções daquele.
1.2 Breve história
Explicações teóricas do cérebro e dos processos de pensamento, já eram tentadas pelo gregos como Plato [427347 AC] e Aristóteles [384-322 AC]. As chamadas máquinas cibernéticas (nas quais estão incluídos os ”computadores
neuronais”) possuem uma história muito mais vasta do que usualmente se imagina.
As investigações iniciaram-se há cerca de 40 anos. No entanto, estas investigações ainda eram postas na sombra
da era do desenvolvimento da inteligência artificial convencional. As redes neuronais também eram denominadas de
sistemas neuronais artificiais, sistemas conneccionistas, computadores neuronais, sistemas adaptativos, processadores
paralelos distribuídos e inteligência natural. Este último nome ressalta o facto de que as redes simulam comportamentos
nervosos biológicos, e que não se baseiam numa execução sequencial ou em regras matemáticas (que é o que acontece
nos sistemas de inteligência artificial convencional).
As primeiras simulações computacionais foram provavelmente realizadas por Edmonds e Minsky [1951]. A
classifiação de padrões foi sempre o problema-base de toda a teoria sobre comportamento inteligente, quer em animais
como também em máquinas. McCulloh & Pitts [1947] insistiam na ideia de que os seres vivos tinham de poder
discriminar entre muitas versões do mesmo padrão.
Rosenblatt [1958], um aluno de Minsky, foi quem implementou o primeiro modelo neuronal funcional: o
Perceptrão. Minsky e Papert [1969] realizaram extensas críticas destrutivas sobre os perceptrões, o que quase aniquilou
trabalhos futuros sobre estas redes.
O que aconteceu nos 25 anos seguintes é difícil de descrever, devido a um relativo abandono do estudo sobre
modelos de redes, devido ao fracasso e abafo dos perceptrões. Algumas pessoas estudaram ainda as redes biológicas,
onde as publicações sobre o sistema visual só por si já chegam às 10,000.
Muitos sistemas neuronais foram desenvolvidos nos anos 60, além dos pioneiros Minsky e Rosenblatt. Quase
todos estes sistemas eram “filtros” que se podiam adaptar aos padrões de sinais que recebiam, de forma a fornecer as
saídas desejadas. Estes sistemas eram denominados sistemas adaptativos. Estes sistemas podem ser modelizados duma
forma estritamente matemática, como por exemplo os filtros de Kalman. Estes modelos são apropriados para serem
implementados em computadores digitais. Já os modelos denominados fisiológicos não foram pensados para correrem
naqueles computadores, mas sim em componentes simples, distribuidos e altamente paralelizáveis. Alguns dos
desenvolvimentos mais importantes neste sentido, são os perceptrões, a rede Adaline e a Matrix de aprendizagem.
Em 1982, vários investigadores como Hopfield, Kohonen e Marr, fizeram estudos e publicações independentes
sobre redes neuronais com funções de memória, de visão, para a cartografia do cérebro.
1-2
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-3
1.3 Bases biológicas e fisiológicas
A globalidade do sistema nervoso possui a capacidade de receber estímulos, de os transmitir e processar. Além
de possibilitar reacções rápidas e adequadas aos estímulos do Mundo exterior, ao mesmo tempo serve para o controlo
das funções internas do organismo, funções essas que são independentes do exterior.
O sistema nervoso humano é constituído por um Sistema nervoso central e por um Sistema nervoso periférico. O
sistema periférico tem como função transmitir os sinais dos estímulos exteriores (dor, calor, imagens, etc.) para o
sistema central (aferências), bem como enviar os sinais de reacção e controlo do sistema central (eferências) para os
vários órgãos envolvidos (músculos, glândulas, etc.). O sistema central está ligado entre as aferências e eferências, e
cumpre complexas funções de integração e processamento dos sinais vindos dos diversos receptores, até às saídas dos
sinais de reacção e controlo.
A velocidade de processamento de cada neurónio é extremamente baixa, quando comparada com sistemas
computacionais actuais. Assim se conclui que a extraordinária capacidade e velocidade do cérebro, só podem estar
relacionadas com o elevado paralelismo deste. O curto intervalo de tempo que decorre desde um estímulo até à sua
respectiva reacção, permitiria apenas algumas operações neuronais em série. O número de neurónios ligados uns atrás
dos outros será, por isso mesmo, muito reduzido, enquanto que a ligação de neurónios em paralelo pode ser muito
elevada. O reduzido tempo que o cérebro leva para aceder a um conteúdo de memória ou para realizar uma sequência de
pensamentos lógicos, leva a pensar que não deverão ser realizadas mais do que algumas centenas de operações em série.
Isto só será possível se a informação estiver espacialmente distribuída numa zona neuronal, de forma a permitir que o
acesso seja feito de forma paralela e global. Cada sinapse contribui com uma pequena parcela para essa informação
armazenada.
1.4 Características básicas de funcionamento
Foram desenvolvidos modelos de redes neuronais biológicas, com o objectivo de simular certos comportamentos
do cérebro, tais como o reconhecimento de padrões, comportamentos, capacidades de memorização e o pensamento.
Uma rede neuronal é um modelo técnico de processamento de informação, do cérebro, e não é constituída por um
processador central (CPU) nem por uma memória localizada. Ela é constituída por muitos elementos de processamento
simples, os neurónios (células nervosas). Estes neurónios estão altamente ligados uns com os outros e podem trocar
informação entre eles ao mesmo tempo.
"Uma rede neuronal é um conjunto massivo de unidades simples de processamento (usualmente adaptativas)
interligadas entre si de uma forma altamente paralela, numa organização hierárquica, e que devem interagir com o
mundo exterior de forma semelhante a sistemas nervosos biológicos."
- Kohonen [1984].
As redes neuronais conseguem aprender através da experiência de exemplos, pela modificação das suas sinapses
(representadas por pesos) que se faz segundo regras de aprendizagem (algorítmos que modificam os pesos durante a fase
de treino). Devido a esta capacidade de aprendizagem inerente, estas redes não podem ser programadas como
computadores, mas têm de ser treinadas com informação de exemplo. As redes também possuem, até certo ponto, a
capacidade de abstrair, generalizar e de memorizar informação associativamente.
Para a aplicação práctica das redes neuronais, é muito importante que estas tenham acesso a grandes quantidades
de dados. Em parte, elas até podem encontrar certos padrões de regularidade, de uma forma autónoma.
A natureza altamente paralela destes modelos cerebrais, são muito apropriados para serem implementados em
processadores paralelos.
1-3
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-4
Duma forma geral, as características mais apreciadas nas redes neuronais, e que lhes conferem a potência de
processamento que possuem, são:
•
•
•
•
•
•
Capacidade de aprendizagem
Elevado paralelismo e distribuição
Plasticidade/adaptibilidade
Generalização
Memorização associativa
Elevada velocidade de reposta a estímulos exteriores
1.5 Exemplos de aplicação actual
Hoje em dia já existem muitas aplicações prácticas das redes neuronais artificiais (ainda não se conseguiu meter
o cérebro dum rato dentro dum míssil...). Algumas das mais comuns estão relacionadas com sistemas de prognóstico de
finanças, decisões no meio empresarial, reconhecimento de padrões (incluindo a área militar), modelização de
comportamentos, controlo mecânico, reconhecimento de caracteres e diagnóstico médio automático. Além dessas
aplicações, as redes ainda são utilizadas na classificação de sinais de sonar sub-aquático, no reconhecimento da fala,
para dar a probabilidade do síndroma Sudden-Infant-Death, no controlo de braços de robôs, na previsão dos vencedores
em corridas de cavalos, na sugestão para conseguir uma cerveja mais saborosa, na previsão dos cursos da bolsa de
valores, no reconhecimento de aeronaves inimigas, na leitura sonora de um texto escrito, na previsão das erupções
solares, na avaliação de imóveis, na detecção de falhas nos produtos que passam no tapete rolante duma linha de
montagem, na determinação das causas de congestionamentos do trânsito, na detecção e classificação de células
cancerígenas, na detecção de fissuras no cimento, no reconhecimento e descodificação de estruturas dinâmicas, e muitas
mais. Apesar de todas estas aplicações, esta tecnologia das redes neuronais artificiais ainda se encontra na sua fase
infantil.
Além destas aplicações específicas, há muitas aplicações gerais possíveis de serem implementadas com redes
neuronais. Algumas destas áreas e propriedades de redes (além de exemplos gerais) são:
- Reconhecimento de padrões (reconhecimento de submarinos com a ajuda do sonar).
- Generalização (avaliações de imóveis).
- Previsão de cursos da bolsa de valores (decisões sobre a compra ou venda de acções).
- Previsões de comportamentos (previsões sobre os resultados duma operação).
- Tolerância face a dados corrompidos (reconhecimento de símbolos ópticos).
- Tolerância face a dados incorrectos (previsões sobre comparação de dados).
- Filtragem de sinais (limpeza de imagens).
- Funcionamento rápido (controlo de braços robóticos).
- Detecção de relações subtis (sistemas médicos especializados).
- Deterioração controlada devido a danos (controlo automático no espaço).
- Boa optimização (concepção de planos de vôo).
- Análise de enormes quantidades de dados (detecção de correlações de casos de seguros).
- Extrapolação (diagnóstico de falhas de produção).
Duma forma muito geral, as redes neuronais artificiais encontram aplicação útil em problemas de determinada
natureza e complexidade. Assim, podemos listar algumas exigências e propriedades destes problemas, que tornam as
redes neuronais preferidas em relação a sistemas computacionais de inteligência artificial ou a humanos:
1-4
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-5
- Reconhecimento rápido, consistente, repetitivo e livre de tendências pessoais.
- Sistemas que não se cansam nem modificam o seu comportamento devido a estados de espírito diferentes.
- Avaliações e previsões que dependem de correlações subtis e finas em enormes quantidades de dados.
- Problemas que não podem ser facilmente (ou não mesmo) descritos por regras e fórmulas matemáticas.
- Previsões que se baseiem em muitas fontes de dados diferentes, com correlações pouco conhecidas entre elas.
- Fenómenos com regras desconhecidas e inexplicáveis.
- Detecção dos factores mais importantes dos quais depende um certo fenómeno (trânsito, economia, etc.).
- Problemas que exigem um processamento rápido e bom, sem olhar a grandes precisões ou perfeições.
- Aplicações críticas que não admitem falhas completas do sistema de controlo dum processo, devido a danos.
- Determinação de soluções boas em vez da melhor (esta pode ser inviável de achar), em optimizações.
- Extrapolação a partir de exemplos, melhor conseguida do que software convencional com regras.
- Análise de grandes quantidades de dados com milhares de variáveis relacionadas de forma desconhecida.
- As redes não conseguem resolver problemas matemáticos com precisão igual à dos computadores digitais.
1.6 Modo de aprendizagem
Já se disse que as redes neuronais têm de ser treinadas com exemplos extraídos do problema que queremos
resolver. Há redes supervisionadas e não-supervisionadas, conforme a presença ou não dum “professor” que fornece as
saídas.
• Aprendizagem supervisionada
Nestas redes supervisionadas (com professor), temos de indicar as entradas e também as saídas desejadas para
essas entradas, ou seja, temos de lhe apresentar sempre pares entrada/saída. Dessa forma, a rede pode generalizar as
saídas para entradas que nunca viu. Estas redes utilizam regras de aprendizagem ditas supervisionadas, em que há um
algoritmo que calcula as modificações a fazer em cada peso dos neurónios, conforme o erro presente que a rede está a
ter na sua saída em relação às saídas desejadas. Isto origina uma modificação geral da rede, de forma a que as suas
saídas se aproximem o mais possível das desejadas. Neste tipo de aprendizagem, as saídas da rede têm um significado
numérico preciso (preço, probabilidade, etc.).
• Aprendizagem não-supervisionada
Neste tipo de aprendizagem já não se apresentam as saídas desejadas, e nem estas saídas possuem qualquer
significado preciso e directo. O que acontece é que estas redes se organizam internamente de forma a ficarem
“sensíveis” aos diversos dados de entrada. Há a formação de zonas de sensibilidade, cada uma com um significado
diferente ou parecido. Um exemplo é o que acontece no córtex visual que fica com zonas sensíveis a cada orientação e
ângulos que lhes sejam fornecidos pelo nervo óptico. Depois da organização estar completa, há uma ou mais zonas que
ficam activas (neurónios a dispararem) sempre que apareçam as orientações ou ângulos que lhes correspondam. Há
como que uma memorização organizada dos padrões de entrada.
Cada uma destas aprendizagens é utilizada conforme o tipo de problema a resolver. Existem redes que combinam
estas duas aprendizagens, de forma a se adaptarem ao problema específico em questão.
1.7 O futuro
O estado actual da modelização das redes neuronais biológicas encontra-se em intensa actividade, crescendo o
interesse realista para aplicações prácticas. Infelizmente ainda há factores de interesse comercial que influenciam
1-5
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-6
bastante esta área. Aqueles com experiência neste campo, estarão bem conscientes do antigo obstáculo do Perceptron,
esperando que as queixas sejam mantidas a um nível baixo, justificável e sob controlo.
Os modelos coneccionistas já estão a ter uma influência importante na ciência da cognição. Está-se na iminência
do surgimento duma nova classe de teorias da mente. Já existe um importante influência de teorias baseadas nas redes
neuronais e consistentes com elas, em detrimento das teorias baseadas em manipulações de símbolos.
Os neurocientistas são muito mais conservadores, interessando-se essencialmente pelo nível molecular das redes.
Com o passar dos últimos 20 anos, esta ciência tem-se tornado cada vez mais empírica. No entanto, existe agora um
interesse crescente nos systems neuroscience. Actualmente já existem trabalhos de grupos que utilizaram as ideias dos
modelos neuronais, e fizeram uso delas para explicar e interpretar dados experimentais. Alguns bons exemplos desta
combinação de neurociência experimental e teoria de redes podem ser encontrados em [Baird, 1986; Pellionisz e Llinas,
1985; Gluck e Thompson, 1987; Levy, 1985; Kelso, Gangong e Brown, 1986].
Para sistemas prácticos, aplicações cognitivas são inicialmente as mais promissoras - isto é, aplicações com uma
forte componente psicológica, tal como a generalização, adivinhação e trabalhos com sistemas ruidosos e parcialmente
governados por regras. Tentativas de construir sistemas mais parecidos com os computadores tradicionais, isto é, fazêlos lógicos ou de forma a armazenar e devolver elevadas quantidades de informação com elevada precisão, não fazem
um bom uso das virtudes das redes neuronais. As exigências de precisão encontradas nos computadroes tradicionais,
terão de ser descartadas. Computadores neuronais cometem erros intrínsecos. Este é o lado escuro da “creatividade” e
“generalização”.
Redes neuronais que evoluam continuamente ao longo do tempo estão a ter um interesse crescente. Aplicações
como o reconhecimento de voz, compreensão de linguagem natural e alguns aspectos da percepção visual, originam a
necessidade desse tipo de redes.
Sistemas híbridos que combinem inteligência artificial e redes neuronais, poderão ser brevemente possíveis e são
potencialmente muito poderosos. A inteligência artificial tradicional é de alto nível, enquanto que as redes neuronais são
de baixo nível. Existe óbviamente um interesse potencial para a exploração destes sistemas. No entanto, as redes
neuronais não serão úteis na práctica, até que surja hardware paralelo especializado e barato. Uma calculadora simples
pode ser muito útil, mas uma rede neuronal com o mesmo tamanho (nº de elementos activos) não será certamente útil.
As redes neuronais apenas exigem um certo grau não elevado de precisão e linearidade dos seus componentes. O
mais importante é a interligação altamente paralela, pelo que as redes são úteis para a implementação de computadores
ópticos e hardware analógico e digital especializado. Já estão a ser fabricados muitos destes dispositivos. A construção
do hardware tem-se mostrado simples, mas a utilização desse hardware é que vai ser a parte difícil.
1.8 Estrutura do cérebro
O cérebro humano contém cerca de 100 mil milhões (1011) células nervosas chamadas neurónios. Cada uma está
ligada a outras 1000 a 100,000 células. Isso significa que há uma imensidão de sinais a afluirem a cada neurónio,
havendo aproximadamente 1014-1016 sinapses. Além destas células, ainda existem as células gliais que se destinam a
funções de suporte, alimentação e isolamento dos neurónios. Estas células gliais ocupam quase 90% de toda a massa
encefálica.
A maior parte do conhecimento que se possui do cérebro humano, foi conseguido a partir da observação de
doentes com ataques nervosos, tumores e lesões físicas. Novas informações são obtidas através das tomografias por
emissão de positrões (PET). Este processo permite acompanhar as actividades cerebrais durante processos de resposta a
estímulos, movimentos e processos de pensamento. Isto permite identificar zonas cerebrais dedicadas a certas acções,
bem como relacionar essas zonas.
A zona cortical exterior, também chamada córtex ou massa cinzenta, é a zona onde se dá a maior parte da
actividade de processamento. Também é nesta zona que se processa o pensamento lógico. Esta parte também é por
vezes chamada de Neocórtex devido a ser a mais jovem, em termos de evolução.
1-6
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-7
O objectivo dos estudos sobre o cérebro humano (e não só) é o de descobrir os mecanismos segundo os quais ele
consegue executar as funções complexas que faz, e em que condições. Para isso, vão-se implementando modelos dos
processos cerebrais, de forma a testar novas teorias sobre aquele funcionamento. Por exemplo, um cérebro humano
consegue perceber linguagem falada, mas isso depende da temperatura: quando a temperatura do cérebro descer abaixo
dos 32º Celsius ou ultrapassar os 40.5º Celsius, então essa capacidade deteriora-se progressivamente. Se a temperatura
descer abaixo dos 26.7º ou ultrapassar os 43º, o cérebro fica totalmente incapacitado de reconhecer a fala. Uma rede
neuronal que simule o funcionamento do cérebro, também poderia ter esta dependência da temperatura incluída.
1.8.1 Neocórtex
O córtex humano é altamente dobrado, para permitir maior área cortical num menor espaço efectivo dentro do
crâneo. Essa área desdobrada ocupa cerca de 2000cm2 = 0.2m2 e tem uma espessura de 2-3mm. Contém um pouco mais
de 100,000,000,000 de neurónios e mais
algumas milhares de vezes de sinapses. A
maior parte do córtex humano é
estruturado na forma de camadas de
neurónios. Dentro de cada camada, há
uma densa rede de ligações laterais entre
os neurónios.
Os neurónios em zonas diferentes
do córtex, não são muito diferentes uns
dos outros. Nas zonas evolucionalmente
mais jovens, os neurónios dispôem-se em
muitas finas camadas, onde os fenómenos
relacionados com os limiares de disparo
têm um papel muito importante. Eles
suprimem o ruído das interferências
vindas de outras zonas. Um limiar de
disparo elevado parece ser importante
para o repouso dos neurónios, visto isso
evitar disparos espúrios e manter uma
maior estabilidade de todo o sistema.
Existem indícios que apontam para
o facto de que a mais unidade básica de
Fig. 1-1 - Ilustração dum corte no córtex. Aqui pode-se ver uma coluna cortical funcionamento
não é um simples
típica, com as suas ligações laterais de curto alcance (3mm) e de longo alcance (6-8mm). As neurónio, mas sim uma coluna constituída
primeiras cumprirão funções de organização e aprendizagem com vizinhança, enquanto que por aproximadamente 4000 neurónios.
as maiores cumprirão funções de associação com outras áreas corticais relativamente Cada coluna é um cilindro com cerca de
próximas.
300µm de diâmetro, que liga 6 camadas
corticais ao longo da sua vertical. Metade
dessa coluna é constituída por neurónios piramidais. Todas as células estão dispostas duma forma vertical, estando no
entanto ligadas de forma horizontal entre si.
Os axónios dos neurónios piramidais ramificam-se de forma a criar três tipos de ligações:
• Ligações que se encontram todas dentro duma coluna cortical (alcance de 300µm).
• Ligações que vão até às colunas vizinhas (alcance de ≈3mm).
• Ligações que vão à superfície cortical (alcance de 6-8mm).
1-7
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-8
Enquanto que os dois primeiros tipos de ligações servem para o processamento simples e local da informação
(organização e distribuição), já as ligações do terceiro tipo são acreditadas como estando envolvidas nos processos mais
complexos de memória de associação.
1.8.2 Funções cerebrais
É possível mapear o cérebro em zonas especializadas nas diversas diferentes funções respectivas aos sentidos
(visão, audição, etc.), bem como nas actividades (fala, movimentos motores, etc.). Também se podem ter zonas onde se
processam as partes mais abstractas, mas ainda se sabe muito pouco sobre isso. Cada zona dedicada a um sentido
contém estruturas “finas” nas quais chegam os sinais provocados pelos estímulos, com uma distribuição relativa
semelhante à dos sinais originados no órgão sensorial respectivo. Mas o cérebro nem sempre recebe exactamente um
sinal por cada estímulo individual recebido pelo órgão sensorial. No longo caminho até ao cérebro existem estações de
tratamento de sinal, onde os sinais são misturados. Em algumas zonas, essas correspondências entre sinais originados
pelos estímulos e os sinais recebidos pelo cérebro estão a um nível mais abstracto, tal como acontece por exemplo com
o sistema auditivo que recebe sinais relativos ao conteúdo espectral do som ouvido.
Apesar destas distribuições funcionais do cérebro por zonas, estarem genéticamente pré-determinadas, possuímos
a capacidade de poder adaptá-las e modificá-las através da experiência. No entanto, se uma pessoa é privada de certos
estímulos sensoriais, as zonas correspondentes não se desenvolvem de maneira nenhuma. Por outro lado, a destruição
duma zona cerebral leva outras zonas a tomarem parcialmente essas funções.
O cérebro possui ligações de realimentação dentro das camadas, bem como entre elas. Admite-se que estas
realimentações são maioritariamente inibitórias, de forma a garantir uma estabilidade global do sistema.
Ainda existe o cerebelo que é um conjunto de células nervosas que controlam a coordenação de movimentos.
Além deste, também o hipotálamo controla funções relacionadas com a fome, o sono, etc.
1.8.3 Teorias da memória
Ao contrário das máquinas de Von Neumann possuidoras dum processador central e de memória localizada, o
cérebro não possui um processador central nem uma memória bem localizada. Em vez disso, tudo indica que essas duas
entidades estão mais ou menos heterogeneamente distribuídas por todo o cérebro. Observações anatómicas mostram que
em qualquer corte se podem encontrar os mesmos tipos de estruturas, células e ligações. As mais importantes funções de
memória e de associação, são executadas pelo córtex. Outras zonas também desempanham partes importantes nessas
funções.
As estruturas funcionais vão-se complicando cada vez mais, à medida que nos aproximamos das zonas de
memória associativa. Primeiro, os estímulos são processados em zonas primárias simples, que são especializadas na
discriminação de formas, cores e outras features simples. De seguida, os sinais resultantes já no universo das features,
viajam para as zonas associativas mais complexas onde serão relacionados e reconhecidos. Aquelas zonas de
processamento primário dos sinais, reduzem grandemente o seu número na medida em que os transformam para um
nível de representação mais abstracto e conciso.
Hoje em dia, a teoria melhor aceite para explicar os fenómenos da memorização diz que isso se processa através
da modificação das ligações. Estas modificações são causadas pelos sinais que nelas viajam. Existem modificações que
duram apenas minutos ou dias, e outras que são duradouras. A pergunta que se põe, é a de saber como é que estas
modificações em conjunto podem dar origem a uma representação interna de memória.
Os psicólogos dividiram a memória em duas partes: a memória de curta suração (STM - Short Term Memory) e a
de longa duração (LTM - Long Term Memory).
A STM memoriza informação durante alguns minutos, enquanto que a LTM a memoriza de forma duradoura.
Existem duas teorias segundo as quais a STM consegue manter o seu conteúdo: uma diz que isso se faz através de
1-8
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-9
modificações eléctrico-químicas no neurónio, e outras diz que isso é conseguido através de realimentações excitatórias
que mantêm uma certa actividade dos neurónios respectivos. Nesta memória, ao fim de 10 segundos já se perdeu cerca
de 70% da informação. Através da repetição, também se consegue manter uma informação durante mais tempo da STM.
Por outro lado, a LTM não pode ser regida pela segunda teoria, já que isso implicava a perda completa da memória
duradoura em caso de inibição temporária dos neurónios respectivos (Ex: anestesia, sono, paragem cardíaca,
hipertermia, etc.). Este fenómeno de perda de memória é verificado, de facto, na STM. Assim, a LTM trabalhará
segundo uma modificação estrutural ou neuronal. A maior parte dos modelos de redes neuronais, trabalha com o
pressuposto da primeira teoria.
A capacidade de memorização da LTM quase que não tem limites. Algumas avaliações apontam para uma
capacidade equivalente entre 1010 e 1020 bit. Apesar de no cérebro interessar apenas a capacidade em unidades
individuais, estes número podem ainda ser traduzidos para 1.25 Gigabyte a 12,500,000 TeraByte.
1.8.4 Aspectos essenciais no funcionamento do cérebro
Os cinco dogmas seguintes, são destinados a definir os aspectos importantes na actividade do cérebro, os quais
são importantes para a compreensão do funcionamento deste:
• Nível significativo de descrição
A descrição da actividade dum neurónio isolado que é transmitida para outros neurónios, ou que os influencia, e
da resposta desse neurónio a tais influências de outros, é perfeitamente suficiente para a descrição funcional do sistema
nervoso. Não existe uma “entidade superior” que controla ou observa esta actividade.
• Representação económica das mensagens sensoriais
Em estágios progressivamente superiores dos caminhos sensoriais, a informação ácerca dos estímulos físicos é
transportada por cada vez menos neurónios activos. O sistema sensorial está organizado de forma a conseguir uma
representação tão completa quanto possível, com um número mínimo de neurónios.
• Selectividade adaptada ao ambiente
As sensibilidades de disparo dos neurónios estão adaptadas às features importantes da estimulação sensorial, de
forma a se conseguir uma representação mais completa e económica. Esta sensibilidade selectiva é determinada pelos
estímulos sensoriais aos quais os neurónios têm sido expostos, bem como por factores genéticos que operam durante o
período de desenvolvimento.
• Origem das percepções
Assim como estímulos físicos causam a iniciação de actividade neuronal nos receptores sensoriais, são as
actividades dos neurónios de alto-nível que causam os elementos da nossa percepção. Aqui ainda há muitos mistérios a
serem desvendados, tais como a nossa própria consciência dos eventos que ocorrem no cérebro (Ex: visão).
• Sinalização de certeza subjectiva
A frequência dos impulsos neuronais codifica uma certeza subjectiva: uma elevada frequência de disparo dum
neurónio, corresponde a um elevado grau de confiança de que a causa da percepção está presenta no mundo exterior. A
actividade neuronal é tudo menos digital ou Booleana, no que se refere à acção conjunta dos impulsos ao longo do
tempo.
Estas proposições são apenas para actuarem como ideias-guia, quando se tenta compreender certos aspectos do
funcionamento cerebral. São proposições-base com alguma incerteza e falta de confirmação, mas que são muito úteis
para ter uma supervisão geral sobre os fenómenos intrigantes do cérebro, e também podem mostra-se úteis durante a
concepção e implementação de modelos e teorias.
Também surgiram teorias holográficas que tentam relacionar a actividade cerebral com a holografia e suas
propriedades. Sob este ponto de vista, a actividade cerebral é vista como um todo inter-relacionado das actividades
isoladas. Também se especula sobre o grau de distribuição dessas actividades, de forma a explicar a espantosa
imunidade e resistência do cérebro a danos, bem como à sua enorme capacidade de recuperação desses danos.
1-9
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-10
1.9 O neurónio
Só há pouco menos do que 100 anos [1908] é que Cajal identificou as células nervosas (neurónios) como sendo
as componentes do cérebro. Os neurónios são células especializadas na troca de informação, troca essa que se processa
eléctricamente através de partículas carregadas (iões). Quando as cargas afluentes ultrapassarem um determinado limiar,
o neurónio dispara encaminhando a informação a outros neurónios. Estes disparos foram descobertos há uns 80 anos por
Adrian [1914].
Cada vez mais se foi sabendo e estudando sobre a transmissão e processamento dos sinais nas sinapses, axónios e
corpos celulares, bem como sobre a organização, estrutura e aprendizagem dessas redes neuronais. Foi-se acumulando
muita informação especialmente ao longo dos útlimos 30 anos.
Os primeiros que conceberam bases para a computação neuronal, foram McCulloch & Pitts [1943], com um
modelo formal para o neurónio. A primeira pessoa que propôs uma regra de aprendizagem neuronal biológica, foi
Donald Hebb [1949] na sua obra “Organization of behaviour”. Nessa obra ele postula que a acção duma sinapse é
reforçada sempre que os neurónios a montante e jusante estiverem activos simultâneamente. Como ainda não se era
capaz de simular redes neuronais, tudo isto não passou de uma especulação durante mais algum tempo. Este postulado
foi concebido com base em ideias de Cajal. Esta regra de aprendizagem persistiu até aos dias de hoje, sendo a
biológicamente mais plausível (e até certa medida demonstrada) e sendo utilizada em diversos modelos de redes.
Aqui iremos apresentar algumas características essenciais dos neurónios biológicos, que nos ajudarão a obter um
modelo. Entre aqueles encontrar-se-ão neurónios gerais e também neurónios de zonas específicas do processamento dos
estímulos visuais.
1.9.1 Características morfológicas e funcionais
Um neurónio é composto usualmente por uma árvore dendrítica, um corpo, um axónio e sinapses. No entanto,
pode não haver nenhum axónio. São exemplo disso, as células amácrinas na retina.
Fig. 1-2 - Esquema dum neurónio. Aqui podem-se ver as várias
dendrites que enviam os sinais recebidos para a soma, o corpo celular onde
se encontra a soma e o axon hillock onde se dá o processamento seguinte
daqueles sinais, e as ramificações do axónio que vão enviar os sinais
provenientes deste neurónio para as outras dendrites de outros neurónios.
1.9.1.1 Árvore dendrítica
Os sinais exteriores chegam ao neurónio através das suas milhares de dendrites. Estas dispõem-se em forma de
árvore, ligando o neurónio a muitos milhares de axónios de outros neurónios a toda a volta. Às ligações resultantes, dáse o nome de Sinapses. Os sinais provenientes destas dendrites são encaminhados para o corpo celular do neurónio,
onde serão processados.
Um neurónio pode possuir até 200,000 dendrites, o que é chamado de fenómeno de convergência. Esta árvore
dendrítica poderá eventualmente mesmo executar complexos processos matemáticos, na medida em que é ela que
determina o nível com que cada sinal de entrada chega à soma [Bell, 1988]. Bell pensou na possibilidade destas árvores
1-10
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-11
dendríticas serem, associadas ao corpo celular, redes de ordem superior. Isto significa que as dendrites poderão
contribuir com termos quadráticos e outros, em vez dos estritamente lineares. Cada sinapse contém uma pequena
sigmoid, dando origem a uma rede que poderá até aprender. Resta saber como. Foram feitas algumas simulações nesse
sentido [Bell, 1988], as quais levaram ao resultado de que estas árvores conseguem aprender practicamente tão bem
como o algoritmo backpropagation, mas sendo mais rápidas nessa aprendizagem. Estas árvores dendríticas artificiais
continham como que vários níveis com funções simples, cuja interligação dava origem à tal rede de ordem superior.
1.9.1.2 Sinapses
As sinapses são o nome que se dá ao espaço de ligação de dendrites a axónios. A maioria das sinapses são do
tipo químico. É naquele espaço que se processará a transmissão do impulso eléctrico do axónio para a dendrite, por
meios químicos. Estes meios químicos são denominados de Neurotransmissores. Estes neurotransmissores representam
a força com que os sinais vão ser transmitidos ao corpo celular, ou seja, fazem uma transmissão pesada dos sinais que
chegam. As sinapses são constituídas por duas membranas: a membrana pré-sináptica onde chegam os sinais, e a
membrana pós-sináptica donde saem novos sinais. O espaço entre elas, chamado de fenda sináptica, tem uma largura de
10-50 nm. Desta forma, torna-se claro que não há contacto físico direto entre as fibras nervosas.
Fig. 1-3 - Desenho esquemático da estrutura duma sinapse. O
impulso que chega provoca a libertação dos neurotransmissores
armazenados em vesículas. Estes químicos atravessam a fenda
sináptica e vão-se fixar nos receptores químicos da membrana póssináptica. Desta reacção, resulta uma variação do potencial na dendrite,
que vai finalmente influir a actividade eléctrica do próprio neurónio.
Esta influência será tanto maior, quanto maior fôr a frequência de
chegada dos impulsos pré-sinápticos. Esta influência ainda pode ser
excitatória ou inibitória, conforme a natureza do neurotransmissor
utilizado por essa sinapse. As sinapses podem ser do tipo axóniodendrite, axónio-corpo celular (ligação directa), dendrite-dendrite ou
axónio-axónio. Estas duas últimas servem para modular a actividade
que atravessa um daqueles canais.
Um sinal recebido, provoca a libertação dos neurotransmissores para aquela fenda. São conhecidas mais de 30
substâncias excitatórias e inibitórias. Entre os neurotransmissores encontram-se a Acetylcholin, Adrenalin,
Noradrenalin, Dopamin, Serotonin, Aminoácidos. Estes químicos vão-se depositar em receptores específicos do outro
lado, conduzindo assim a uma variação da actividade eléctrica do neurónio a montante. Finalmente, os químicos são
removidos por algum processo ainda não completamente esclarecido (enzimas neutralizadoras ou reagrupamento), o que
evita a sua acumulação indefinida na fenda sináptica. Como este processo dá origem a uma soma de potenciais de acção,
é a frequência desses impulsos de chegada que vai determinar a variação total no neurónio.
Há sinapses de dois tipos, as de tipo 1 que são excitadoras e as de tipo 2 que são inibidoras. Nas excitadoras, a
interacção transmissor-receptor produz um aumento da permeabilidade da membrana para os iões de sódio e potássio
que tem como resultado um potencial despolarizador: o potencial excitatório pós-sináptico. Isto faz com o potencial da
célula fique menos negativo, o que irá aumentar a chance do neurónio receptor disparar. Por outro lado, nas sinapses
inibidoras a interacção transmissor-recceptor aumenta a permeabilidade da membrana para iões de potássio e cloro, o
que tem como resultado um potencial hiper-polarizante: potencial inibitório pós-sináptico. Isto diminuirá mais o
potencial celular, diminuindo a chance de disparo do neurónio. Esta diferenciação de sinapses é conseguida através da
existência de dois conjuntos de neurotransmissores diferentes, uns excitadores e outros inibidores. O impulso recebido
provocará a libertação destes químicos dum lado da sinapse, e esses originarão uma reacção química do outro lado,
acompanhada dum impulso cuja natureza depende dessa reacção. Sob o ponto de vista morfológico, não são encontradas
1-11
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-12
diferenças entre sinapses excitatórias e inibitórias. O processo de libertação dos neurotransmissores é muito semelhante,
mas a acção destes últimos é que é diferente.
Além do tipo de sinapses descrito acima, que inibem ou excitam o neurónio de forma directa, também existe uma
espécie de agentes químicos chamados peptides. Esta são diferentes das usuais:
- Modulam a função sináptica e não a activam, isto é, apenas procedem a uma multiplicação ou divisão dos sinais
recebidos sem terem poder para activar um neurónio directamente só por elas.
- O seu efeito aparece lentamente e persiste (minutos), em vez de alguns milisegundos como com os
convencionais transmissores.
- Às vezes as peptides actuam um bocado mais longe do local onde foram deixadas.
- Os neurónios podem libertar mais do que uma peptide.
- As peptides, formam um segundo meio, mais lento, de comunicar entre neurónios, mais económico do que usar
neurónios extra.
Duma forma geral, as sinapses inibidoras são muito mais efectivas que as sinapses excitadoras, o que poderá
conferir uma estabilidade inerente a todo o sistema nervoso. Se fosse o contrário, decerto que haveria maior
probabilidade de realimentação positiva descontrolada que provocaria um caos eléctrico. Nas pessoas que sofrem de
epilepsia, passa-se um fenómeno relacionado com isso: quando existe um desequilíbrio entre as quantidades de
neurotransmissores, inicia-se uma tempestade eléctrica nas zonas afectadas do cérebro.
Além destas sinapses regulares, em que se liga um axónio a uma dendrite, também existe um outro tipo de
sinapse, muito importante e que liga axónio a axónio ou mesmo dendrite a dendrite. Estas sinapses parecem ser
maioritariamente fortemente inibidoras. Estas sinapses modulam o sinal que se propaga numa fibra, de forma a poder
fechar-lhe completamente o caminho. No fundo, actuam como uma porta dum transítor MOSFET de depleção1.
Além da construção e destruição das sinapses, alguns factores que podem ter influência na capacidade de
aprendizagem sináptica, são:
• A modificação da membrana celular na zona da sinapse. A estabilidade e permeabilidade desta membrana
poder ser alterada mediante a introdução de certas proteínas. A condutividade dos iões também pode ser alterada.
• A quantidade disponível de neurotransmissores, bem como enzimas que os neutralizam na fenda sináptica.
• A densidade de receptores na membrana pós-sináptica.
• A forma e tamanho macroscópicos da sinapse.
• A presença de certas moléculas de DNA e RNA, que influem o comportamento geral da sinapse.
A forma segundo a qual cada um destes factores exerce influência sobre o funcionamento global da sinapse,
ainda é objecto de investigações actuais.
Fig. 1-4 - Exemplos do aspecto aproximado das formas de
onda das variações dos potenciais pós-sinápticos, devido à recepção de
impulsos de outros neurónios. As variações positivas são devidas a
neurotransmissores excitatórios, enquanto que as negativas são devidas
a neurotransmissores inibitórios. A força dos estímulos é determinada
pela frequência dos seus impulsos. A duração de 10ms refer-se à
duração desses estímulos, e não é para ser confundida com a duração
de cada impulso. A duração de cada impulso será da ordem do milisegundo. À direita apresentamos um exemplo de combinação de duas variações
simultâneas em sinapses diferentes, que originam uma soma de ambos, resultando numa variação global positiva.
1.9.1.2.1 A teoria de Donald Hebb para a aprendizagem sináptica
1
Num MOSFET de depleção, quando há um sinal na porta, este pode cortar a corrente de electrões que normalmente circulam livremente.
1-12
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-13
Em 1949, D.O.Hebb apresentava uma regra geral de aprendizagem, que tinha em conta o processo de
aprendizagem biológico nas sinapses. Esta regra (regra de Hebb) diz o seguinte:
“Se o axónio dum neurónio está perto o suficiente doutro neurónio, de forma a conseguir activá-lo ou
contribuir para isso, então a coincidência das suas actividades origina uma modificação (crescimento, modificação
química) dum ou de ambos os neurónios, por forma a aumentar a efectividade da influência do primeiro sobre o
segundo.”
Neurónios que estão frequentemente activos ao mesmo tempo, verão assim o seu acoplamento reforçado de
forma a aumentar a probabilidade da sua activação simultânea. A regra de Hebb é uma regra de aprendizagem local: só
é necessário o conhecimento da actividade de dois neurónios vizinhos, para se processar um passo de aprendizagem. A
modicação postulada (crescimento, modificação química) tem lugar preferêncialmente na sinapse, que é o ponto de
ligação entre os dois neurónios.
Fig.
1-5
-
Ilustração da potenciação
pós-sináptica proposta por
Hebb. Estas experiências
que
conduziram
às
primeiras demonstrações
deste tipo de plasticidade
sináptica,
foram
realizadas por Martin G.
Larrabee e Detlev W.
Bronk
[1947].
Elas
centravam-se no estudo
experimental de ligações mono-sinápticas entre neurónios. Os microeléctrodos serviam para estimular e para seguir a actividade neuronal. A
estimulação do neurónio pré-sináptico origina um potencial de acção (A) que se propaga até ao neurónio seguinte. Aqui, é provocado um potencial
sináptico (B) no neurónio pós-sináptico. Uma estimulação de baixa frequência, nos primeiros 90 segundos, não modifica a efectividade com que o
primeiro neurónio afecta o segundo. Um estímulo prolongado de alta frequência, já aumenta tanto o potencial pós-sináptico bem como a efectividade
da ligação. Nos segundos seguintes, esse aumento da efecividade mantém-se, decaíndo lentamente. Neste último espaço de tempo, voltou-se à
excitação de baixa frequência. Experiências efectuadas mais tarde, vieram a mostrar que a esta potenciação se pode manter até duas horas, mediante
uma estimulação prolongada de 15 a 30 minutos.
Além disto, Hebb tentou explicar processos psíquicos mais complexos através das actividades de grupos de
neurónios: um conjunto de neurónios associadores está dispostso num agrupamento circular, onde surgem efeitos de
realimentação e de actividades agrupadas. Há sempre três ou quatro neurónios ligados uns atrás dos outros, também com
ligações laterais entre eles e com ligações para o exterior que activam estes agrupamentos. Um agrupamento destes é
chamado agrupamento de células.
Um conjunto desses agrupamentos de células forma a chamada sequência de fase. Sequências de fase
representam conceitos abstractos simples, tais como os das formas geométricas (triângulo, quadrado, etc.). A
aprendizagem processa-se através da formação2 das ligações entre neurónios, agrupamentos de neurónios e sequências
de fase. Assim se podem explicar, através da teoria de Hebb, as associações entre conceitos e modelos parecidos, bem
como da geração de acontecimentos simultâneos.
A teoria de Hebb não só fornece um modelo abstracto para a aprendizagem, associações e relações entre
conteúdos de memória. Ela também descreve o mecanismo básico da aprendizagem, que ainda hoje é a base para o
desenvolvimento de modelos ao nível molecular.
2
Não nos referimos à formação física de ligações novas, mas sim ao outro significado desta palavra: o do fornecimento de informação para
aprendizagem. É como uma formação técnica que se dá às sinapses, de forma a que estas se comportem da maneira desejada.
1-13
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-14
Recentemente, têm sido feitos extensos estudos experimentais no hippocampus cerebral e que confirmam a
existência nessa zona. Esta modificação sináptica postulada por Hebb é uma das formas da chamada LTP - Long Term
Potentiation, cujos fenómenos químicos envolvidos são extensivamente detalhados por Brown [1988].
A ideia dum mecanismo como o da regra de Hebb, já tinha sido referida no final do século IXX pelo fisiólog
William James, que tinha então proposto A “lei do hábito neuronal” que pode ser vista como um antecedente da
postulação de Donald Hebb sobre a aprendizagem neuronal.
1.9.1.2.2 Outros tipos de sinapses
Até aqui apenas descrevemos a sinapse que existe em maioria no cérebro, e que é a sinapse química. Também
existem as sinapses eléctricas, que não funcionam por meio de neurotransmissores. Estas sinapses não possuem fenda
sináptica. Em vez disso, estão coladas directamente à superfície celular dos neurónios, influenciando-os de forma directa
e eléctrica. Estas não possuem a propriedade da potenciação pós-sináptica originada através da excitação de alta
frequência, ou seja, não aprendem (pelo menos não por aquele processo proposto por Hebb). Além disso, os potenciais
pós-sinápticos eléctricos produzidos por estas sinapses, são sempre excitatórios.
1.9.1.2.3 Facilitação hetero-sináptica
A descoberta da aprendizagem a nível das sinapses químicas, foi um grande passo para a compreensão de
fenómenos comportamentais básicos do cérebro e sistemas nervosos associados. Assim se pode também compreender
como é que poderia modificar esses comportamentos. A questão que surgiu de imediato, é que até os comportamentos
mais simples implicam a actividade de duas vias sinápticas de forma simultânea, pelo que se pôs a hipótese de uma
sinapse poder influenciar a efectividade da outra. Para testar essa hipótese, fizeram-se também algumas experiências.
Eric R. Kandel e Tauc [1970] conduziram uma experiência em que se verificou que a estimulação duma
trajectória podia facilitar grandemente a actividade na outra trajectória. A esse processo foi dado o nome de facilitação
hetero-sináptica. Esta experiência proporcionou um análogo neuronal de quase-condicionamento (ou sensibilização): o
processo pelo qual um estímulo forte realça outras respostas.
Ao contrário do que acontecia na potenciação pós-sináptica em sinapses químicas, a facilitação hetero-sináptica
não é o resultado de modificações biofísicas na sinapse, nem de modificações do limiar de disparo do próprio neurónio.
A eficácia da primeira via era directamente controlada pela segunda, sem no entanto originar as modificações já
referidas. Assim, foi proposto [Eric R. Kandel e Tauc, 1970] que as fibras da segunda via realizavam a sinapse no
terminal da via facilitada. Esta sinapse pré-sináptica actuaria como um administrador que regula a libertação a longo
prazo da substância química transmissora na via facilitada.
A ideia da actividade duma via poder influenciar a actividade de outras, não era de todo nova. Alguns anos antes,
Joseph Dudel e Stephen W. Kuffler tinham descoberto que algumas sinapses apresentavam inibição pré-sináptica,
mecanismo pelo qual a actividade duma via debilitava a transmissão sináptica noutra. Estudos efectuados no caracol
marinho Aplysia mostraram que essa influência podia ser tanto facilitadora como inibidora.
1-14
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-15
Fig. 1-6 - A facilitação hetero-sináptica prolongada foi
estudada no gânglio abdominal do caracol Aplysia (superior
esquerda). (1)- A estimulação fraca produz um pequeno
potencial pós-sináptico de referência. (2)- Quando se estimula
fortemente uma segunda via facilitadora, produz-se um
potencial maior que chega para activar o neurónio. (3)- Ainda
mais estimulada, esta via facilitadora facilita a actividade da
via de teste e produz também ela um potencial pós-sináptico
elevado que conduz a disparo. (4)- Dez segundos após a última
facilitação, a via de teste consegue, por ela mesma, disparar o
neurónio. (5-7)- A via de teste continua a produzir um
potencial maior que o normal de referência, após 3, 5, 10 e 20
minutos. (8)- Ao fim de 30 minutos, o potencial pós-sináptico
produzido pela via de teste volta ao nível normal. Um modelo
postulado para esta facilitação tem um terminal da via
facilitadora que acaba no terminal pré-sináptico da via de teste.
Esta sinapse extra controla a libertação de neurotransmissores
(superior direita).
Tal como existem estas sinapses pré-sinápticas que facilitam a acção de outras, também existem ligações
sinápticas directamente ligadas ao axónio. Estas últimas facilitam ou inibem a acção do axónio.
1.9.1.2.4 Habituação e desabituação
Dado que algumas sinapses podem mostrar capacidades plásticas, resta saber como é que estas modificações se
relacionam com o comportamento e sua modificação. A habituação, considerada às vezes como a forma mais elementar
de aprendizagem, é uma diminuição da resposta comportamental quando um estímulo inicialmente novo, se apresenta
repetidamente. Um exemplo disto, é a habituação a um ruído: quando este surge pela primeira vez, a nossa atenção é
imediatamente atraída e os ritmos cardíacos e respiratório aumentam súbitamente. Mas quando esse ruído se repete em
intervalos de tempo relativamente curtos, o organismo vai-se habituando até se chega a um nível de sobressalto mínimo.
Contudo, logo que surja um ruído diferente, somos de novo alertados para essa novidade. É o que acontece, por
exemplo, quando estamos a ouvir a nossa música preferida (sem lhe dar muita atenção) e surge de repente um risco no
disco de vinil. Apesar de podermos estar completamente alheios à música em si, estando entretidos em qualquer outra
coisa (por exemplo a escrever este texto...), notamos imediatamente que aquele ruído não é habitual.
Tudo o que foi dito aqui, demonstra a capacidade do sistema nervoso negligenciar a informação de estímulos
repetitivos que só iriam acrescentar redundância inútil à aprendizagem deste, e de estar bem atento a estímulos novos
que contenham informação útil e importante a ser aprendida. Existem até redes neuronais especializadas em detectar
novidades no fluxo de dados que vão recebendo. São as chamadas redes detectoras de novidades.
Uma vez habituado a um determinado estímulo, há dois processos pelos quais um neurónio volta a ficar receptivo
como dantes:
• Recuperação expontânea que ocorre quando o estímulo habituado é retirado por um certo tempo.
• Desabituação que ocorre quando o estímulo é mudado para um completamente novo.
Estes mecanismos podem ser observados em todos os animais, inclusivé no homem, o que mostra a sua
generalidade em termos neuronais.
Já Charles Sherrington [1908], um grande fisiólogo britânico, verificou que acções reflexas tais como a flexão
dum membro do gato em resposta a um estímulo na pele, decaíam com a repetição desse estímulo. Também verificou
que o estado normal apenas era recuperado após muitos segundos de descanso. Sherrington foi capaz de demonstrar que
este fenomeno da habituação não se devia a uma fadiga dos músculos ou dos receptores sensoriais, sugerindo já naquela
época uma modificação sináptica como responsável por daquele fenómeno.
1-15
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-16
Estes estudos foram retomados mais tarde por C. Ladd Prosser e Walter Hunter, que mostraram que a habituação
podia ser rápidamente eliminada através dum estímulo forte e diferente, noutra parte da pele.
Fig. 1-7 - Ilutração dos resultados da
experiência efectuada sobre o caracol Aplysia, em
que se media a amplitude do reflexo das guelras a
estímulos exteriores. Isto era para se estudar os
fenómenos de habituação e desabituação neuronais.
A
resposta
decrescia
(habituação)
com
as
sucessivas estimulações, e recuperava lentamente
após um descanso. Logo de seguida, voltava a
habituar-se aos estímulos repetidos. Também se
podia recuperar rapidamente até ao valor normal de referência (desabituação), através da apresentação dum estímulo forte e novo (seta). O estímulo
desabituador era por sua vez também habituado através da repetição. O reflexo habituava-se mais rapidamente com estímulos fracos do que com
estímulos mais fortes. Também se habituava mais com intervalos curtos do que longos.
Os dados experimentais indicam que a habituação e desabituação parecem implicar uma modificação na
efectividade funcional das ligações excitatórias préviamente existentes. Também há dados experimentais que apontam
para o facto de que o processo da desabituação não é meramente uma interrupção da descida provocada pela habituação,
mas sim um processo facilitador independente e sobreposto à habituação. Vista nesta perspectiva, a desabituação é um
caso especial de quasi-condicionamento. Ainda que estes dois processos sejam independentes, isso não implica a acção
de neurónios diferentes com campos de acção que se sobreponham. Bem pelo contrário, estes dois processos parecem
representar dois mecanismos reguladores independentes que actuam na mesma sinapse.
1.9.1.3 Corpo celular
O corpo celular é a própria célula que constitui o neurónio (o neurónio é uma célula especial dos animais). Neste
corpo podemos encontrar uma zona mais próxima da árvore dendrítica, chamada Soma. É nessa zona que se processa a
soma pesada dos sinais que provêm das dendrites. Esta definição de “soma” é apenas parcialmente correcta e serve para
modelos simples, na medida em que há também informação relativa à origem dos sinais. Por outras palavras, o valor
final dessa soma também depende da origem dos sinais que a formam. O valor desta soma vai servir para disparar (ou
não) o neurónio, através da zona denominada por Axon hillock. Esta última zona já faz parte do axónio.
1.9.1.4 Axónio
O axónio é uma fibra nervosa de forma cilíndrica que propagará os impulsos gerados pelo neurónio respectivo,
até a sinapses que ligam a dendrites de outros neurónios. Este pode possuir ramificações que irão originar as tais
sinapses. O diâmetro dum axónio pode extender-se de 5 a 100µm e pode atingir comprimentos até um metro. Células
gliais especiais envolvem esta fibra com mielina. É esta substância que dá a cor esbranquiçada das zonas constituídas
em grande parte por axónios (Ex: hipocampus).
A parte incial dessa fibra, está ligada à soma e chama-se Axon Hillock. Do ponto de vista eléctrico, esta zona
comporta-se como um Schmitt-Trigger que dispara se o valor da soma anterior ultrapassar um certo limiar. A este limiar
dá-se o nome de Limiar de disparo (firing threshold). Quando aquela soma excede esse limiar, o neurónio dispara um
impulso eléctrico que viajará pelo axónio até chegar a algumas sinapses de outros neurónios. Estas descargas duram 1ms
e levam informação pela sua presença ou ausência. Os neurónios disparam 50 a 100 picos por segundo, com tempos
refractários de 10 a 20ms entre picos. Ao fim de cada impulso o neurónio “descarregou-se”, eliminando-se todos os
potenciais pós-sinápticos, pelo que terá de passar algum tempo até que este volte a “carregar” até ao valor de soma que
lhe permita exceder o limiar, disparando mais um impulso (só se as entradas não desapareceram ou reduziram
1-16
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-17
demasiado). A este intervalo de tempo mínimo de “recarga”, dá-se o nome de Período refractário e determina a máxima
frequência de disparo dum neurónio. Os impulsos gerados pelo Axon hillock são sempre positivos e de valor de pico
semelhante.
Fig. 1-8 - Após a ultrapassagem do limiar de disparo, o potencial
atinge valores mais elevados, disparando para além do valor nulo. Isto é
provocado pela passagem repentina de iões que provoca um desequilíbrio de
tensões. De seguida, quando já todos os iões atravessaram a membrana celular,
dá-se uma repolarização em que esses iões são de novo bombeados para dentro
do neurónio. O potencial volta a atingir o seu ponto de equilíbrio, dando-se
ainda uma ligeira hiper-polarização, seguida duma despolarização também
pequena. Depois destes fenómenos transitórios terem estabilizado, o neurónio
volta ao seu potenial de repouso, estando pronto a disparar novamente.
O limiar de disparo é continuamente adaptado ao nível médio dos sinais de entrada, de forma muito lenta. Isto dá
origem ao conceito de habituação.
Os impulsos que viajam até a uma velocidade de 120m/s, têm todos a mesma amplitude. A força dos estímulos
que os originam reflecte-se na frequência e não na amplitude. Um axónio pode não propagar um impulso mas sim um
gradiente de potencial. Devido à atenuação, não é de esperar que este tipo de sinalização ocorra em grandes distâncias.
É encontrado em locais tipo a retina onde as distâncias entre neurónios ligados são pequenas (Ex: Quando o axónio é
curto, um axónio #1 modula um axónio #2, provocando uma diferença de potencial no terminal #1). Um exemplo destes
neurónios, são as células amácrinas da retina.
Nenhum axónio no mamífero tem ramifiações que fazem sinapses do tipo 1 em alguns sítios e do tipo 2 noutros,
ou seja, nenhum axónio no cérebro do mamífero usa dois tipos de transmissores. Não há portanto evidência de que no
mesmo axónio se possam fazer inibições em alguns lados e excitações noutros, mas isso é possível porque o efeito dos
transmissores depende do tipo de receptores e do canal de iões.
A parte inicial do axónio pode realizar complicadas funções matemáticas, tais como raízes, sigmoids e outras
funções não-lineares.
Um axónio pode possuir ramificações até 200,000 pontas, o que é chamado de fenómeno de divergência.
1.9.2 O neurónio como unidade funcional
Cada neurónio pode ser visto e analisado como uma unidade funcional relativamente independente, mas
fortemente ligada a milhares de outros neurónios circundantes.
Os neurónios, podem dividir-se essencialmente, em piramidais e não-piramidais. Os piramidais têm uma
disposição vertical. Verifica-se que entre neurónios do mesmo tipo, há ligações laterais. Estas ligações laterais podem
originar efeitos de organização através da vizinhança, e também de enriquecimento de contraste de actividades.
Na membrana celular dum neurónio em repouso, pode ser medida uma tensão de cerca de -70mV. Este é o
chamado potencial de repouso. Isso significa que há uma acumulação de carga negativa no interior da célula. Aqui
desempanham especial papel, as concentrações de iões de cálcio. A manutenção desta acumulação é garantida por
bombas de iões que força iões a entrar no corpo celular. Estes não podem mais sair, porque são demasiado grandes para
voltar a atravessar a membrana sem ajuda. Quando há sinais que chegam à membrana celular, através das sinapses e
dendrites, acontece algo de espantoso: se for ultrapassado um certo limiar, essa membrana torna-se repentinamente
permeável aos iões de cálcio que a atravessam muito rápidamente. Este fenómeno faz com que haja uma despolarização
ou descarga que origina um impulso electrico. Este impulso vai-se propagar pelo axónio e chama-se potencial de acção.
Ao fim disto, o potencial da membrana ficou aumentado para +30mV. Ao fim de algum tempo, a membrana volta ao seu
estado inicial, através da nova acumulação de iões que são trazidos de volta pelas bombas de iões.
Quase toda a informação que tem que ser transmitida pelos neurónios através de distâncias maiores que 1mm,
está codificada em potênciais de acção (impulsos eléctricos através dos axónios). A taxa de disparo de um neurónio
1-17
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-18
cortical, não representa o valor analógico da variável directamente, mas a probabilidade da variável cair dentro de um
volume no espaço das features. É feita uma média dos impulsos, em 10 usualmente, para se saber a taxa de disparo
média em dezenas e centenas de milisegundos. Para intervalos pequenos, de 5 a 10ms especialmente em condições não
estacionárias, as variáveis estocásticas são mais apropriadas. Assim define-se a probabilidade de disparo do neurónio,
durante um intervalo de tempo pequeno.
Não existem outros estados intermédios, que não o disparo ou o não-disparo. Isto evita que haja perda de
informação durante a propagação dos impulsos através de caminho longos, tornando essa transmissão do tipo digital.
Sendo o sinal continuamente regenerado ao longo da rede neuronal, este não será atenuado até se perder. Os potenciais
de acção de células diferentes não apresentam diferenças qualitativas. Isto evidencia o facto da informação ser
importante do ponto de vista da origem do disparo, em vez da natureza do disparo. O conteúdo de informação está assim
contido na frequência com que ocorrem os disparos. A transmissão da informação está então relacionada com uma
modulação de frequência. A gama de frequências está limitada por razões naturais, a um valor máximo de 250-1000 Hz
(impulsos por segundo). Como já se disse, esse limite é determinado pelo período refractário, durante o qual o neurónio
tem de repolarizar a sua membrana.
Finalmente, após todas as explicações sobre sinapses e corpos celulares, podemos observar dois tipos de soma
dos sinais por parte do neurónio:
• Soma temporal
Esta soma é realizada localmente pelas sinapses, onde os impulsos eléctricos são convertidos em mais ou menos
quantidade de neurotransmissores. Esta maior ou menor quantidade, vai influenciar duma forma mais ou menos forte o
potencial total da membrana celular do neurónio, excitando ou inibindo este mais ou menos.
• Soma espacial
Esta soma é realizada pela organização dos neurónios no cérebro, isto é, cada neurónio vai somar no seu corpo
celular os sinais que a sua árvore dendrítica captar.
A velocidade de processamento dum neurónio, é “tremendamente” baixa (cerca de 10,000 vezes mais lento). Por
outro lado, o número de neurónios e suas ligações é inimaginavelmente elevado, e ainda inalcançável com a tecnologia
computacional actual. Se o nível de integração em chip continuar a progredir como actualmente, talvez se consigam
números semelhantes daqui a uns 120 anos. Isso não significa, no entanto, que se consigam alcançar níveis de
inteligência sequer comparáveis aos do cérebro humano.
Quanto ao tamanho do neurónio, este tem influência nos processos de excitação e inibição das sinapses, na
medida em que variam as distâncias destas à zona do axon hillock onde todas as modificações de potencial provocadas
por estas vão parar. Assim, verifica-se que a excitabilidade dum neurónio é maior quanto mais pequeno for o neurónio.
O mesmo acontece para a inibitabilidade. Estas verificações foram primeiro observadas em neurónios motores, sendo
provável que o mesmo aconteça para os restantes. Neurónios maiores também possuem axónios com um diâmetro
maior, o que aumenta a velociodade de propagação dos seus impulsos. De observações deste género, fica claro que o
processamento da informação também depende de certa forma da qualidade, natureza e condição do hardware
envolvido.
1.9.3 Resultados de investigações mais recentes
Novos dados experimentais apontam para o facto de que os neurónios biológicos possuem uma estrutura bastante
mais complexa [Bras & Tyc-Dumont] do que aquelas simuladas nas redes neuronais artificiais. Às vezes, as dendrites
processam informação como unidades independentes de organização. As ramificações dendríticas comportam-se como
canais diferentes, de forma que o neurónio consegue distinguir entre diferentes origens dos sinais que lhe chegam. Isso
1-18
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-19
significa que a estrutura celular permite a utilização do mesmo grau de excitação, de uma forma diferente nos diversos
ramos dendríticos, donde podem surgir diferentes efeitos para a célula. Os ramos podem permitir ao neurónio uma
distinção dos sinais que provêm do mesmo canal, através de códigos dos canais.
Tal como a investigação continua a mostrar, o axónio pode executar complexas funções matemáticas. A saída do
axónio varia conforme a parte que foi utilizada para produzir os impulsos. Algumas partes produzem impulsos mais
fortes do que outras.
Também se vão fazendo progressos significativos na área dos fenómenos químicos e eléctricos a nível das
sinapses e da respectiva aprendizagem. Vão-se definindo vários níveis de aprendizagem, bem como pormenorizando
cada vez mais os vários mecanismos envolvidos. Também se vão descobrindo e demonstrando experimentalmente novas
capacidade das árvores dendríticas, das quais falámos anteriormente. As investigações sobre estas árvores podem levar a
uma reviravolta na modelização dos neurónios, até agora considerados como aprendendo apenas nas sinapses.
Será interessante observar quais os comportamentos biológicos que virão a ter importância nas redes neuronais
artificiais.
1. REDES NEURONAIS E NEURÓNIOS........................................................................................................1-1
1.1 INTRODUÇÃO ...................................................................................................................................................1-1
1.2 BREVE HISTÓRIA ..............................................................................................................................................1-2
1.3 BASES BIOLÓGICAS E FISIOLÓGICAS..................................................................................................................1-3
1.4 CARACTERÍSTICAS BÁSICAS DE FUNCIONAMENTO ............................................................................................1-3
1.5 EXEMPLOS DE APLICAÇÃO ACTUAL ..................................................................................................................1-4
1.6 MODO DE APRENDIZAGEM ...............................................................................................................................1-5
1.7 O FUTURO ........................................................................................................................................................1-5
1.8 ESTRUTURA DO CÉREBRO ................................................................................................................................1-6
1.8.1 Neocórtex.................................................................................................................................................1-7
1.8.2 Funções cerebrais....................................................................................................................................1-8
1.8.3 Teorias da memória .................................................................................................................................1-8
1.8.4 Aspectos essenciais no funcionamento do cérebro ..................................................................................1-9
1.9 O NEURÓNIO ..................................................................................................................................................1-10
1.9.1 Características morfológicas e funcionais ............................................................................................1-10
1.9.1.1 Árvore dendrítica ..............................................................................................................................................1-10
1.9.1.2 Sinapses ............................................................................................................................................................1-11
1.9.1.2.1 A teoria de Donald Hebb para a aprendizagem sináptica ..........................................................................1-12
1.9.1.2.2 Outros tipos de sinapses ............................................................................................................................1-14
1.9.1.2.3 Facilitação hetero-sináptica .......................................................................................................................1-14
1.9.1.2.4 Habituação e desabituação.........................................................................................................................1-15
1.9.1.3 Corpo celular.....................................................................................................................................................1-16
1.9.1.4 Axónio ..............................................................................................................................................................1-16
1.9.2 O neurónio como unidade funcional .....................................................................................................1-17
1.9.3 Resultados de investigações mais recentes............................................................................................1-18
1-19
Reconhecimento automático de caracteres
Redes neuronais e neurónios
1-20
1-20
Reconhecimento automático de caracteres
Introdução 2-1
2. Introdução ao reconhecimento de caracteres
Neste capítulo, apenas queremos dar uma ideia muito geral do que se passa actualmente no campo do
reconhecimento de caracteres. Não queremos, de forma nenhuma, aprofundar cada caso, apresentado somente algumas
características importantes que sejam relevantes para ccomparação com o nosso próprio trabalho.
2.1 Pormenores teóricos
Antes de passar à descrição de implementações actuais, vamos expor alguns pormenores subjacentes ao
reconhecimento automático de caracteres.
2.1.1 Motivação do estudo de reconhecimento de caracteres
Com o crescente uso dos computadores e de sistemas iteractivos com o utilizador, é necessário estabelecer um
interface simples de utilizar e de rápida aprendizagem. Actualmente, para se manipular tais sistemas, usam-se teclados,
"ratos", trackballs e alguns sistemas já respondem a simples comandos de voz. O uso da voz, para comunicar com o
computador, à primeira vista parece o método mais atractico, porém o seu uso torna-se complicado em ambientes
ruidosos, em que por exemplo se ouvem várias vozes. Os outros interfaces mencionados, podem-se tornar complicados
de usar, para pessoas não muito familiarizadas com o mundo dos computadores, e mesmo que não seja este o caso seria
desejável um método mais rápido e familiar para comunicar com o computador.
Outras aplicações, possíveis são o reconhecimento de códigos postais, leitura de cheques, processamento de
recibos e texto,etc.
2.1.2 Classificação dos sistemas de reconhecimento de caracteres
• On-line / Off-line
Em métodos de OCR, podem-se classificar os sistemas quanto à obtenção dos dados:
- On-line, quando os dados referentes ao caracter, são obtidos directamente do sistema de pen, disponibilizando
portanto, informação quanto à ordem dos traços que compõe o caracter.
- Off-line, quando os caracteres a reconhecer estão num pedaço de papel, ou numa forma em que não se tem
acesso à informação referente à ordem dos traços que compõem o caracter. Nestes sistemas, de haverem carcteres com
larguras dos traços da pen, com larguras diferentes.
• Identificação de autor ou de conteúdo
Em métodos de OCR, podem-se classificar os sistemas quanto à informação desejada:
- Autor, quando o que se pretende, é determinar a pessoa que escreveu um texto ou uma assinatura por
exemplo.
- Conteúdo, quando se pretende obter o conteúdo de um texto, não interessando a informação sobre o autor.
2-1
Reconhecimento automático de caracteres
Introdução 2-2
• Adaptação a vários estilos de escrita
Num sistema de OCR, em que se pretende o conteudo do texto, é necessário que este seja suficientemente
flexível, para reconhecer vários estilos de escrita, independentemente da pessoa que escreve ou fonte.
• Reconhecimento de palavras
Num sistema que reconheça palavras, um critério de classificação do desempenho do sistema é o número de
palavras que o sistema tem que reconhecer (Lexicon). Por exemplo para ler endereços postais, o Lexicon é menor que
para uma aplicação em que se pretende reconhecer texto de um livro.
• Caracteres isolados
Para se fazer o reconhecimento de caracteres isolados, é necessário fazer uma segmentação das palavras, que só
por si é um processo bastante complicado, porque é difícil definir as fronteiras entre caracteres. Uma maneira de
contornar este problema é escrever os caracteres separadamente.
2.1.3 Psicologia da leitura
• A palavra
Para estudar sistemas de OCR, é importante perceber como é que as pessoas lêem. No reconhecimento de
palavras, constatata-se que:
-Existe O Efeito de superioridade da palavra, que consiste no facto de se reconhecer melhor uma letra, se ela
estiver inserida numa palavra, do que isoladamente.
-Para ler fluentemente, é necessário ter-se familiaridade com a forma das palavras, e não com as letras da palavra.
Pode-se concluir que, o reconhecimento de palavras, é feito considerando uma palavra como uma entidade única
e não como um conjunto de letras.
Uma das maneiras de se fazer o reconhecimento de caracteres, é detectando features na escrita. Em Senior
[1992], descreve-se que, utilizando a simples divisão em três features (alto / pequeno/ com cauda), e agrupando as
letras em grupos de letras semelhantes, se consegue reconhecer 6953 palavras em 7848 de um texto estudado.
• O caracter
Senior [1992], descreve que as pessoas reconhecem 96.8% de caracteres manuscritos, 95.6% de caracteres
discretizados, e cerca de 72% de texto fluente.
Nas primeiras fases do processamento visual, são primeiramente detectados segmentos de linhas com diferentes
orientações [Hsieh, 1993]. Só depois é que essas detecções são combinadas para formar ângulos que serão
posteriormente analisados em instâncias superiores do cérebro, de forma a se reconhecerem caracteres completos.
2.1.4 Optical Character Recognition (OCR)
Nos anos 80, houve um grande sucesso com o OCR, que consiste na leitura de caracteres impressos pelo
computador. Estes sistemas, conseguem ler um determinado número de fontes, com ruído e alguma variação posicional.
O sucesso destes sistemas não avançou para o campo do reconhecimento dos caracteres manuscritos porque a escrita
varia muito de pessoa para pessoa, tornando impraticável o uso destes sistemas.
2.1.5 Sistemas de reconhecimento de caracteres manuscritos
2-2
Reconhecimento automático de caracteres
Introdução 2-3
Os sistemas de reconhecimento de caracteres manuscritos podem-se dividir em três áreas:
- Sistemas On-line,
- Reconhecimento de caracteres isolados.
- Reconhecimento de texto Off-line.(Off-line cursive script)
Essencialmente, os sistemas podem-se dividir em três fases:
- pré-processamento.
- extracção de features / Parametrização.
- módulos de reconhecimento, usualmente uma rede neuronal.
2.1.6 Reconhecimento de caracteres isolados
Vamos debruçar-nos, sobre área de reconhecimento de caracteres isolados, nesta área porêm, ainda surge uma
grande divisão, que é a forma como se extraem as features. Senior [1992] refere que se podem dividir os estudos feitos
em; features globais (Templates ou transformadas tais como a de Fourier, Walsh ou Hadamard); distribuições pontuais
(zoning, momentos, n-tuples, characteristicas loci, cruzamentos e distâncias) e features geométricas ou topológicas. A
última ficou a mais popular, e envolve detectores separados para cada um dos tipos de features (loops, curvas, secções
direitas, pontos de fim, ângulos e intersecções). Normalmente esta informação, é alimentada numa rede neuronal para
identificar os caracteres a partir das features detectadas. Ainda usando este método das features geométricas, pode-se
fazer a detecção das features, usando redes neuronais, com néurónios especializados em detecção de features, e
interligando-os de forma a se poder ter uma invariância em posição e forma dos caracteres.
2.2 Métodos de reconhecimento de caracteres isolados com redes neuronais
2.2.1 Definições e figuras de mérito
• Conjunto de treino - Conjunto de padrões usados pelas regras de aprendizagem e modificação de pesos.
• Conjunto de validação - Conjunto de padrões usados para monitorizar o erro em padrões não pertencentes
ao conjunto de treino durante o treino.
• Conjunto de teste - Cojunto de padrões usados para verificar o erro e generalização no final do treino
• Taxa de reconhecimento - Percentagem de padrões bem classificados.
• Taxa de Rejeição - Percentagem de padrões que não se conseguem classificar.
• Taxa de Erro - Percentagem de padrões que foram incorrectamente classificados.
2.2.2 Stepnet
2-3
Reconhecimento automático de caracteres
Introdução 2-4
2.2.2.1 Análise do Stepnet
O STEPNET [Knerr, 1992], é um procedimento que decompõe os problemas em subproblemas mais simples,
que podem ser resolvidos com separadores lineares. Foram criados classificadores neuronais mais poderosos, o mais
popular é o Multilayer Perceptron, treinado com Backpropagation. Porém, apesar deste conseguir resolver qualquer tipo
de problema, não há uma regra quanto ao número de neurónios a usar na hidden-layer. Devido a limitações de tempo de
computação e de hardware, pode ser então preferível optar por estruturas mais simples com treino mais rápido.
2.2.2.2 Resultados
Foram obtidos melhores resultados, usando o pré-processamento.
Os resultados obtidos, são no pior caso aproximadamente de 10% de taxa de rejeição para 1% de taxa de erro,
para a representação por features. Para a representação por pixeis, os resultados são sempre piores, quer na base de
dados Europeia de códigos postais, quer na Americana.
O resultado obtido por representação por features, pode ser considerado como dentro dos valores actuais da State
of Art. Os melhores resultados obtidos são na ordem 3% de taxa de rejeição e uma taxa de erro de 1% [Knerr, 1992].
O treino é feito em menos de 30 minutos numa Apollo DN10000 WorkStation.
2.2.3 Modelos para padrões invariantes
Srinivasa [1992], desenvolveu uma rede para resolver o problema de reconhecimento de caracteres
invariantemente da sua posição, continuando o trabalho feito por Widrow [1988]. A invariância, é conseguida
adicionando uma rede de pós-processamento à saída de uma rede neuronal ART1. A rede é proposta para imagens de
baixa resolução, devido ao aumento do tempo de pós-processamento com o tamanho das imagens.
O ART1 tem a vantagem em relação às redes Kohonen de poder aprender novos padrões depois de treinada,
propiedade esta que se chama plasticidade.
A ideia base, é usar vários slabs1, com a matriz de pesos rodada de 0, 90, 180, 270 graus e com translações
verticais e horizontais, para valor de saída usa-se o valor majorante dos slabs.
A desvantagem deste sistema é número de ligações existentes.
2.2.4 Neocognitron
1
Neste contexto, esta palavra significa versão dum padrão, neste caso rodada. Em português literal, significa azulejo ou placa.
2-4
Reconhecimento automático de caracteres
Introdução 2-5
2.2.4.1 Estudo do modelo
O Neocognitron, é capaz de fazer o reconhecimento de padrões deformados, com diferença de tamanho e
razoavelmente indepentemente da sua posição. A capacidade de reconhecer caracteres deformados, depende
grandemente da escolha dos padrões de treino, que se torna um seu grande problema.
2.2.4.2 Arquitectura da rede
O Neocognitron, é uma rede com uma estrutura hierárquica contendo várias camadas de neurónios, interligadas
entre si. Como tem um grande poder de generalização, são precisos apenas alguns padrões de treino para a
aprendizagem [Fukushima, 1988].
O treino pode ser supervisionado ou não supervisionado [Fukushima, 1988, 1991], e a capacidade do sistema
reconhecer caracteres deformados, depende grandemente das features locais a ser extraidas nas camadas intermedias.
Estas features locais, são determinadas pelos padrões de treino usados.
A rede é composta por células S e C. As células S, extraem features; enquanto que as células C são inseridas na
rede para permitir erros posicionais. As layers USn,contêm células S e as layers UCn contêm céluas C. As layers USn e
UCn , são usadas alternadamente em toda a rede.
A primeira layer extrai features locais, do género de rectas com uma orientação particular, as outras layers,
extraem features mais globais, assim desta forma consegue-se uma maior invariância.
Cada layer S ou C, é dividida em subgrupos chamados planos. Cada plano, responde a uma feature, e recebem as
ligações de entrada do mesmo campo espacial, mas com uma pequena deslocação de posição, portanto havendo partilha
de pesos.
Cada célula, recebe ainda uma entrada inibitória V. Estes neurónios V permitem uma regulação da selectividade
de resposta dos neurónios S, aos contornos.
2.2.4.3 Construção e treino da rede
- Se a complexidade dos padrões for elevada, os campos espaciais de entrada têm que ser pequenos.
- Se o número de categorias dos padrões é grande, o número de planos em cada layer tem que ser aumentado.
- O tamanho do campo receptivo, principalmente nas primeiras layers onde coincide com o tamanho das features
locais, pode ser grande se a deformação possível da feature for pequena, mas tem de ser pequeno, quando deformações
grandes têm que ser toleradas.
- Se os padrões de entrada forem complexos, os campos receptivos devem ser pequenos, sendo necessárias várias
layers para poder integrar todas as features.
- O treino desta rede é feita camada-a-camada, com padrões de treino especialmente escolhidos para cada uma, o
que torna tudo demasiado artificial. Ainda por cima, os padrões são sempre apresentados na mesma posição, de forma a
excitar sempre o mesmo neurónio de cada plano. Primeiro actualizam-se os pesos desse neurónios e depois copiam-se
para todos os outros dentro de cada plano. Ora, isto é practicamente 100% artificial. Há um algoritmo programado que
comanda todas as operações, sem haverem quaisquer mecanismos automáticos. Para cada camada tem-se de apresentar
um conjunto de treino diferente.
2.2.4.4 Resultados e comentários
2-5
Reconhecimento automático de caracteres
Introdução 2-6
O grande problema do Neocognitron, é ter de se fornecer padrões de treino específicos, para cada uma das layers,
para se poder detectar as features pretendidas. O tempo de treino, numa Sun WorkStation, é de 13min enquanto que o
LeCun demora 3 dias.
Este modelo tenta reconhecer padrões de diferentes tamanho, chegando mesmo a padrões muito pequenos
quando comparados com o campo visual desta rede. Nós pensamos seguir outra política, mais plausível biológicamente,
em que se implementa uma zona central (fóvea do olho) com a maior concentração de recursos neuronais que analisam
essa área (hiper-colunas corticais2), havendo depois uma periferia com menor concentração desse recursos. Com isto,
esperamos que se conseguia um sistema que possui a capacidade de reonhecer padrões pequenos e grandes que ocupam
automáticamente a zona foveal e periférica, respectivamente.
Relativamente a um modelo anterior ao NeoCognitron: o Cognitron utilizava linhas prá trás que controlavam a
sensibilidade de resposta das diversas camadas neuronais, com um mecanismo semelhante a um CAG - Controlo
Automático de Ganho. Desta forma, pretendia manter o nível de resposta das camadas mais ou menos forte de forma a
que o classificador conseguisse sinais de entrada para uma boa classificação. Nós pretendemos implementar esse
mecanismo nas próprias camadas, e utilizando conceitos biológicamente plausíveis (limiar de supressão, autonormalização das redes STM). Mais á frente falaremos mais de perto destes conceitos.
2.2.5 LeCun
O método proposto por LeCun [1990] (em continuação de LeCun, 1989), consiste em usar uma única rede como
classificador e extractor de features, tendo como vector de entrada a imagem normalizada, e não vectores de features.
Para melhorar a generalização, reduz-se o número de parâmetros livres (ligações e partilha de pesos), fazendo o desenho
da rede, com algum conhecimento à priori do problema.
2.2.5.1 Features e partilha de pesos
Para fazer a classificação dos dígitos , é feita uma extracção de features locais, que são combinadas para
formarem features de ordem superior. Isto pode ser conseguido, ligando os neurónios da hidden layer, de forma a que
estes só respondam a uma dada região da imagem. Como uma feature, pode aparecer em vários locais de uma imagem,
há um conjunto de detectores de uma feature, capazes de detectar a feature, em qualquer parte do vector de entrada
(imagem). Como a localização precisa da feature não é importante, pode -se perder alguma informação quanto à posição
na classificação. No entanto é preciso ter uma informação aproximada quanto à localização, para os níveis seguintes
poderem detectar features superiores. A detecção de feature em qualquer lugar da imagem, pode ser conseguida, com a
partilha de pesos, entre os elementos detectores de uma feature. A partilha de pesos, reduz o número de parâmetros
livres e faz com que se detecte uma feature em diferentes locais.
• Plane - É um conjunto de neurónios, que partilham os mesmos pesos, mas cada qual está ligado a uma região
da imagem. Assim o plane, detecta uma feature em diferentes locais da imagem. A hidden layer, é composta por vários
planes, que são chamados feature maps.
• Receptive Field - Zona do plano de entrada(imagem), que vai servir de input para um neurónio.Usualmente
define-se como sendo um quadrado, mais pequeno que o plano de entrada.
2.2.5.2 Arquitectura da rede
2
Este conceito será estudado mais à frente, quando se investigar o funcionamento do sistema visual (mais específicamente o córtex visual).
2-6
Reconhecimento automático de caracteres
Introdução 2-7
• Camada de entrada, é composta por 28x28 neurónios, porque apesar da imagem ser apenas de 16x16
usando um plano de entrada maior, hevita-se que haja problemas quando o kernel ultrapassa a borda, durante o scan.
• Camada de saída, é composta por 10 neurónios e é totalmente ligada.
A rede é composta por quatro hidden layers H1, H2 , H3 e H4. As layers H1 e H3, são extractores de features e
têm partilha de pesos. Cada layer extractora de features, é seguida de uma layer para fazer média e subamostragem , H2
e H4. Estas layers, introduzem uma certa invariância às distorções e translações. Este tipo de arquitectura, é baseada na
filosofia do Neocognitron [Fukushima, 1991], mas treinada com o Backpropagation.
A camada H1 é composta por 4 planes, de 576 unidades cada (24x24), H1.1, H1.2,...,H1.4. Cada unidade de um
plane tem um receptive field de 5x5 no plano de entrada (25 ligações), portanto há partilha de 26 pesos, incluindo bias.
Os receptive fields, estão afastados de dois pixeis, no plano de entrada, entre neurónios adjacentes. Por isso, o feature
map é uma convolução não linear sub-amostrada do plano de entrada com um núcleo de 5x5, perdendo-se alguma
informação quanto à posição das features. Esta camada assemelha-se à primeira camada do NeoCognitron [Fukushima,
1991], que extraía contornos lineares de várias orientações. Era nessa camada que se encontravam os neurónios simples,
em analogia com o sistema visual biológico.
A camada H2 é uma layer que faz uma média e sub-amostragem. É composta por quatro planos de 12x12, cada
neurónio de um plane, está ligado a 4 da layer anterior, não havendo sobreposições dos Receptive fields. Todos os
pesos, estão restringidos a ser iguais, mesmo numa única unidade. Por isso, esta layer faz uma média local, e um
subsampling de 2 para 1. Esta camada também se assemelha à segunda camada do NeoCognitron onde se proporcionava
alguma invariância de translação às features extraídas na primeira camada. Era aí que se encontravam os neurónios
complexos, também em analogia com o sistema visual biológico.
A camada H3 é composta por 12 planes, de 64 unidades cada(8x8), H3.1, H3.2,...,H3.12. Cada unidade de um
plane tem um campo receptivo de um ou dois núcleos de 5x5, em H2. Todas as unidades pertencentes a um plane, estão
restringidas a terem o mesmo peso. Os campos receptivos, estão definidos na tabela seguinte.
1
2
3
4
1
X
2
X
X
3
X
X
4
X
5
X
X
6
X
X
7
8
9
10
11
12
X
X
X
X
X
X
X
X
X
X
Tab. 2-1 - Tabela das ligações entre as camadas H2 e H3. Como se pode ver, os constrangimentos feitos às ligações para esta última camada
de extracção de features são semelhantes aos que parecem existir nos neurónios hiper-complexos do córtex visual, os quais apenas conseguem
extraír ângulos compostos por duas features lineares através da combinação dessas duas entradas. Assim, todos os neurónios da camada H3 que
recebem saídas de dois planos da camada anterior, ficam capacitados de extraírem ângulos, enquanto que os restantes com saídas dum só plano
ficam sensíveis a contornos lineares que sobram.
A camada H4 tem o mesmo papel de H2, é composta por 12 planos de 16 unidades (4x4). Esta camada faz de
novo uma sub-amostragem de 2:1.
2-7
Reconhecimento automático de caracteres
Introdução 2-8
Fig. 2-1 - Arquitectura da
rede, com as ligações das cinco
camadas totalmente adaptáveis. Esta
arquitectura é muito semelhante à da
rede NeoCognitron, que por sua vez
é semelhante à estrutura do córtex
visual biológico.
No total a rede,
devido à partilha de pesos
dentro dos planes, só tem
2578
parâmetros
independentes. É de notar
que, a rede tem 4635
unidades , 98442 ligações e
que a arquitectura anterior
proposta por LeCun [1989]
tinha
4
vezes
mais
parâmetros livres. Assim, através de constrangimentos semelhantes aos observados no córtex visual biológico, LeCun
conseguiu reduzir a quantidade de recursos neuronais necessários para representar e processar a informação visual
proveniente dos receptores sensoriais (neste caso provém de bitmaps). Esta propriedade de representações eficientes
mas fiéis do ambiente, já foi mencionada aquando do estudo do funcionamento geral do cérebro.
2.2.5.3 Resultados
Obteve-se no final, uma relação de 5.7% de caracteres rejeitados para 1% de mal classificados, no conjunto de
teste (conjunto de treino era 7291 dígitos manuscritos mais 2549 dígitos imprimidos). Só para os dígitos. O treino
demora cerca de 3 dias numa Sun Workstation usando um algoritmo de Backpropagation On-line, com uma técnica de
aceleração proposta por Newton.
2.3 Combinação de treino supervisionado e não supervisionado
2.3.1 Porquê este método?
As redes Multilayer perceptron (MLP), com o algoritmo de aprendizagem de Backpropagation, têm uma
aprendizagem supervisionada. Pode ser utilizada, como aproximador de funções, classificador, para extracção de
features ou ambos. Porém, quando aplicado ao reconhecimento de caracteres, não tem boa generalização para padrões
não treinados.
As redes de Kohonen, com aprendizagem não supervisionada, trabalham normalmente no espaço das features ,
por isso a sua performance, depende apenas do reconhecimento das features.
O Neocognitron, é classificador que pode ser treinado supervisionadamente ou não supervisionadamente. É
capaz, de reconhecer caracteres alfanuméricos com alguma deformação, mas para isso, o conjunto de treino tem que ser
escolhido criteriosamente, especialmente os padrões das features da segunda layer. Mesmo assim, a performance é
bastante sensível aos padrões escolhidos durante o treino.
2-8
Reconhecimento automático de caracteres
Introdução 2-9
Hsieh [1993], propõe uma rede neuronal para fazer o reconhecimento de caracteres, que combina a
aprendizagem supervisionada e não supervisionada. A rede é um mapa auto-organizativo hierárquico (várias layers), que
é primeiro treinado não supervisionadamente. Após este primeiro treino, a rede é capaz de distinguir elementos de
classes afastadas. Quando a rede, não consegue reconhecer padrões semelhantes, mas pertencentes a classes diferentes, é
utilizada aprendizagem supervisionada. O que se faz é encontrar as diferenças entre os padrões, e amplifica-las para se
ter uma resposta correcta. Dando diferentes factores de escala para as várias features, consegue-se amplificar as
diferenças entre os padrões, conseguindo-se assim uma boa discriminação entre eles.
2.3.2 Resultados
Hsieh [1993] treina a rede primeiro com segmentos de recta. Em seguida usou 10 padrões de cada dígito para o
treino. Cada fase de treino leva cerca de 1000 iteracções, até convergir. No fim, após comparar com uma rede treinada
com o backpropagation obtém melhores resultados, obtendo uma generalização, com 200 padrões de teste, de 93%.
O modelo obtem boa generalização, e uma boa discriminação entre padrões similares. No entanto, o autor sugere
que se pode melhorar a sua performance, usando uma técnica de "blur", semelhante à usada no Neocognitron.
2.4 Outras implementações e experiências
Além das implementações referidas acima, ainda existem muitas outras, das quais apenas vamos apontar mais
algumas que chegaram ao nosso conhecimento:
• [Garris, 1991] - Reconhecimento de dígitos isolados através do uso de funções extractoras de features
chamadas Gabor functions. Estas funções foram aliadas ao algoritmo de treino da retropropagação do erro. Este sistema
atingia taxas de reconhecimento de 99.8% para dígitos de diferentes tamanho dos treinados e 89% com uma degradação
de ruído de 15%, desses mesmos dígitos.
• [Martin, 1990] - Reconhecimento de caracteres e dígitos isolados através duma rede multi-camada treinada
pela retropropagação do erro. Aqui são usados campos receptivos com partilha de pesos (como no LeCun) que
desenvolvem sensibilidades a features orientadas, tal como no córtex visual. É interessante notar que a rede foi apenas
treinada com padrões “naturais” e não padrões especiais iniciais, como acontecia no NeoCognitron [Fukushima, 1991].
A taxa de erro atingida para o conjunto de teste, foi de 3.4%.
• [Washizawa, 1993] - Reconhecimento de padrões através da cooperação entre tarefas de geração de
saccades3 e de identificação, com uma rede de Hopfield.
• [Mori, 1990] - Reconhecimento de caracteres Kanji4 com uma rede grande, composta por muitas e pequenas
sub-redes dispostas por 3 partes. O objectivo era o reconhecimento de 3000 caracteres. O algoritmo de treino era o da
retropropagação do erro para certas sub-redes, e o algoritmo LVQ (Learning Vector Quantizer) de Kohonen [1988]. O
sistema contruído e testado aqui, era apenas intencionado para o reconhecimento de 270 caracteres Kanji, e foi proposto
para fazer parte dum sistema maior para os 3000 caracteres. A taxa de reconhecimento de teste atingiu os 92%, para
uma taxa de treino de 99%.
• [Bromley, 1993] - Melhoramento do reconhecimento de caracteres manuscritos através do treino com “lixo”.
Aqui foi testada uma rede treinada com o algoritmo da retropropagação do erro, com padrões de treino “errados” ou de
“lixo” os quais eram para ser classificados como “não pertencentes a nenhuma classe”. Ou seja, estes padrões deviam
ser rejeitados. De facto, conseguiu-se uma melhoria notória na capacidade de rejeição da rede, face a padrões mal
segmentados. Verificou-se uma melhoria da taxa de reconhecimento por código postal, que passou de 69% para 78%. O
3
Movimentos rápidos dos olhos, com o objectivo de colocar a zona foveal sobre o estímulo importante do campo visual.
4
Caracteres utilizados pelos japoneses para transmissão de ideias.
2-9
Reconhecimento automático de caracteres
Introdução 2-10
treino sem “lixo” (treino convencionalmente efectuado) levava a 10% classificações erradas com 60% de classificações
correctas, enquanto que o treino com “lixo” levava a apenas 3% de classificações erradas com os mesmos 60%
correctos. Isto evidencia a utilidade do “lixo” para melhorar a rejeição de padrões que de outra forma seriam mal
classificados. Desta forma, a rede fica também a “saber” quais os padrões errados que não cabem em nenhuma classe,
rejeitando-os simplesmente.
• [Baldi, 1993] - Reconhecimento de impressões digitais através dum algoritmo de comparação. Uma rede foi
treinada com 300 pares de impressões digitais, sendo testada com uma taxa de erro de 0.5% em 4650 pares de teste. O
algoritmo baseia-se numa estimativa Bauesian da probabilidade de igualdade de duas impressões. A rede continha
filtros de convolução e uma parte de decisão relativamente complexos. Uma comparação de duas impressões levava
cerca de 10 segundos a ser realizada, numa workstation.
• [Srinivasa, 1992] - Reconhecimento de caracteres através da combinação duma rede que proporciona
invariância, seguida de outra do tipo ART1 [Carpenter & Grossberg, 1988]. Aqui alia-se a capacidade da rede ART
poder aprender padrões desconhecidos sem destruir os outros já aprendidos, sem a necessidade de um treino global, a
uma rede capaz de fornecer invariância a esses padrões. Este sistema consegue mesmo construir um mapa intermédio de
invariância, conseguido através da rotação e translação de pesos partilhados em unidades ADALINE, o qual resolvia
casos de rotações e translações. Os resultados são muito interessantes.
• [Srinivasa, 1993] - Reconhecimento de padrões através duma rede ART modificada. Nesta rede adiciona-se
uma terceira camada F3 (além das duas F1 e F2 originais [Carpenter & Grossberg, 1988]) que é baseada na camada de
invariância utilizada no sistema de 1992.
• [Vapnik, 1993] - Reconhecimento de dígitos através da programação duma rede neuronal de duas camadas no
chip neuronal 80170 NX ETANN. O algoritmo utilizado foi uma modificação da retropropagação do erro. Foram
utilizados 4000 dígitos para treino e os melhores resultados reflectiram-se numa taxa de erro de 0.6% em 1000 dígitos
de teste, com uma taxa de rejeição de 3.6%. O tempo de processamento da rede era de 6µs.
• [Hsieh, 1993] - Reconhecimento de dígitos com uma combinação de treino supervisionado e nãosupervisionado. As camadas não-supervisionadas organizam os dígitos de entrada em grupos não necessáriamente
separados, enquanto que as camadas supervisionadas acabam por separar os grupos colados. Com uma taxa de 95% de
reconhecimento de treino, a rede reconhece 93% dos 200 dígitos de teste.
• [Neven & Aertsen] - Reconhecimento de padrões através duma rede que tem em conta conceitos relacionados
com a coincidência de disparos de neurónios corticais. Este trabalho inclui a regra de Hebb, resultados de Hubel &
Wiesel, bem como teorias mais recentes de memórias associativas que têm em conta as sincronizações das actividades
neuronais. Este trabalho é extremamente interessante para quem deseja implementar ideias relacionadas com aqueles
fenómenos de sincronização temporal.
2-10
Reconhecimento automático de caracteres
Introdução 2-11
2. INTRODUÇÃO AO RECONHECIMENTO DE CARACTERES.............................................................2-1
2.1 PORMENORES TEÓRICOS ..................................................................................................................................2-1
2.1.1 Motivação do estudo de reconhecimento de caracteres ..........................................................................2-1
2.1.2 Classificação dos sistemas de reconhecimento de caracteres .................................................................2-1
2.1.3 Psicologia da leitura................................................................................................................................2-2
2.1.4 Optical Character Recognition (OCR) ....................................................................................................2-2
2.1.5 Sistemas de reconhecimento de caracteres manuscritos .........................................................................2-2
2.1.6 Reconhecimento de caracteres isolados ..................................................................................................2-3
2.2 MÉTODOS DE RECONHECIMENTO DE CARACTERES ISOLADOS COM REDES NEURONAIS ....................................2-3
2.2.1 Definições e figuras de mérito .................................................................................................................2-3
2.2.2 Stepnet .....................................................................................................................................................2-3
2.2.2.1 Análise do Stepnet ..............................................................................................................................................2-4
2.2.2.2 Resultados...........................................................................................................................................................2-4
2.2.3 Modelos para padrões invariantes ..........................................................................................................2-4
2.2.4 Neocognitron ...........................................................................................................................................2-4
2.2.4.1 Estudo do modelo ...............................................................................................................................................2-5
2.2.4.2 Arquitectura da rede............................................................................................................................................2-5
2.2.4.3 Construção e treino da rede.................................................................................................................................2-5
2.2.4.4 Resultados e comentários....................................................................................................................................2-5
2.2.5 LeCun.......................................................................................................................................................2-6
2.2.5.1 Features e partilha de pesos ................................................................................................................................2-6
2.2.5.2 Arquitectura da rede............................................................................................................................................2-6
2.2.5.3 Resultados...........................................................................................................................................................2-8
2.3 COMBINAÇÃO DE TREINO SUPERVISIONADO E NÃO SUPERVISIONADO ..............................................................2-8
2.3.1 Porquê este método?................................................................................................................................2-8
2.3.2 Resultados................................................................................................................................................2-9
2.4 OUTRAS IMPLEMENTAÇÕES E EXPERIÊNCIAS....................................................................................................2-9
2-11
Reconhecimento automático de caracteres
Backprop para o reconhecimento de dígitos
3-1
3. Backpropagation para o reconhecimento de dígitos
Este trabalho destina-se a fazer experiências sobre a classificação dos dígitos, utilizando o algoritmo de
aprendizagem da retropropagação do erro. Serão experimentadas duas estruturas de rede, a ACON e a OCON.
3.1 Classificação com uma rede ACON
Nesta primeira parte do trabalho fizemos algumas tentativas de treino dos dígitis, com uma estrutura clássica de
rede: ACON - All Class Onde Network. Ou seja, utilizámos uma só rede para classificar as 10 classes de dígitos. Não há
muito para dizer destas experiências, restando apenas o facto de que a rede não conseguiu apresentar resultados
aceitáveis, na medida em que o treino se processava de forma extremamente difícil e morosa (mesmo com a utilização
de algoritmos acelerados - RPROP).
Como é óbvio, esta rede possuia 10 saídas (uma para cada classe), e era treinada com bitmaps de 8x8 (reduções
dos originais de 32x32). Tentativas de treino om os originais de 32x32 mostraram-se impraticáveis, não só devido ao
tempo de treino, mas também devido ao comportamento da rede em termos de erro final.
Na melhor das tentativas, apenas conseguimos fazer com que a rede aprendesse a classificar poucas dezenas de
dígitos de treino. É claro que, com tão poucos exemplos, a capacidade de generalização da rede era demasiado baixo
(menos de 50%). Qualquer tentativa de aumentar o conjunto de treino saíu frustrada, pelas razões já apontadas.
Julgamos que o problema essencial desta estrutura de rede, é o facto desta ter de aprender demasiadas classes
duma vez só, o que pode criar interferências internas na rede. Além disso, a complexidade da rede pode ser demasiada
(ligações a 100%). No findo, temos aqui 10 classificadores embebidos num só.
Fig. 3-1 - Esquema aproximado da rede ACON utilizada nas primeiras experiências, para a classificação de
dígitos. As 64 entradas eram binárias e representadas pelos pontos individuais da imagem (pixels). Cada uma das 10
saídas indicava a presença de um dos dígitos das 10 classes possíveis. Para as camadas internas, experimentámos vários
números de neurónios, desde os 5 até aos 30. Também experimentámos uma só camada interna, o que se traduziu por
uma maior velocidade de treino. No que respeita à descida do erro de saída, esta não sofreu modificações significativas.
3.2 Classificação com uma rede OCON
Nesta parte do trabalho fizemos experiências com uma estrutura especial de rede, também treinada com o
algoritmo da retropropagação do erro. Esta estrutura tem o nome de OCON - One Class One Network, e baseia-se na
utilização duma rede dedicada a cada classificação individual. Por outras palavras, vamos utilizar uma rede
independente para cada classe de saída possível.
3-1
Reconhecimento automático de caracteres
Backprop para o reconhecimento de dígitos
3-2
Como temos 10 classes de dígitos a classificar, teremos de utilizar 10 redes do tipo OCON. Esta estrutura foi
sugerida por Kung (1992) para a classificação de classes através do algoritmo da retropropagação do erro, com uma
densidade de ligações que pode ser de 100%. As vantagens desta estrutura tornam-se logo evidentes:
• Redes dedicadas e isoladas umas das outras
Esta vantagem traduz-se por um treino muito mais fácil, rápido e eficiente. Isto dever-se-á ao isolamento dos
vários classificadores, em vez de distribuir tudo pelos mesmos pesos duma rede única. Assim, o treino dum não
influencia o outro de forma destrutiva, que era o que devia estar a acontecer no caso anterior da ACON. Além disto, o
facto de apenas se ter uma saída em cada rede, o treino é mais rápido.
• Redes mais pequenas
Estas redes podem ser mais pequenas porque vão resolver problemas parciais mais pequenos, e que consistem
simplesmente na separação de duas classes: a dos dígitos “correctos” e a dos “incorrectos” para cada rede. Isto atenua o
problema da complexidade interna da rede, tanto em ligações como em modificação dos pesos, visto apenas se terem
duas classes efectivas.
• Redes treinadas independentemente
Uma outras vantagem é a de se poder treinar cada classificador OCON do forma independente dos outros, isto é,
pode-se treinar e testar um de cada vez e os resultados ficam fixos enquanto se treina a seguinte.
• Melhoria de separação/selectividade entre classes
O facto de estarmos a treinar redes que ficam sensíveis apenas a uma classe, rejeitando tudo o resto, origina a
espectativa de se obter uma melhor separação entre as 10 classes. Isto é originado por uma representação interna de
pesos que não tem de possuir sensibilidades misturadas para todas as classes, de forma a permitir a classificação
equitativa dessas 10 classes. Em vez disso, a representação interna apenas se vai preocupar em separar uma classe das
outras todas, o que permite uma maior concentração no problema (em vez da atenção distribuída da rede ACON).
Por outras palavras, as superfícies de decisão ficam muito mais simples, já que apenas são precisas duas zonas
diferentes (que poderão ser
constituídas por mais que duas
regiões separadas). Isto origina
a espectativa de que a rede terá
muito menos trabalho para
construir essas superfícies,
proporcionando também uma
classificação melhor.
Fig. 3-2 - Exemplos das
superfícies de decisão formadas por
uma rede de classificação ACON e
OCON,
respectivamente,
para
a
camada de saída. Como se pode ver, a
rede ACON mistura internamente todas as superfícies de decisão, enquanto que a rede OCON apenas tem de separar uma classe de todas as outras. É
óbvio que a segunda tem o trabalho muito mais facilitado, além de que a sua complexidade não aumenta com o aumento do número de classes; é só
acrescentar mais redes OCON.
3-2
Reconhecimento automático de caracteres
Backprop para o reconhecimento de dígitos
3-3
Fig. 3-3 - Esquema das redes OCON, cada uma
especializada numa só classe de dígitos. Esta especialização
origina a redução da complexidade de cada rede e treino
associado. No classificador final, termos uma macro-rede
formada por 10 destas redes OCON. Quando se apresenta
um dígito a classificar, ter-se-á idealmente apenas uma saída
activa.
Foi com esta estrutura de redes que
efectuámos bastantes experiências que até
originaram resultados bons. No entanto, esses
resultados estão sempre limitados pela natureza
vectorial com que estas redes treinadas com a
retropropagação olham para as suas entradas.
Basta haver uma ligeira translação, rotação ou deformação, para que o equivalente vectorial à entrada se modifique
substancialmente e origine uma saída completamente errada. É de esperar, portanto, que estas redes não generalizaem
bem para esses efeitos, a não ser que se os incluam durante a fase de treino, o que complica a representação interna da
rede (pode-se ter de aumentar o número de neurónios).
3.3 Exemplo
3.3.1 Conjuntos de treino
Em todas as experiências seguintes, utilizámos um conjunto de treino com dígitos de uma ou mais pessoas,
dígitos esses que sofreram uma tranformação do original de 32x32 da base de dados que nos foi fornecida:
Imagem original:
Threshold de redução:
Imagem de treino:
Bitmap 32x32 , monocromático.
4.
Redução para um bitmap 8x8, monocromático.
Fig. 3-4 - Exemplos de reduções de 10 dígitos, um de cada classe. Estas reduções tinham o
objectivo de reduzir a complexidade do treino. Essa redução, em termos de número de entradas é assim, de
(32x32)/(8x8) = 1024/64 = 16.
Além desta característica básica de todos os conjuntos de treino, ainda
listaremos as características particulares de cada um, para cada treino. Estas incluem o
número de dígitos de cada classe, para o conjunto de treino e para o de generalização
(teste). Estes números variavem conforme a complexidade desejada, bem como da
disponibilidade da base de dados que possuíamos. Além do conjunto de teste da
mesma pessoa utilizada para o treino, também utilizámos por vezes um segundo
conjunto de teste com dígitos duma outra pessoas que não a do treino.
3-3
Reconhecimento automático de caracteres
Backprop para o reconhecimento de dígitos
3-4
3.3.2 Método de treino e estrutura da rede
Algoritmo de treino:
Momento:
Ruído:
Inicialização:
RPROP.
Sem momento.
Sem ruído.
0,01
Nº de entradas:
Nº de saídas:
Nº de camadas:
Neurónios escondidos:
Conectividade:
64 (8x8)
1
31
4
100%.
3.3.3 Classificação de padrões de duma só pessoa
Em primeiro lugar, vamos proceder a treinos com dígitos de apenas uma pessoa. Isto é para manter a
complexidade a níveis mínimos, para se observarem os primeiros resultados desta estrutura OCON. Todas as redes
utilizadas aqui possuem 4 neurónios escondidos.
Nº de pessoas de treino: 1
Número de padrões de treino:
"0"
2
"1"
2
"2"
2
"3"
2
"4"
2
"5"
"6"
"7"
"8"
"9"
Número de padrões de generalização:
"5"
"0"
7
"6"
"1"
9
"7"
"2"
11
"8"
"3"
7
"9"
"4"
7
2
2
2
2
2
5
7
5
5
5
Número de padrões de generalização para uma segunda pessoa:
"5"
8
"0"
9
"6"
11
"1"
10
"7"
11
"2"
7
"8"
9
"3"
9
"9"
11
"4"
13
3.3.3.1 Rede para a classificação do "0"
1
Camada de entrada, escondida e de saída.
3-4
Reconhecimento automático de caracteres
Backprop para o reconhecimento de dígitos
3-5
Vamos agora treinar uma rede OCON para a classificação da classe dos dígitos “0”. Como será óbvio, neste caso
vamos desejar saídas activas sempre que aparecer esta classe. Todas as outras classes terão saídas desejadas nulas.
• Dígito de exemplo
• Resultados do treino
Nº de ciclos:
Erro quadrático médio final: 02
Taxa de reconhecimento:
Erro de generalização3 médio final:
Taxa de reconhecimento de teste:
Taxa de rec. de teste da classe "1"5:
Taxa de rec. de teste da classe "0"7:
67
100%
1,029E-01
89,7%4
0%6
100%8
Generalização para uma segunda pessoa:
Erro de generalização médio final: 2,04E-02
Taxa de reconhecimento de teste:
97,95%
Taxa de rec. de teste da classe "1": 77,77%
Taxa de rec. de teste da classe "0": 100%
Fig. 3-5 - Gráfico dos erros resultante para este treino. Como se pode ver perfeitamente, o erro de aprendizagem desce sempre, enquanto que
o de generalização estabiliza e até sobe ligeiramente, ao fim de algum tempo (30 ciclos).
• Obervações e comentários
Apesar da rede ter conseguido aprender correctamente todos os dígitos, a generalização foi um tanto ao quanto
estranha já que a rede parecia quase apenas estar especializada em dizer quais os dígitos que não eram da classe
desejada. Apenas na segunda pessoa é que ela conseguiu classificar também os dígitos desejados. Isto pode dever-se ao
2
O erro final atingiu um valor tal, que os arredondamentos já não permitem uma resolução suficiente dos valores de saída. Para efeitos
prácticos, a rede está a ter valores de saída exactamente iguais aos desejados.
3
Generalização ou teste, é a mesma coisa.
4
Esta taxa refere-se sempre à taxa total que inclui o reconhecimento dos dígitos desejados e não-desejados.
5
Classe que tem saídas desejadas activas (classe a classificar).
6
Esta taxa refere-se apenas ao reconhecimento dos dígitos da classe que deve originar saídas activas (classe desejada). Se todos fossem
reconhecidos como activos, esta taxa seria de 100%.
7
Classe que tem saídas desejadas nulas (classe não-desejada).
8
Esta taxa refere-se apenas ao reconhecimento dos dígitos da classe que deve originar saídas nulas (classe não-desejada constituída por todas
as “outras”). Se todos fossem reconhecidos como nulos, esta taxa seria de 100%.
3-5
Reconhecimento automático de caracteres
Backprop para o reconhecimento de dígitos
3-6
facto de se estarem a utilizar iguais número nas quantidades de cada dígito, pelo que os dígitos desejados ficam pouco
representados. Assim, pode acontecer que a rede fiaue mais especializada em reconhecer os dígitos não desejados, do
que os desejados.
Não valerá a pena complicar a estrutra da rede, já que esta conseguiu um erro de aprendizagem muito baixo, ou
seja, ela não está sobrecarregada e possui pesos suficientes para representar internamente o problema.
3.3.4 Resumo
Para se conseguir ter uma visão global dos resultados dos treinos até aqui efectuados, vamos agora apresentar
uma compilação numa tabela. Todos os valores referentes às taxas de reconhecimento estão arredondados. Em todos os
casos, a taxa de reconhecimento do conjunto de treino é de 100%, excepto num ou noutro caso em que era superior a
98%. De qualquer maneira, o que interessa são as taxas de generalização, pelo que omitimos aquela informação
redundante. Entre parêntesis está indicado o número de pessas que originaram os vários conjuntos de padrões (não
confundir com as notas em rodapé !).
Taxas de reconhecimento (%)9
Quantidades
esc
4
train
test
“0”
“1”
“2”
“3”
“4”
“5”
“6”
“7”
“8”
“9”
(1)
10
90.7
76.4
94.1
95.6
97.1
98.5
98.5
98.5
92.6
97.1
0/100
0/85
64/100
57/100
71/100
80/100
86/100
80/100
20/94
60/100
20
68
9811
6
118(2)
62(2)
(2)
(2)
97.9
98.97
92.85
90.8
87.8
94.9
87.8
94.9
91.8
89.8
77/100
100/99
0/100
0/100
7.6/100
8/100
0/98
54/100
11/100
9/100
91.7
55/100
4, 2
118
62
90,0
46/100
118(2)
4
62(2)
c/ ruído
95,0
73/100
4
653(10)
637(10)
6
653(10)
637(10)
4
653(10)
637(10)
96.86
98.4
81/99
97/99
96.7
84/98
c/ ruído
4
1220
(10)
637
(10)
c/ ruído e
97.1
98.4
84/99
95/99
92.2
93/92
rotações
8
1220 (10)
637(10)
c/ ruído e
91.5
91/92
rotações
6
1700(25)
9
1643(24)
97.1
98.4
O primeior valor é a taxa de reconhecimento globa de teste, enquanto que os outros dois são as parcela da taxa de reconhecimento de teste,
referente aos padrões activos e inactivos, respectivamente.
10
Para a mesma pessoa.
11
Para a segunda pessoa.
3-6
Reconhecimento automático de caracteres
84/99
Backprop para o reconhecimento de dígitos
3-7
97/99
Tab. 3-1 - Compilação dos resultados obtidos nos treinos efectuados neste capítulo.
3.4 Conclusões
De todos estes treinos podemos finamente concluir que uma rede de classificação baseada na estrutura OCON é
bastante boa no que se refere ao reconhecimento de dígitos. Claro que estes dígitos têm de estar previamente
segmentados, escalados e correctamente orientados.
No entanto, para atingir resultados bons, o tempo de treino torna-se simplemente inviável (1 dia). Além disto,
estamos certos que os dígitos de teste e treino estão demasiadamente perfeitos. Estamos certos que para dígitos algo
mais distorcidos, estas redes já não conseguíam reconhecê-los correctamente. Isto é por causa do efeito da vectorização
dos padrões de entrada, em que estes são apresentados sob a forma de vectores, não se dando importância à noção de
disposição espacial dos segmentos uns em relação aos outros. Isto será mais detalhado durante o capítulo das redes de
Kohonen, onde ocorre um efeito semelhante. No fundo, está-se a dar uma importância demasiada ao nível do ponto, em
vez de dar importância às orientações relativas dos segmentos que constituem os padrões de entrada. Assim, basta que
estes pontos mudem de posição (mantendo-se a uma disposição semelhante dos segmentos uns em relação aos outros)
para que redes deste tipo já fiquem baralhadas, devido ao movimento excessivo do ponto do espaço N-dimensional
sobre as superfíies de decisão. Neste caso, trata-se dum ponto num espaço 64-dimensional que se move por entre hiperplanos de 63 dimensões.
O ruído e um grande número de padrões tentam aumentar a tolerância dessas superfícies, mas pensamos que isto
é apenas tentar esticar a performance dum sistema que possui um handicap logo de início, no que se refere à forma de
olhar para os padrões e de lhes extraír features. O que temos de fazer, é implementar um sistema que olhe para as
entradas de forma diferente, mais invariante às posições absolutas dos pontos individuais.
3-7
Reconhecimento automático de caracteres
Backprop para o reconhecimento de dígitos
3-8
3. BACKPROPAGATION PARA O RECONHECIMENTO DE DÍGITOS...................................................3-1
3.1 CLASSIFICAÇÃO COM UMA REDE ACON ..........................................................................................................3-1
3.2 CLASSIFICAÇÃO COM UMA REDE OCON ..........................................................................................................3-1
3.3 EXEMPLO .........................................................................................................................................................3-3
3.3.1 Conjuntos de treino..................................................................................................................................3-3
3.3.2 Método de treino e estrutura da rede ......................................................................................................3-4
3.3.3 Classificação de padrões de duma só pessoa ..........................................................................................3-4
3.3.3.1 Rede para a classificação do "0" .........................................................................................................................3-4
3.3.4 Resumo.....................................................................................................................................................3-6
3.4 CONCLUSÕES ...................................................................................................................................................3-7
3-8
Reconhecimento automático de caracteres
Estudo das redes de Kohonen
4-1
4. Estudo das redes de Kohonen
4.1 Introdução
As redes de Kohonen, têm um treino não supervisionado, por isso, apenas os padrões de treino são fornecidos, e
a rede categoriza-os segundo uma medida de semelhança entre eles, não sendo necessários os valores desejados das
saídas.
A regra de aprendizagem não supervisionada de Kohonen, implementa o classificador K-nearest neighbour , que
normalmente funciona no espaço das features. Nas redes Kohonen, existem ligações laterais entre neurónios, usualmente
modelizadas com uma função do tipo "Mexican hat". Assim, durante as simulações não existem ligações laterais, mas
sim um algoritmo supervisor que fornece valores a partir daquela função, que produzem um efeito semelhante às
ligações laterais. As redes de Kohonen, têm um treino não supervisionado, por isso, apenas os padrões de treino são
fornecidos, e a rede categoriza-os segundo uma medida de semelhança entre eles, não sendo necessários os valores
desejados das saídas.
Nas redes Kohonen, existem ligações laterais entre neurónios, usualmente modelizadas com uma função do tipo
"Mexican hat". As ligações laterais, são responsáveis pela capacidade auto-organizativa, no domínio das features, das
redes de Kohonen. A rede vai ficar organizada de tal maneira que, neurónios físicamente adjacentes, são sensíveis a
entradas que são similares. Após bastantes apresentações dos padrões de treino, os pesos (centroides), vão amostrar o
espaço vectorial de entrada, tal que os centroides tendem a aproximar a função densidade de probabilidade dos vectores
de entrada.
4.2 Regra de aprendizagem não supervisionada de Kohonen
Para começar, pretendemos apenas lembrar alguma características da regra de aprendizagem utilizada neste tipo
de rede. Será apenas um resumo teórico muito conciso. O que nos interessará realmente, serão as experiências feitas
posteriormente para testar a performance destas redes, de forma a extraír dados úteis para a implementação do nosso
córtex visual artificial.
4.2.1 Regra proposta por Kohonen
Segundo Kohonen (1982, 1987, 1988), inicialmente os pesos são inicializados com valores random de valor
baixo. De seguida efectuam-se os seguintes passos, repetidamente.
1º passo:
Escolher um padrão de treino X=(x1, x2, ..., xN), e apresenta-lo à camada de entrada.
2º passo:
Calcular as distâncias di, entre a entrada e cada neurónio de saída j usando,
Eq. 4-1
4-1
Reconhecimento automático de caracteres
Estudo das redes de Kohonen
4-2
Onde xj(t) é o input j no tempo t, e wi,j(t) é o peso da entrada j para o neurónio de saída i no tempo t.
3ºpasso:
Escolher um neurónio de saída i* com a mínima distância entre todos os neurónios de saída, e modificar o
vector de pesos W de i* e dos seus vizinhos com a regra seguinte,
wi,j(t+1) = wi,j(t) + ε(t)(xj(t) - wi,j(t)) ,
for i ∈ Ni*, j = 1,2,...,N.
Eq. 4-2
Onde Ni*, consiste em i* e nos seus vizinhos. ε(t) é a constante de aprendizagem, usualmente menor que um.
O procedimento continua até os pesos convergirem.
4.2.2 Vizinhança modelizada por uma função tipo "Mexican hat"
A vizinhança, pode ser modelizada com uma função do tipo "Mexican hat", dada por,
Eq. 4-3
,onde r i é a localização da unidade e r i * é a localização da unidade vencedora.
O decrescimento da vizinhaça, será dado pelo decrescimento de σ, dado por,
σ ( t ) = σ i ( σ f / σ i ) t / t máx
Eq. 4-4
,onde σi é o sigma inicial, σf é o sigma final, t é o tempo e tmáx é o tempo máximo de decrescimento.
A alteração dos pesos será então dada por,
wi,j(t+1) = wi,j(t) + ∆wi,j , com ∆wi,j = εΛ(i*,i)(xp,j - wi,j)
Eq. 4-5
Fig. 4-1 - Chapéu mexicano utilizado como função de vizinhança para a
aprendizagem das redes de Kohonen. Para ligações curtas (vizinhos próximos, o seu
valor será elevado, enquanto que para ligações longas (vizinhos afastados) esse valor
será reduzido. Para as ligações longas, o valor desta função tende para zero, o que
significa que neurónios muito afastados são cada vez menos influenciados.
4.2.3 Decrescimento da constante de aprendizagem ε(t)
A função de decrescimento da constante de aprendizagem, será dada por,
ε(t) = εi (εf / εi)t/tmax Eq. 4-6
,onde
εi é o epsilon inicial, εf é o epsilon final, t é o tempo e tmáx é o tempo máximo de decrescimento.
Foi usada esta função de decrescimento, em vez da convencional ε(t) ∝ t-α, para se poder controlar o valor final e
inicial da constante de aprendizagem,. Não se pode analisar esta função com as condições impostas por Ritter(1988),
porque esta função, de decaimento da constante de aprendizagem, tem o domínio entre dois valores, inicial e final, e
tem apenas como propósito fazer a transição entre duas fases de aprendizagem distintas, que segundo Kohonen garante
uma convergência para uma solução estável. Deste modo a rapidez de decaimento é proporcional ao tempo de treino, o
que é vantajoso para se obter sempre a mesma relação entre a duração das duas fases de treino.
4-2
Reconhecimento automático de caracteres
Estudo das redes de Kohonen
4-3
4.2.4 Mecanismo de consciência
Para evitar que hajam unidades a vencer constantemente, podem-se usar mecanismos de consciência. Um método
possível, é o de penalizar a distância dos centroides ao vector de entrada, das unidades que ganham com muita
frequência. Para isso multiplica-se a distância por α(t),
α(t) = (t - u(t)) / t
Eq. 4-7
,com t, o tempo, e u(t) o número de vezes que a unidade ganhou ao longo de t.
Em experiências posteriores sobre o córtex visual artificial, vamos utilizar um limiar de disparo adaptativo que se
adapta ao nível médio dos sinais de entrada, implementando assim um mecanismo de consciência biológicamente
plausível e eficiente para os problemas em questão naquele córtex.
4.2.5 Fases de aprendizagem
Segundo Kohonen(1982), deve haver essêncialmente duas fases da aprendizagem:
-Fase de organização e espalhamento, em que os centroides se vão distribuir de uma forma ordenada pelo
espaço vectorial. Nesta fase a constante de aprendizagem e a vizinhança, devem ser altas.
-Fase de aproximação e convergência final, em que se dá a convergência final para os valores assimptóticos.
Nesta fase a constante de aprendizagem e a vizinhança, devem ser baixas.
Estas duas fases, não correspondem necessáriamente a dois treinos separados, porque podem-se usar funções
para a vizinhança e para a constante de aprendizagem que decrescem com o tempo, garantindo as duas fases de
aprendizagem.
Esta curva para a função de vizinhança tornar-se-há mais estreita com o passar do tempo de aprendizagem, para
se conseguir simular as duas fases indispensáveis à organização homogénea da rede:
Fig. 4-2 - Ilustração das várias fases pelas quais passa o
treino. Na inicialização, Todos os neurónios são sensíveis a um
certo ponto do espaço. Estas sensibilidade até estarão exactamente
sobrepostas se essa inicialização for igual para todos. Depois
duma eventual curta fase de colapso*, na fase da expansão as
sensibilidades tendem a cobrir todo o espaço de padrões, através
da acção dum chapéu mexicano largo. Na fase seguinte da
especialização, essas sensibilidades já tendem para padrões
específicos, através da diminuição do alcance da função
vizinhança (estreitamento do chapéu mexicano). No final do
treino, o alcance reduz-se mesmo a prácticamente zero, o que origina a sobreposição das sensibilidades aos padrões respectivos. Nesta fase final, o
chapéu mexicano já está tão estreito que todos os vizinhos recebem uma forte inibição, para que estes não se sintam mais atraídos pelo vencedor.
É de salientar que as ligações laterais, não têm como papel apenas, organizar o mapa de kohonen, elas garantem
acima de tudo, que os centróides se espalhem por todo o espaço dos vectores, o que é muito mais importante. Por isso é
que a vizinhança tem que ser grande no início, e pequena no fim.
Se tivermos funções de vizinhaça e de constante de aprendizagem, que decrescem com tempo, demonstra-se que
os pesos tendem para uma solução estável, se a função de constante de aprendizagem verificar algumas condições, ver .
*
Problema observado nas experiências com as redes Kohonen, em que os atractores ficavam todos no centro do espaço de padrões, devido a
uma vizinhança incial demasiado elevada.
4-3
Reconhecimento automático de caracteres
Estudo das redes de Kohonen
4-4
Por exemplo, segundo Ritter (1988), se a função da constante de aprendizagem for do tipo ε(t)∝t-α, garante-se a
convergência para uma solução estável desejada.
Segundo Kohonen (1982), o valor da constante de aprendizagem apenas vai implicar uma convergência mais
rápida ou mais lenta.
4.2.6 Noção de erro
Para conseguirmos obter valores numéricos que traduzissem o estado de progressão do treino nestas redes,
definimos um valor de erro que dá o nível de distribuição dos atractores pelos padrões. Este valor apenas entra em conta
com a proximidade dos atractores em relação aos respectivos padrões, sem entrar com as eventuais más-formações e
atropelamentos desses atractores:
Error =
∑ε ,
j
j
c o m εj =
com j ∈ [1..nºpadrões],
∑ (x
n
n
− o n* ) 2
Eq. 4-8,
n ∈ [1..nºdimensões], n* = atractor mais próximo
Esta equação diz que o erro total será a soma dos erros parciais, em que cada erro parcial é a distância Euclidiana
do padrão n ao atractor mais próximo. Obtém-se assim, uma espécie de indicação do grau médio de representação dos
padrões pelos atractores. No NeuroCAD ainda se normalizou este valor final do erro, dividindo-o pelo nº de padrões, de
forma a torná-lo independente desse número. Assim já se podem realizar comparações entre diferentes redes e padrões.
4.2.7 Efeitos especiais
Existem alguns efeitos especiais que podem surgir com frequência durante aprendizagens deste tipo de rede.
Estes efeitos precisam ser evitados ou minorados, o que só pode ser conseguido com sucesso, se se conhecerem as
causas, pelo que os passaremos a enunciar e explicar.
4.2.7.1 Efeito de amplificação
Este efeito relaciona-se com a distribuição dos centróides (recursos neuronais) e que é função da frequência de
padrões de entrada mapeados no espaço durante a adaptação da rede. Kohonen (1982) mostrou que este factor de
amplificação é aproximadamente proporcional áquela frequência, o que significa que os recursos duma rede são
utilizados óptimamente de acordo com as necessidades.
Fig. 4-3 - Exemplo de aprendizagem onde a distribuição dos padrões não era
constante, de forma a simular frequências diferentes de eventos. Pode-se observar
perfeitamente que houve uma maior alocação de centróides para a zona de maior concentração
de padrões. As restantes zonas receberam menos atenção por parte daqueles, alocando-se
apenas um mínimo de centróides que permita uma representação boa. Desta forma, a
“acuidade” de representação é maior para a primeira zona referida, tal como acontece no
córtex visual.
Este efeito é prontamente observado no córtex visual, onde a zona
foveal retiniana possui um factor de amplificação no córtex visual muito
maior que a zona periférica. Isto será devido ao facto desta zona possuir
4-4
Reconhecimento automático de caracteres
Estudo das redes de Kohonen
4-5
mais receptores e de ser constantemente direccionada para os estímulos importantes (através dum gerador saccádico
que movimenta os olhos), o que resulta num fluxo de dados muito maior nas respectivas fibras nervosas aferentes que
vão ligar ao córtex. O cérebro viu automáticamente que era necessário alocar mais recursos neuronais para estas fibras,
pois era delas que vinham os dados importantes a serem analisados. Desta forma, é garantida uma grande acuidade
visual para a zona foveal, enquanto que a zona periféria só necessita do mínimo de recursos que permitam depois a
geração correcta das saccades (movimentos dos olhos para os estímulos importantes). Isto será visto com detalhe num
capítulo posterior.
4.2.7.2 Efeito fronteira
Segundo Kohonen (1982), as bordas das camadas de neurónios, causam deformações no espalhamento dos
mapas de kohonen. Este efeito evidencia-se por uma contracção das bordas para dentro, o que causa deformações na
função de distribuição espacial.
Este efeito é causado pelo facto do conjunto de neurónios e respectivos centróides terem as zonas periféricas sem
qualquer vizinho exterior, isto é, os neurónios periféricos possuem menos vizinhos que os interiores. Desta forma, vai
haver uma atracção maior para o interior do que para o exterior, o que resulta na tal contracção dessas bordas para o
interior do mapa. Este efeito é ainda pior nos bicos do array de centróides, porque aqui ainda há um maior desequilíbrio
de vizinhos.
Fig. 4-4 - Exemplo de formação do mapa de centróides, em que se nota perfeitamente o efeito
fronteira nos bicos do array em forma de “L”. Estes bicos ficaram mais para dentro do que os
restantes centróides das bordas. Alguns centróides dessas bordas também ficaram bastante para
dentro.
As redes neuronais no cérebro não possuem bordas deste género. Essas
bordas são geradas neste modelo de Kohonen, só porque se tem de ter um array
de unidades com princípio meio e fim. Estruturas circulares poderiam
eventualmente minorar o problema, mas a respectiva distribuição do mapa de
centróides ficaria um tanto ao quanto estranho. Para arrays de neurónios, o
ideal será ter uma forma do array semelhante à distribuição espacial dos
padrões de entrada. No entanto, esses padrões também possuem bordas, pelo
que haverá ainda uma segunda componente neste efeito.
4.2.7.3 Efeito de colapso
Segundo Kohonen (1982), quando as interacções laterais são muito grandes, dá-se o fenómeno de colapso. Este
efeito evidencia-se por um não espalhamento dos centróides, ficando todos concentrados numa zona muito pequena do
espaço dos vectores. Isto é causado por um alcance demasiado longo das ligações laterais, o que origina atracções dum
centróide em todas as direcções com magnitude semelhante. Por outras palavras, não havendo sentido previligiado, o
centróide mantém a sua posição. O mesmo accontece com os restantes que ficarão sujeitos a atracções semelhantes ao
primeiro, ficando assim todos mais ou menos juntos no mesmo local.
Fig. 4-5 - Exemplo de aprendizagem em que o efeito de colapso foi demasiado dominador, não
permitindo nunca uma distribuição dos centróides. Este ficaram todos concentrados numa área muito
4-5
Reconhecimento automático de caracteres
Estudo das redes de Kohonen
4-6
pequena do espaço. Isto significa que a função vizinhança nunca encolheu o suficiente, ou então já não foi a tempo de permitir a distribuição.
Este efeito é eliminado através da redução da largura do efeito excitatório da função de vizinhança, Muitas vezes
acontece nas aprendizagens, que inicialmente os centróides estão colapsados, começando a distribuir-se bem logo que
tenha passado algum tempo e a função vizinhança comece a “encolher”.
4.2.7.4 Efeito de pinch*
Este efeito é traduzido pela concentração dos centróides num anel que se expande, e é originado quando as
ligações laterais possuem um alcance demasiado curto. Isto resulta em picos de actividade, usualmente em neurónios
afastados uns dos outros, o que origina correcções contraditórias nos outros centróides.
Fig. 4-6 - Um exemplo [Kohonen, 1982] duma distribuição dos centróides do pesos quando houve o
efeito de pinch. Este efeito nunca nos aconteceu devido a termos ligações laterais que se extendem por todo o
array de neurónios.
4.2.7.5 Efeito da focalização
Este efeito é o oposto do efeito de colapso, e que é caracterizado por um ou mais neurónios que tomam as rédeas
e que se especializam logo em alguns padrões, não dando hipótese a outros neurónios de se aproximarem.
Este efeito é causado pelo facto das ligações laterais serem demasiado fracas. Isso origina fracas atracções,
permitindo apenas ao vencedor uma aproximação aos padrões. Assim, pode acontecer que poucos neurónios fiquem
especializados em grandes áreas de padrões.
Fig. 4-7 - Alguns atractores especializaram-se, enquanto que os restantes não saem
do lugar.
Para evitar este efeito, deve-se partir com uma largura
suficientemente grande da função vizinhança. Esta largura será
determinada experimentalmente, de forma a evitar também um efeito
inicial de colapso demasiadamente pronunciado.
4.3 Testes experimentais
*
Pinch significa “beliscar”, que neste contexto pode ser visto como um ajuntamento dos centróides através da acção compressora do
“beliscar”..
4-6
Reconhecimento automático de caracteres
Estudo das redes de Kohonen
4-7
Vamos agora proceder a um conjunto de esperiências que nos permitam tirar algumas conclusões ácerca dos
valores a utilizar para os treinos com a rede Kohonen. Entre estes valores, podemos contar os seguintes:
• Constante de aprendizagem - ε.
• Constantes da função de vizinhança - Sigmai, Sigmaf.
• Constante de tempo da função de vizinhança.
Além de achar valores apropriados para estas constantes, também iremos verificar alguns dos efeitos explicados
anteriormente, bem como observar dum modo geral a progressão da aprendizagem deste tipo de rede. Conhecer o
comportamento das redes Kohonen será muito importante para a parte da implementação do córtex visual artificial, já
que iremos aí utilizar a topologia destas redes, ainda que com uma regra diferente.
4.3.1 Exemplo da progressão do treino de um “T”
Para esta primeira experiência, vamos usar um conjunto de treino em forma de “T”, apenas para mostrar a
progressão da disposição dos centróides ao longo do tempo. Neste caso já utilizámos valores correctos para as diversas
grandezas importantes para a aprendizagem, pelo que a progressão apresenta a natureza desejada.
4.3.1.1 Conjunto de treino e parâmetros
O Conjunto de treino é em forma de “T”, com 39 padrões em 2D. Este conjunto de treino possui cantos
aguçados, o que originará os tais efeitos de fronteira já mencionados.
Parâmetros da rede:
• Camada de entrada com 2 unidades.
• Camada de saída quadrada com 4x4 = 16 neurónios.
• Pesos inicializados random entre -1÷1.
Parâmetros de treino:
• Epsilon = 0.1 (decrease factor = 0).
• Sem consciência.
• Sigma inicial = 3.
• Sigma final = 0.3.
• Constante de tempo da função vizinhança = 30 ciclos.
4.3.1.2 Progressão do treino
Vamos aqui apresentar as várias fases do treino:
Fig. 4-8 - Estado inicial dos atractores (centróides) no NeuroCAD. Como se pode verifiar, estes
aparecem todos em volta do centro por terem sido inicializados aletóriamente com valores reduzidos.
Assim, como estão todos aproximadamente a meio do “T”, é de esperar que aqueles se espalhem de
forma uniforme em todas as direcções.
4-7
Reconhecimento automático de caracteres
Estudo das redes de Kohonen
4-8
Fig. 4-9 - Estado ao fim de 3 ciclos* de treino. Já se pode observar que os centróides estão a
adquirir um espalhamente uniforme e ordenado (não há nenhum atropelamento/ultrapassagem).
Fig. 4-10 - Estado ao fim de 8 ciclos de treino. O atractores continuam-se a expandir duma forma
uniforme e ordenada.
Fig. 4-11 - Estado ao fim de 13 ciclos. Os atractores já começam a tentar adquirir a forma da
distribuição espacial dos padrões em “T”. Pode-se observar que o vértice superior destes atractores se
começa a achatar, de forma a se adaptar à distribuição horizontal da parte de cima do “T”. Enquanto isso, os
outros três vértices tentam atingir as pontas do “T”, pelo que não achatam. Note-se que a forma da camada
de saída à qual correspondem estes atractores, é quadrada com 4x4 neurónios.
Fig. 4-12 - Estado ao fim de 26 ciclos. O vértice superior ficou já quase completamente achatado,
enquanto que os atractores estão a distribuir-se duma forma regular e ordenada. Até aqui, a função
vizinhança ainda era muito larga.
Fig. 4-13 - Estado final após 60 ciclos. Nesta fase final, já a função de vizinhança se tinha
encolhido, pelo que de deixou de ter a distribuição uniforme de atactores, passando-se a ter uma distribuição
mais ou menos especializada. Nesta especialização, cada atractor já só é atraído pelos padrões imediatamente
circundantes, pelo que há duas situações: 1-o atractor fica em cima dum padrão porque não precisa de
contemplar outros (há outros atractores que tratam desses); 2-o atractor fica no meio de dois ou mais padrões
por não haver outros atractores por perto que possam tratar também desses padrões.
*
Cada ciclo corresponde a uma passagem completa pelo conjunto de treino (39 iterações).
4-8
Reconhecimento automático de caracteres
Estudo das redes de Kohonen
4-9
Como se pode ver, os 16 atractores distribuiram-se pelos 39 padrões duma forma mais ou menos ordenada e
uniforme, cobrindo todo o espaço ocupado pelos padrões. Outras experiências posteriores vão mostrar que este tipo de
rede aliada à respectiva regra de aprendizagem, origina uma distribuição de atractores que contempla todos os padrões
de entrada sem deixar nenhum de fora. O pior que pode acontecer, é não haver atractores suficientes a ficarem alguns
especializados num grupo de vários padrões.
4.3.2 Influência da forma da camada e dos padrões de treino
Era de esperar, devido às características da rede de Kohonen, que os atractores se espalhássem de uma forma
organizada, representando a função de probabilidades dos vectores de treino. Porém, como os neurónios estão dispostos
em forma de plano, formando linhas verticais e horizontais, a sua disposição vai condicionar a distribuição final dos
atractores.
4.3.2.1 Treino de um “T” com neurónios pertencentes a um plano 8x8
Parâmetros da rede:
• Output Layer: 64 neurónios [8x8]
• Input Layer: 2 entradas
Parâmetros de treino:
• Nº de padrões: 38
• Sigma Inicial = 4
• Sigma final = 0.4
• Epsilon Inicial = 0.8
• Epsilon Final = 0.08
• Tempo de Decrescimento = 20 ciclos
• Consciência = ON
• Apresentação de padrões = Sequencial
• Inicialização de pesos = random [-1÷1]
(O epsilon tem um decrescimento semelhante ao de sigma)
Tempo de treino = 20 ciclos
Grf. 4-1 - Gráfico do erro médio ao longo do tempo. Como se vê, o treino
destas redes parece que conduz sempre a estados sucessivos de menor erro. Isto
parece óbvio se pensarmos que os atractores estão sempre a aproximarem-se dos
padrões. O que poderia eventualmente acontecer, é que a fase final da
especialização trouxesse um aumento posterior deste erro, o que não se verivicou.
4-9
Reconhecimento automático de caracteres
Estudo das redes de Kohonen
4-10
Fig. 4-14 - Disposição final dos atractores. Uma distribuição bastante uniforme e sem atropelamentos, o que traduz uma boa aprendizagem.
Nota-se que a disposição dos neurónios não é nada favorável para a
representação do T, porque nas partes laterais inferiores, onde não há
padrões de treino, devido à disposição dos atractores, estes têm tendência a
ficarem de fora. Este condicionamento, na parte inferior, não vai deixar que
os atractores se espalhem devidamente na parte superior, devido à atracção
dos neurónios inferiores. Torna-se claro que para uma representação
perfeita, os neurónios deviam estar dispostos em forma de T.
4.3.2.2 Treino de um “T” com neurónios
pertencentes a um plano 16X4
Fig. 4-15 - Disposição dos atractores pelos padrões de treino, no final deste.
Como se pode observar, e tendo também em conta o valor final do erro, verificou-se
que os atractores se conseguiram distribuir muito bem pelos padrões, apesar da forma
diferente da camada de saída. Verifica-se que esta disposição dos neurónios também
não é favorável à distribuição dos neurónios de uma forma totalmente organizada. No
entanto, verifica-se que mesmo em condições adversas os atractores espalham-se por
todo o espaço representativo do conjunto de treino. Isto é extremamente importante
quando se deseja uma fiel representação dos padrões através dum conjunto de
atractores.
4.3.3 Influência da consciência na aprendizagem
Agora, vamos proceder ao estudo da influência do mecanismo de consciência no processo de aprendizagem da
rede Kohonen. Para isso, vamos fazer uso de um caso muito simples.
4.3.3.1 Treino de um rectângulo usando consciência
Fig. 4-16 - Disposição dos atractores, após um treino com consciência.
4-10
Reconhecimento automático de caracteres
Estudo das redes de Kohonen
4-11
Consciência = OFF
Tempo de treino = 20 ciclos
Fig. 4-17 - Disposição dos atractores, após um treino sem consciência.
Se se olhar com atenção, verifica-se que do lado direito os atractores se aproximam mais dos padrões de treino
exteriores quando treinados com a consciência. Isto deve-se, à consciência aplicada aos neurónios, provocando um
espalhamento maior. No entanto, pode-se dizer que o efeito da consciência não foi muito relevante para o resultado
final.
4.3.4 Estudo da vizinhança
Aqui vamos estudar os diferentes efeitos causados por diferentes parâmetros para a função de vizinhança. Um
dos efeitos degradantes observados, vai ser o colapso.
4.3.4.1 Treino de um “L” com vizinhança grande mas decrescente
•
•
•
•
•
Sigma Inicial = 8
Sigma final = 0.8
Epsilon Inicial = 0.8
Epsilon Final = 0.08
Tempo de Decrescimento = 20
Fig. 4-18 - Disposição dos atractores no final do treino. Se se comparar este resultado,
com o efectuado nas mesmas condições mas com uma vizinhaça inicial e final com metade do
valor, pode-se verificar que neste caso a expansão dos atractores não foi tão satisfactória como a
anterior. Isto deve-se ao facto do sigma inicial ser muito elevado, assim dá-se um fenómeno de
colapso nos momentos iniciais, em que o sigma é grande. Por isso, quando o sigma atinge
valores mais baixos, começando a sair do colapso, o valor de epsilon já decresceu, provocando
uma aprendizagem menor.
Como "Thumb Rule", pode-se dizer que se obtêm bons resultados se
se usar para vizinhança inicial, metade do lado do plano que contém os
neurónios (Ex: Um plano 4x4 terá como sigma inicial 2). s outras "Thumb
Rules", usadas até aqui como aproximação inicial são:
-Ter uma relação entre o sigma inicial e o final de uma ordem de
grandeza.
-Ter uma relação entre o epsilon inicial e o final de uma ordem de
grandeza.
4.3.4.2 Treino de um “L” com vizinhança fixa baixa
4-11
Reconhecimento automático de caracteres
• Sigma Inicial = 1
• Sigma final = 1
• Epsilon Inicial = 0.8
Estudo das redes de Kohonen
4-12
• Epsilon Final = 0.08
• Tempo de Decrescimento = 20
Fig. 4-19 - Disposição dos atractores ao fim de 20 ciclos.
4.3.4.3 Treino de um “L” com vizinhança fixa elevada
Nesta experiência, vamos poder observar o efeito curioso do colapso, explicado anteriormente. Para isso,
contribuem valores de Sigma elevados demais.
Parâmetros da rede:
• Sigma Inicial = 6
• Sigma final = 6
• Epsilon Inicial = 0.8
• Epsilon Final = 0.08
• Tempo de Decrescimento = 20
Fig. 4-20 - Disposição dos atractores. Neste caso, houve um colapso, porque a vizinhança tem
um valor elevado durante todo o treino. Torna-se evidente, que como há uma grande interacção lateral
entre neurónios, os atractores tenham valores muito parecidos, explicando-se assim o fenómeno de
colapso ocorrido.
4.3.4.4 Treino de um “L” com vizinhança fixa de 2
• Sigma Inicial = 2
• Sigma final = 2
• Epsilon Inicial = 0.8
• Epsilon Final = 0.08
• Tempo de Decrescimento = 20
4-12
Reconhecimento automático de caracteres
Estudo das redes de Kohonen
4-13
Fig. 4-21 - Disposição dos atractores. Verifica-se que, com um Sigma igual a dois consegue-se
uma primeira fase de organização tal como desejado. Porém, a segunda fase de aproximação e
especialização, não chega a ter lugar, pois a vizinhança entre neurónios continua a ser grande,
obrigando apesar de tudo que os atractores sejam semelhantes entre si. É necessário então, que a
vizinhança desça para que a segunda parte do treino se efectue.
4.3.5 Estudo da constante de aprendizagem Epsilon
Passamos agora para as experiências que tentam explorar os efeitos de valores diferentes para a constante de
aprendizagem epsilon.
4.3.5.1 Treino de um “L” com epsilon fixo elevado
• Sigma Inicial = 4
• Sigma final = 0.4
• Epsilon Inicial = 0.8
• Epsilon Final = 0.8
• Tempo de Decrescimento = 20
Fig. 4-22 - Disposição dos atractores. Como se pode ver, há uma distribuição dos atractores por
todo o espaço dos vectores de entrada. Porém com um epsilon constante, os atractores ficam muito mais
especializados num determinado padrão, do que no caso com decrescimento do epsilon. O grande senão
de manter o espilon fixo, é o problema de haver uma "desorganização" dos atractores. Isto pode-se
verificar especialmente nas bordas inferior e lateral esquerda, em que há zonas de aglomerados de
atractores.
4.3.5.2 Treino de um “L” com epsilon fixo baixo
• Sigma Inicial = 4
• Sigma final = 0.4
• Epsilon Inicial = 0.1
• Epsilon Final = 0.1
• Tempo de Decrescimento = 20
4-13
Reconhecimento automático de caracteres
Estudo das redes de Kohonen
4-14
Fig. 4-23 - Disposição dos atractores. Apesar da constante de aprendizagem ser menor, como esta ainda
era suficientemente grande, provocou uma especialização dos neurónios, tal como no caso em que se usou um
espilon elevado. Só o tempo que demora a atingir essa especilização é que é maior. Verifica-se um estado de
desordem ainda elevado, explicável pelo facto do epsilon ser demasiado pequeno, durante a primeira fase de
organização.
Destes resultados e de outras experiências, pode-se concluir que o epsilon vai
controlar, essencialmente, a velocidade com que os atractores se aproximam do estado
final de aprendizagem. Verifica-se que, com o epsilon fixo se obtém, desde que este seja suficientemente elevado, uma
especialização elevada. O grande problema da especialização é que usualmente está associada a um estado de desordem
não desejado.
4.3.6 Estudo do tempo de decrescimento
Vamos agora estudar os efeitos resultantes de diferentes tempos de decrescimento, tanto para a função de
vizinhança como para a epsilon.
4.3.6.1 Treino de um “L” com um tempo de decrescimento elevado
• Sigma Inicial = 4
• Sigma final = 0.4
• Epsilon Inicial = 0.8
• Epsilon Final = 0.08
• Tempo de Decrescimento = 40
Para efeitos de comparação, apresentamos primeiro um treino anterior, onde o tempo de decrescimento era de 20
ciclos:
Fig. 4-24 - Disposição dos atractores para o treino de um “L” com um tempo de
decrescimento de 20 ciclos e erro final de 5.0E-02.
Para a experiência feita neste ponto, obtivémos:
Tempo de treino = 40 ciclos
Erro quadrático médio final : 3.6E-02
Fig. 4-25 - Disposição dos atractores para o treino do “L” com um tempo de decrescimento elevado.
Olhando com atenção, e pelos erros quadráticos médios, verifica-se que usando
um tempo de decrescimento mais elevado se obtém uma distribuição mais alargada,
mantendo uma boa organização dos atractores.
4-14
Reconhecimento automático de caracteres
Estudo das redes de Kohonen
4-15
4.3.6.2 Treino de um “L” com um tempo de decrescimento baixo
• Sigma Inicial = 4
• Sigma final = 0.4
• Epsilon Inicial = 0.8
• Epsilon Final = 0.08
• Tempo de Decrescimento = 10
Fig. 4-26 - Disposição dos atractores para o treino dum “L” com um tempo de
decrescimento reduzido. Como se vê, devido ao decréscimo bastante acelerado, quer do sigma
quer do epsilon, os atractores não ocuparam de uma forma organizada todo o L.
4.3.7 Estudo do efeito da densidade de padrões
Até agora, apenas tínhamos efectuado treinos com uma distribuição uniforme dos padrões de treino. Neste ponto,
vamos verificar certos comportamentos da distribuição dos atractores, na presença de distribuições não-uniformes dos
padrões de treino.
4.3.7.1 Treino de um “L”
Fig. 4-27 - Distribuição dos atractores no treino dum “L” com
densidades diferentes. Nota-se pela figura, uma grande deformação devido à
diferença de densidade de padrões na parte superior do “L”. Mas, é de notar
que os padrões continuam a estar relativamente bem representados pelos
atractores, e há uma organização evidente destes.
4.3.8 Treino com menos atractores que padrões de treino
4-15
Reconhecimento automático de caracteres
Estudo das redes de Kohonen
4-16
4.3.8.1 Treino do “L”
Parâmetros da rede:
• Output Layer: 16 neurónios [4x4]
• Input Layer: 2 entradas
Parâmetros de treino:
• Nº de padrões: 37
• Sigma Inicial = 2
• Sigma final = 0.2
• Epsilon Inicial = 0.8
• Epsilon Final = 0.08
• Tempo de Decrescimento = 20
• Consciência = ON
• Apresentação de padrões = Sequêncial
• Inicialização de pesos = random [máx=1]
Tempo de treino = 20 ciclos
Erro quadrático médio: 3.7E-01
Fig. 4-28 - Disposição dos atractores. Como se pode ver, os centroides cobrem todo o espaço dos
vectores de treino. A organização, não é tão perfeita devido às ligações entre eles estarem "esticadas", mas
ainda é relevante.
4.4 Conclusões
Verificou-se que este tipo de rede consegue efectuar organizações muito boas, para o caso de entradas a duas
dimensões. Aqui não se observa o efeito da visão vectorial das entradas. No entanto, para entradas com muito mais
dimensões, já o facto dessas entradas serem vectoriais trás problemas organizacionais. Este problema do modo de olhar
para as entradas, já foi referido no capítulo dos treinos de redes com a retro-propagação do erro. Estes problemas
prendem-se com o facto de padrões parecidos não ficarem próximos, ou seja, não se observa uma organização suave do
mapa de centróides. Pelo contrário, parece resultar uma desorganização visual, mesmo que em termos vectoriais haja
organização correcta. O cerne da questão, é que dois vectores próximos em termos de módulo, podem não ser próximos
nos seus aspectos visuais. E como a rede de Kohonen organiza as entradas nos primeiros termos (proximidade
vectorial), não teremos os resultados esperados e desejados.
Além deste problema básico, cuja resolução envolveria mecanismos especiais e morosos para o cálculo do
vencedor, olhando para as entradas duma forma mais espacial a 2D do que vectorial, ainda existe um problem muito
pior e que foi decisivo para a não utilização deste tipo de aprendizagem para o nosso córtex visual artificial: é que esta
regra de aprendizagem tenta sempre fazer com que os pesos se aproximem dos padrões de entrada, em que a actividade
dos neurónios depende de quão semelhantes são os pesos e o padrão de entrada. Isto significa que as entradas nulas
também fazem parte dos padrões de entrada, o que não é de forma nenhuma o caso da visão. Na visão, apenas
4-16
Reconhecimento automático de caracteres
Estudo das redes de Kohonen
4-17
interessam os estímulos própriamente ditos, e não as zonas inactivas na entrada. Os neurónios corticais devem aprender
apenas com os estímulos e devem ficar sensíveis a estes. Não queremos que a quantidade de inactividade vá influenciar
a aprendizagem quando não deve, de facto.
No fim das ideias para eventuais soluções implementáveis, chegámos à conclusão que este processo de
aprendizagem não serve aos nossos propósitos para a aprendizagem dum córtex visual artificial. A regra de Hebb será a
regra de aprendizagem escolhida, já que esta regra só olha para os estímulos, ficando inactiva para as inactividades
(zeros, ou entradas nulas). De qualquer forma a topologia destas redes de Kohonen será utilizada no córtex visual
artificial que iremos implementar e treinar posteriormente. Os resultados relativos às constantes de tempo, de
aprendizagem e de vizinhança, serão tidas em conta. Mais tarde, até iremos eliminar a influência multiplicativa da
função vizinhança sobre a aprendizagem, implementando mesmo o conceito de ligações laterais fictícias. Estas irão
fazer o papel da função de vizinhança.
Fig. 4-29 - À esquerda está representada a visão vectorial binária efectuada por
uma rede que utilize uma regra que tenha em conta até os valores nulos de entrada (Ex:
regra de Kohonen). À direita já se apresenta a visão por parte duma rede que apenas tenha
em conta as entradas activas, que realmente fazem parte dum estímulo (Ex: regra de Hebb).
Ainda se poderia falar algo sobre redes Multilayer Kohonen que
mais não são do que várias camadas de Kohonen umas a seguir às outras.
Existe algum trabalho feito com redes semelhantes que utilizam aprendizagem não-supervisionada nas diversas
camadas, mas decidimos parar por aqui já que a nossa ideia de implementação do córtex visual se baseava na regra de
Hebb, pelo que estes resultados seriam redundantes para o nosso trabalho e teriam de ser reanalisados com a nova regra.
4. ESTUDO DAS REDES DE KOHONEN........................................................................................................4-1
4.1 INTRODUÇÃO ...................................................................................................................................................4-1
4.2 REGRA DE APRENDIZAGEM NÃO SUPERVISIONADA DE KOHONEN .....................................................................4-1
4.2.1 Regra proposta por Kohonen ..................................................................................................................4-1
4.2.2 Vizinhança modelizada por uma função tipo "Mexican hat" ..................................................................4-2
4.2.3 Decrescimento da constante de aprendizagem ε(t) .................................................................................4-2
4.2.4 Mecanismo de consciência ......................................................................................................................4-3
4.2.5 Fases de aprendizagem............................................................................................................................4-3
4.2.6 Noção de erro ..........................................................................................................................................4-4
4-17
Reconhecimento automático de caracteres
Estudo das redes de Kohonen
4-18
4.2.7 Efeitos especiais.......................................................................................................................................4-4
4.2.7.1 Efeito de amplificação.........................................................................................................................................4-4
4.2.7.2 Efeito fronteira ....................................................................................................................................................4-5
4.2.7.3 Efeito de colapso.................................................................................................................................................4-6
4.2.7.4 Efeito de pinch ....................................................................................................................................................4-6
4.2.7.5 Efeito da focalização ...........................................................................................................................................4-6
4.3 TESTES EXPERIMENTAIS ...................................................................................................................................4-6
4.3.1 Exemplo da progressão do treino de um “T”..........................................................................................4-7
4.3.1.1 Conjunto de treino e parâmetros .........................................................................................................................4-7
4.3.1.2 Progressão do treino............................................................................................................................................4-7
4.3.2 Influência da forma da camada e dos padrões de treino.........................................................................4-9
4.3.2.1 Treino de um “T” com neurónios pertencentes a um plano 8x8 .........................................................................4-9
4.3.2.2 reino de um “T” com neurónios pertencentes a um plano 16X4.......................................................................4-10
4.3.3 Influência da consciência na aprendizagem..........................................................................................4-10
4.3.3.1 Treino de um rectângulo usando consciência....................................................................................................4-10
4.3.4 Estudo da vizinhança.............................................................................................................................4-11
4.3.4.1 Treino de um “L” com vizinhança grande mas decrescente..............................................................................4-11
4.3.4.2 Treino de um “L” com vizinhança fixa baixa....................................................................................................4-11
4.3.4.3 Treino de um “L” com vizinhança fixa elevada ................................................................................................4-12
4.3.4.4 Treino de um “L” com vizinhança fixa de 2 .....................................................................................................4-12
4.3.5 Estudo da constante de aprendizagem Epsilon .....................................................................................4-12
4.3.5.1 Treino de um “L” com epsilon fixo elevado .....................................................................................................4-13
4.3.5.2 Treino de um “L” com epsilon fixo baixo.........................................................................................................4-13
4.3.6 Estudo do tempo de decrescimento........................................................................................................4-13
4.3.6.1 Treino de um “L” com um tempo de decrescimento elevado............................................................................4-13
4.3.6.2 Treino de um “L” com um tempo de decrescimento baixo ...............................................................................4-14
4.3.7 Estudo do efeito da densidade de padrões.............................................................................................4-14
4.3.7.1 Treino de um “L” ..............................................................................................................................................4-15
4.3.8 Treino com menos atractores que padrões de treino.............................................................................4-15
4.3.8.1 Treino do “L”....................................................................................................................................................4-15
4.4 CONCLUSÕES...........................................................................................................................................4-16
4-18
Reconhecimento automático de caracteres
Estudo do sistema visual
5-1
5. Estudo do sistema visual
Neste trabalho, vamo-nos debruçar sobre os vários aspectos dos mecanismos da visão biológica, i.e. a visão
animal (incluindo a humana). Com esta parte, esperamos obter mais alguma informação útil que nos ajude a decidir o
caminho a tomar para o reconhecimento automático de caracteres, especialmente no que se refere aos aspectos de
invariância, segmentação e campos receptivos.
Como apenas estamos interessados em obter infromação a preto-e-branco, não nos debruçaremos tanto sobre os
aspectos da visão de cores. Também não focaremos os aspectos ópticos do olho, concentrando-nos mais específicamente
na retina e nos processos cerebrais da visão. Finalmente, ignoraremos todas as informações referentes à binocularidade e
efeitos resultantes.
Todos os resultados e conclusões são referidos a animais como o gato, o macaco e o próprio homem. Outros
animais podem ter funções cerebrais incluídas na própria retina.
5.1 Introdução
Uma corrente, afirmava que o conhecimento é inato devido à evolução de milhões de anos dos animais. Outra
dizia que o cérebro é um quadro em branco, que aprende com os anos e com associações. O mais correcto é afirmar que
é uma conjugação das duas ideias.
Os bebés podem ver luzes, cor e movimento, mas não podem responder a estímulos tipo forma estranha, e solidez
(formas). Os pássaros identificam objectos tridimensionais e dão preferência aos parecidos aos bicos dos pais.
A área visual do cérebro e os nervos ópticos, estão pobremente desenvolvidos quando nascem. Só com o tempo é
que a agudeza visual aumenta, e se começa, por exemplo, a perceber traços cada vez mais finos.
Experiências com animais mostram, que se mantiverem às escuras depois de nascer, perdem a capacidade de
sentir a comida.
Os bebés, preferem ver desenhos com caras reais do que desenhos com os elementos da cara todos misturados.
Partes diferentes do cérebro estão ligadas de maneiras diferentes pelo que não vale a pena usar, por exemplo,
uma característica do bolbo olfactório, outra do tálamo e uma terceira do cerebelo combinando-as para se obter uma
tarefa que o cortex faça.
Os estudos noutros mamíferos, normalmente o macaco, sobre o seu sistema visual são aplicáveis ao homem,
porque estudos psicológicos mostram que a performance do sistema visual dos macacos é semelhante ao nosso.
5.2 A retina
Como se sabe, a retina é uma fina camada de células situada na parte de trás do olho, onde se transformam os
sinais de luz em sinais eléctricos interpretáveis pelo cérebro. Além desta simples transformação de formas de energia
diferentes, também se dá lugar ao primeiro processamento de sinal.
Além de descrevermos a anatomia da retina, vamo-nos centrar mais sobre o seu funcionamento em geral.
Interessa-nos saber o tipo de tratamento que o sinal luminoso sofre até sair pelos axónios das células ganglionares, que
constituem o conhecido nervo óptico.
5-1
Reconhecimento automático de caracteres
Estudo do sistema visual
5-2
5.2.1 Anatomia da retina
A retina é a camada mais interna do globo ocular. Nesta retina existem três camadas celulares distintas, separadas
por camadas de ligações sinápticas.
5.2.1.1 Camadas na via retiniana
Tal como se disse, existem vários tipos de camadas na via retinianam desde a superfície receptora até ao nervo
óptico que levará a informação visual até ao cérebro:
• Camada de cones e bastonetes
Esta é a camada receptora própriamente dita. Os cones e bastonetes são prolongamentos de neurónios da camada
nuclear externa, pigmentados e sensíveis à luz visível. É a sensibilidade dos bastonetes que dita o limiar da visão, que é
de aproximadamente 100 quanta incidentes na córnea (o que equivale a 10 ou menos absorções na retina); bastava esta
quantidade para dar a sensação de luz [Hecht et al, 1942].
• Camada nuclear externa
É formada por neurónios dotados de prolongamentos em forma de cone ou bastonete (o que dá os seus nomes)
onde fica localizado o pigmento visual. É aqui que a luz será transformada em excitação dos respectivos neurónios, cujo
sinal viajará pelos axónios, até à camada plexiforme externa imediatamente a seguir. Nesta camada, far-se-ão as
ligações sinápticas com os neurónios da camada nuclear interna.
• Camada plexiforme externa
É uma camada de ligações sinápticas que liga a camada nuclear externa à camada nuclear externa.
• Camada nuclear interna
É formada por vários tipos de neurónios, sendo o bipolar o mais característico. Há neurónios que recebem
conexões sinápticas de cones e bastonetes, e outros que só recebem de cones (em certas regiões da retina, de um único
cone). Os axónios destes neurónios vão ligar às dendrites dos neurónios da camada ganglionar, através da camada
plexiforme interna imediatamente a seguir. Nesta camada também existem neurónios horizontais). Os neurónios
bipolares apenas possuem uma entrada, enquanto que os neurónios bipolares difusos possuem mais de uma entrada.
• Camada plexiforme interna
Mais uma vez, é uma camada de ligações sinápticas abundantes, que ligam os axóniio da camada nuclear interna
às dendrites da camada ganglionar.
• Camada ganglionar
É formada por neurónios que recebem os sinais da camada nuclear interna e cujos axónios formam o nervo
óptico que vai até ao cérebro. Este nervo óptico sai da retina através do ponto cego, que é desprovido de função visual,
e por onde também passam os vasos sanguíneos que irrigam a retina. Estes neurónios podem ser monossinápticos
(apenas uma entrada, ou podem ter mais de uma entrada.
• Células gliais
Estas células têm como função, a de preencher os espaçoes, bem como funções de apoio alimentar.
5-2
Reconhecimento automático de caracteres
Estudo do sistema visual
5-3
Fig. 5.2-1 - As camadas da retina de primatas,
segundo Polyak. São representados os diferentes tipos de
células: células horizontais (c), células bipolares difusas
(d,e,f), célula bipolar do cone (h), células amácrina (i,l),
células ganglionares (m,n,o,p,r) e célula ganglionar
monossináptica.
5.2.1.2 Organização funcional
Os cones apenas conseguem actuar sob condições de alta intensidade luminosa, sendo responsáveis pela acuidade
visual e pela visão das cores. Esta visão é conseguida mediante a apropriada pigmentação que conduz a três
sensibilidades para as três cores-base: vermelho, verde e azul. Esta visão é denominada visão de detalhes ou visão
fotóptica. Por outro lado, os bastonetes têm uma sensibilidade muito maior, permitindo a visão em condições de muito
reduzida luminosidade, mas sem distinguir cores ou detalhes. Os bastonetes possuem a sua máxima sensibilidade por
volta dos 500nm. Esta última visão, é denominada visão escotóptica.
Por exemplo, aves diurnas como a águia e o falcão, possuem uma retina rica em cones. Em contrpartida, animais
nocturnos como a coruja e o morcego, possuem uma retina predominantemente composta por bastonetes. No homem, é
evidente que se tenta sempre mover o olho de forma a que o objecto observado caia exactamente sobre a região fóvea,
pois é aí que possuímos maior acuidade visual devido à predominância de cones. Nas regiões periféricas, essa acuidade
não permite a boa distinção de detalhes. Assim, quando estamos a ler um livro, seguimos as letras com essa região,
enquanto que apenas temos uma percepção vaga da estrutura do texto em linhas (quanto mais periférico, mais vago ou
mesmo confuso).
No homem, a sensibilidade aumenta na periferia
(região periférica), devido ao predomínio de bastonetes
nessas zonas, enquanto que a zona central da retina
(região foveal) é exclusivamente populada por cones.
Contudo, estas propriedades distintivas não são apenas
determinadas por estas células, mas também pelo tipo de
conexões sinápticas nas várias camadas retinianas.
5-3
Reconhecimento automático de caracteres
Estudo do sistema visual
5-4
Grf. 5.2-1 - Distribuição dos cones e bastonetes em diferentes regiões da retina. Em abcissa encontra-se a distância (em graus) a partir da
fóvea, em direcção ao ouvido (temporal) e ao nariz (nasal).
Fig. 5.2-2 - Corte da zona foveal da retina onde predominam os
cones e já se podem distinguir as várias células que intervêm no
processamento inicial da imagem captada pelos receptores.
A apresentação destes vários tipos de células, será
feito mais tarde. Por enquanto, fica aqui apenas o aspectro
visual e as localizações dessas células.
Para os diferentes tipos de conexão presentes para os
receptores, pode-se fazer a seguinte distinção:
• Sistema dos cones
Este sistema é característico da região fóvea (região
central com predominância de cones) e apresenta-se duma
forma bem definida e linear: a cada cone corresponde um
neurónio bipolar e a cada neurónio bipolar, um neurónio
ganglionar. É, pois, uma relação de 1:1.
• Sistema dos bastonetes
Aqui, também existem relações de ligações de 1:1, mas apenas na região fóvea (poucos bastonetes) e
aumentando essa relação no sentido da periferia, podendo mesmo atingir uma relação de 250 bastonetes para um
neurónio ganglionar (250:1). Isto representa uma convergência dos estímulos provenientes desses grupos de bastonetes,
possibilitando a interação desses mesmos estímulos.
Duma forma geral, há divergências dos sinais a nível de ligações dos receptores às células bipolares, mas
globalmente existe uma forte convergência a nível da relação células ganglionares/receptores (existem cerca de 125
milhões de fotoreceptores para apenas 1 milhão de células ganglionares, o que prefaz uma relação de 125:1). Estas
combinações divergente-convergentes associadas ainda à acção das células horizontais, originam os campos receptivos*
para os neurónios processadores nas camadas seguintes, e dos quais falaremos mais à frente. Por exemplo, os campos
receptivos das células ganglionares são circulares e sobrepoem-se.
Além destas ligações e interacções já faladas, ainda existem outros tipos de neurónios que complementam essas
interacções. São os chamados neurónios horizontais (neurónios amácrinas e neurónios bipolares centrífugos) que têm
uma função associativa entre vários neurónios da mesma camada. Os axónios destas células são horizontais e podem
atingir grandes distâncias na retina, influenciando neurónios distantes conforme a actividade de neurónios locais.
Tal como mais tarde se verá, o mecanismo da visão assenta predominantemente numa detecção de contornos,
além da detecção de movimento de objectos.
5.2.2 Análise da função dos neurónios retinianos
Nesta análise, podem ser considerados dois grupos de neurónios: os da camada nuclear interna (horizontais,
bipolares e amácrinos) e os da camada ganglionar (ganglionares).
5.2.2.1 Células da camada nuclear interna
• Neurónios horizontais
*
O campo receptivo de uma célula no sistema visual, é a área da retina que, quando estimulada, provoca actividade ou inibição do neurónio
respectivo.
5-4
Reconhecimento automático de caracteres
Estudo do sistema visual
5-5
Estes neurónios têm uma actividade lenta cuja amplitude aumenta com a intensidade do estímulo. Existe um subtipo destes neurónios que é sensível ainda à cromaticidade da luz. Duma forma geral, estas células não apresentam
nenhuns traços de potenciais de acção†, nem saídas do tipo de axónios. Estas células parecem apenas influenciar outras
células através da transmissão de potencial corporal na sua árvore dendrítica. Estas dendrites ligam a células que podem
estar bastante afastadas uma das outras, realizando uma espécie de ponte resistiva.
• Neurónios bipolares
Tal como as células horizontais, estes neurónios também possuem actividades lentas e sem potenciais de acção.
No entanto, as suas respostas são diferentes:
- estímulos circulares em volta da célula bipolar em estudo, originam uma hiperpolarização‡ do neurónio
bipolar, no início do estímulo.
- estímulos em forma de anel, também à voilta do neurónio em estudo, originam agora uma despolarização§,
seguida duma repolarização.
Estes resultados experimentais evidenciam a existência de campos receptivos para estas células. Estes campos
são definidos como a área da retina que produz actividade da cálula em estudo, e que possui duas zonas de respostas
opostas e mutuamente antagónicas quando estimuladas simultâneamente (quando ambas as zonas são estimuladas, não
se regista actividade notória).
Existem também neurónios bipolares que reagem de forma oposta à descrita acima: hiperpolarizam para um
estímulo na periferia, e despolarizam para um estímulo central.
• Células amácrinas
Estes neurónios apenas possuem respostas de despolarização, podendo também mostrar potenciais de acção,
tanto no início como no fim do estímulo. Aparentemente, estas células destinam-se a detectar variações da iluminação.
Fig. 5.2-3 - A organização dos campos receptivos e tipos de respostas
das células bipolares e amácrinas, a estímulos nas diferentes zonas dos seus
campos receptivos. No caso das células bipolares, mostram-se as respostas para
tipos que hiperpolarizam quando estimuladas na zona central do campo
receptivo. Notar os potenciais de acção durante as respostas das células
amácrinas, que reagem ao início e fim do estímulo.
5.2.2.2 Células da camada ganglionar
Mostrou-se experimentalmente que estes neurónios originam potenciais de acção quando o seu campo receptivo
è estimulado. Estas respostas podem ser divididas em três tipos, que têm a sua origem dependente da posição do
estímulo no campo receptivo, e que dão o nome aos neurónios intervenientes:
• ON-Centrum-Neurons
Este tipo de neurónio ganglionar dá uma resposta que acontece durante o estímulo, se este actuar sobre a parte
central do campo receptivo (resposta ON). Estas células disparam com elevada frequência nesta situação**. Quando o
estímulo é aplicado na periferia, essas células são inibidas (hiperpolarização) e a sua frequência de repouso diminui
†
Picos de despolarização que originam picos de tensão. Para isto ocorrer, é necessário que a tensão atinja primeiro um nível de threshold.
‡
Este termo refere-se a um arranjo dos iões interiores ao neurónio de forma a originar um abaixamento extra do seu potencial, para além do
potencial de repouso. Trata-se dum agravamento do fenómeno da polarização automática do neurónio, através duma ainda maior acumulação de
carga. Nesta situação, está-se a inibir o neurónio, já que ele se afastou ainda mais do nível de disparo (threshold).
§
Este termo refere-se à repentina circulação dos iões acumulados pela polarização, o que origina um abrupto aumento de potencial do
neurónio. Logo de seguida, dá-se a repolarização que rearranja os iões nas suas posições de repouso.
**
Após uma adaptação ao estímulo luminoso, essa frequência reduz-se um pouco, mantendo-se depois num valor constante.
5-5
Reconhecimento automático de caracteres
Estudo do sistema visual
5-6
quase para zero. Quando o estímulo cessa, há uma rajada de impulsos (resposta OFF), e a frequência de disparo reduz
logo de seguida, voltando ao seu valor de repouso.
• OFF-Centrum-Neurons
Estes neurónios possuem respostas que acontecem no fim do estímulo se este actuar na periferia do campo
receptivo (resposta OFF). Se o estímulo for apresentado na periferia, aparecem impulsos a frequência elevada (resposta
ON). Aqui, processa-se tudo ao contrário do caso anterior. Estes neurónios ganglionares (aparentemente em igual
número aos do caso anterior). Aqui, há uma hiperpolarização quando o estímulo é aplicado na região central, em
oposição ao caso anterior.
• ON-OFF-Neurons
Estas respostas já acontecem para ambos os extremos do estímulo e são muito curtas. Por isso, este tipo de
células é propício para a detecção de objectos em movimento.
A estimulação simultânea das duas regiões principais (central e periférica), produz uma inibição da resposta de
cada região: o sistema é mutuamente antagonista, o que demonstra a existência de inibição lateral. No entanto, a
resposta ao estímulo central é um pouco mais forte que a do periférico, pelo que se observam alguns traços dessa
resposta, muito atenuados. Um estímulo com tamanho e posição exactamente iguais às do centro receptivo, provoca uma
maior resposta do que um estímulo maior ou menor.
Fig. 5.2-4 - Organização funcional dos campos receptivos das células
ganglionares da retina. Para a análise dos campos receptivos, foram usados pontos
de luz (branco) na zona central e perfiérica. Os estímulos produzem reacções
diferentes nos neurónios do tipo ON e OFF. Quando se estimulam ambas as regiões
(central e periférica), os processos excitatório e inibitório cancelam-se, mas o
excitatório ainda domina.
Note-se que estes efeitos são originados pelo vasto conjunto
de interacções entre os vários tipos de células: bipolares, amácrinas
e horizontais, que se influenciam umas às outras durante o caminho
do sinal. Note-se também que estas carcaterísticas dos campos
receptivos presentes nas fibras do nervo óptico, assemelham-se ao operador Laplaciano utilizado para aumentar o
contraste de imagens reais analógicas [Marr, 1982]. Este operador possui a forma δ2/δx2+δ2/δy2 para o caso presente de
apenas duas dimensões, e é denotado pelo símbolo ∇2. O que este operador faz é essencialmente ter uma saída elevada
para zonas contrastadas e uma saída reduzida para zonas mais uniformes, tal como faz a retina biológica. Este
mecanismo é utilizado em sistemas de processamento digital de imagem.
Fig. 5.2-5 - Exemplos de processamento digital de imagem, em que as imagens originais (acima)
são transformadas nos respectivos contornos apenas (abaixo).
Devido a estas reacções opostas do centro e periferia dos campos receptivos,
surge um efeito curioso que é o de aumentar o contraste entre zonas iluminadas e não-iluminadas. Parece que uma
função destas células está relacionada com o contraste de iluminação entre uma região retiniana e as regiões que a
rodeiam.
Isto pode ser prontamente verificado, ao olhar para um padrão do tipo xadrez, onde se verifica haver zonas mais
brancas junto às fronteiras entre preto e branco. De uma forma geral, pode-se dizer que estas células ganglionares são
sensíveis a contrastes.
Fig. 5.2-6 - Padrão que permite verificar a existência dum mecanismo de contrast enhance. Este é prácticamente o único
mecanismo de inter-relação de células ganglionares na retina. Na pomba o outros animais, as células ganglionares também
acumulam funções de discriminação de direcções, formas, etc.
5-6
Reconhecimento automático de caracteres
Estudo do sistema visual
5-7
De um modo geral, as células da retina são mais sensíveis ao movimento de objectos pequenos do que grandes.
Mais uma vez, isto mostra a existência das zonas antagónicas dos respectivos campos receptivos. A actividade destas
células parece fornecer a base para a detecção e discriminação de pequenos objectos no campo visual do animal.
Estes campos receptivos descritos, têm tamanhos muito diferentes. Assim, para a zona da fóvea, a parte central
pode até chegar a corresponder a apenas um cone, enquanto que nas zonas mais periféricas a parte central pode ter
diâmetros de um milímetro! As células possuidoras de pequenos campos receptivos, estão óbviamente capacitadas para
a discriminação de muito pequenos detalhes, enquanto que as células possuidoras de um campo grande estarão
provavelmente especializadas para trabalhar com luz ténue, já que podem agrupar as respostas de muitos receptores.
A seguir a uma imagem brevemente amostrada, a informação codificada como um padrão de hiper-polarizações
nos fotoreceptores, é processada na retina e codificada em trens de potênciais de acção pelas células ganglionares da
retina. Em meio segundo pode-se reconhecer um objecto na imagem. Porque os fotoreceptores são lentos, um tempo
significativo do tempo de resposta, 20-50ms, é necessário para que a informação chegue ao cortex e algumas centenas
de milisegundos para o sistema motor produzir uma resposta, o que deixa 200-300ms de processamento visual.
5.3 Mecanismos cerebrais da visão
Agora que já temos uma ideia essencial dos processos envolvidos na retina, interessa-nos saber como é que os
sinais provenientes do olho são processados no cérebro. Aqui apenas esperamos obter algumas ideias muito gerais sobre
a organização do córtex visual.
Vamos seguir o caminho daqueles sinais visuais até ao cérebro, descrevendo cada “paragem” desse sinal. Depois
seguiremos para a descrição anatómica e funcional dos vários centros nervosos de processamento doos sinais visuais.
Aqui, trataremos com especial ênfase e cuidado os vários tipo de neurónios responsáveis por aquele processamento.
Depois duma ideia geral da anatomia das zonas visuais, aprofundaremos essas questões e falaremos ainda de algumas
teorias básicas que envolvem o reconhecimento de padrões.
5.3.1 Caminho até ao cérebro
5-7
Reconhecimento automático de caracteres
Estudo do sistema visual
5-8
Já vimos que a informação visual é transmitida ao cérebro através do nervo óptico, que é constituído pelos
axónios dos neurónios ganglionares da retina (aproximadamente um milhão de fibras). Diz-se mesmo que esses
neurónios ganglionares consituem as unidades receptivas retinianas, já que é esse tipo de célula que envia a porção
elementar de informação visual. São essas células que
representam, de facto, a periferia visual vista pelo cérebro.
Fig. 5.3-1 - Esquema do caminho visual no cérebro humano. As regiões
direita e esquerda do córtex visual estão ligadas por axónios, através da zona B.
Nesta figura pode-se ver o córtex estriado que corresponde à área 17, e a área 18
(pré-estriada). As saídas do cortex para outras zonas, são sempre excitadoras.
Verifica-se, que quando há actividade numa zona do córtex, ela surge de uma
propagação de actividades verticalmente.
O tálamo é a porta de entrada para o cortex cerebral. O
tálamo é composto por um número específico de núcleos. Cada
núcleo tem entradas bem definidas, e projectam para zonas
restritas do cortex cerebral. O núcleo genicular lateral, é o centro
de entrada da retina que passa para o cortex estriático (visual). É
um núcleo laminado, bem diferenciável dos outros. Os neurónios
no núcleo genicular lateral recebem os sinais visuais dos axónios
das células gangliares da retina, que são então projectados para o
cortex estriático. À parte de umas ramificações do nervo óptico no
quiasma óptico, em que metade vai para o hemisfério oposto do
cérebro, chega intacto ao Corpus geniculatum laterale, ao
Colliculi superiores e à região pré-tectal. A partir do Corpus
geniculatum, há axónios que vão ligar ao córtex visual primário
(região 17). Daqui, o caminho segue para o córtex visual secundário (região 18) e para o córtex visual terciário onde os
sinais serão processados.
5.3.2 Mapeamento e arquitectura do córtex visual
As várias regiões visuais da retina não estão igualmente representadas no cérebro. Há uma diferente importância
atribuída a cada região, de uma forma contínua. Assim, para a região foveal, no caso do macaco, temos 1mm de córtex
para 2’ de ângulo visual. A uma distância de 5° daquela região, já a mesma área cortical corresponde a 18’ de ângulo
visual. Dessa forma, a extensão de área cortical disponível para a discriminação visual, diminui rapidamente a partir da
fóvea. No macaco, calcula-se que existem cerca de 100 neurónios corticais para cada cone, na região foveal. A acuidade
visual também está relacionada com esta relação, que reduz rapidamente para a periferia.
Tal como foi mostrado por Kohonen [1982], as redes neuronais com ligações laterais são capazes de fazer uma
alocação correcta dos recursos neuronais, de forma a pemitir uma maior capacidade de análise para as zonas que tenham
grande afluência de estímulos, como acontece com as fibras aferentes da zona foveal. Enquanto isso, a zona periférica
receberá menos atenção cortical pois não fornece estímulos com tão elevada frequência e densidade como a fóvea. Isto
será devido à fóvea conter mais receptores e devido a um gerador saccádico mover os olhos continuamente de forma a
direccionar a fóvea para os estímulos importantes. A região periférica apenas possui uma atenção cortical mínima de
forma a permitir a discriminação básica da presença de estímulos, fornecendo dados para o tal gerador mover os olhos
no sentido correcto. A zona periférica faz puco mais do que isso, porque o seu factor de ampliciação no córtex é
realmente baixo. Assim, o cérebro consegue, de facto, saber quais as zonas da retina que precisam de maior capacidade
de processamento e análise, através da afluência dos dados nervosos daquela.
5-8
Reconhecimento automático de caracteres
Estudo do sistema visual
5-9
Fig. 5.3-2 - Gráfico que exprime a variação (em milímetros) de distância
cortical para cada grau do campo visual para áreas centrais e periféricas da retina
(a excentricidade), e que é cahamdo factor de amplificação. Como se pode
verificar, para a zona da fóvea, esse factor é de 6.
Numa região do córtex chamada colliculi superiores, os
neurónios reagem preferencialmente a objectos que se movem
numa direcção particular. Aqui pode-se observar uma
arquitectura em forma de pilar nas camadas mais superficiais.
Nas camadas mais profundas, situam-se neurónios responsáveis
pela capacidade de perseguir objectos em movimento, com os
olhos.
Noutra região, chamada corpus geniculatum laterale,
também se encontram campos receptivos concêntricos, tal como
na retina. Aqui também se encontram neurónios responsáveis
pelo contraste e controlo de luminosidade.
Foi demostrado que existe uma reprodução topológica das actividades retinianas na área 17. Já na área 18 não
existe nenhuma topologia semelhante à das actividades da retina, pois as ligações que vão da área 17 para a 18 são
difusas e divergentes. Foi observado [Von Bonin, Garol e McCulloch, 1942] que uma excitação localizada, na área 17, é
conduzida para uma grande área da 18. Não existem qualquer correspondência ponto-a-ponto entre estas duas áreas. Foi
ainda observado que a excitação da área 18 é realimentada para a zonas periféricas mais próximas da área 17, para todas
as zonas da área 18 e para as áreas 19 e 20.
5.3.3 Propriedades funcionais dos neurónios visuais
Existem vários tipos de neurónios no córtex cerebral, com complexidades e funções diferentes. Para uma ideia
dos tipos de células que processam os sinais visuais, vamos apresentar alguma informação sobre cada um deles.
5.3.3.1 Neurónios geniculados
É facto por demais conhecido que a rã pode realizar várias tarefas de discriminação visual, apenas contando com
as células ganglionares retinianas. Tarefas semelhantes no homem necessitam do corpo geniculado e córtex cerebral.
Estas células geniculadas possuem, em geral, apenas uma dendrite. No entanto, no gato, elas agrupam várias
fibras do nervo óptico. Foram descobertos três tipos de células, conforme as características do seu campo receptivo:
• Tipo I
correspondendo ao tipo predominante em gatos, com centro e periferia concêntricos e mútuamente antegonistas:
centro ON, periferia OFF e vice-versa. Estas células produziam respostas diferentes para diferentes comprimentos de
onda, mas não faz parte deste capítulo, falar dos aspectos cromáticos.
5-9
Reconhecimento automático de caracteres
Estudo do sistema visual
5-10
Fig. 5.3-3 - Respostas para a célula do tipo I, do núcleo
geniculado lateral. A forma dos estímulos é representada pelo
desenho à direita e o tempo durante o qual foi aplicado, pela
linha horizontal em cima de cada traçado. Para os estímulos A-C,
o diâmetro foi de 1, 2 e 14 graus. Para D, o diâmetro externo do
anel luminoso era de 14 e o interior de 2 graus. Os traçados à
direita mostram a actividade neuronal resultante.
• Tipo II
Sem centro e periferia concêntricos, dando
respostas de cores oponentes em todas as regiões do
campo receptico. Dois subtipos foram identificados:
verde ON, azul OFF e verde OFF, azul ON.
• Tipo III
Com centro e periferia concêntricos, mas
com a mesma sensibilidade espectral em todo o
campo.
Todos estes tipos foram identifiados com a
retina adaptada à luz.
5.3.3.2 Neurónios corticais
Todos os neurónios estudados no córtex visual, podem ser classificados em três tipos: Simples, Complexos e
Hiper-complexos.
5.3.3.2.1 Neurónios simples
Estes neurónios encontram-se na região 17 do córtex visual, e possuem um campo receptivo onde existe sempre
uma área ON e outra OFF. No entanto, essas áreas nunca são circulares ou concêntricas, como occore nos campos
receptivos retinianos (ganglionares) ou geniculados. Estas células são sensíveis a barras, ranhuras e bordas.
Típicamente, o campo receptivo dos neurónios corticais simples, corresponde a uma área alongada, elíptica ou
ovalada, com o limite entre a região de respostas ON com a de respostas OFF sempre em linha recta. A relação entre as
duas regiões é variável:
• Simétricas
Uma região ocupa a posição central e é ladeada por regiões de respostas antagónicas de igual extensão (centro
ON, lados OFF e vice-versa).
• Assimétricas
Uma das regiões pode estar deslocada para um lado, deixando apenas uma delgada faixa de respostas antagónicas
no seu extremo.
• Lateralizada
As duas regiões ocupam, cada uma metade do campo receptivo.
A recta que divide as regiões pode ter qualquer orientação, desde a horizontal até à vertical.
5-10
Reconhecimento automático de caracteres
Estudo do sistema visual
5-11
Fig. 5.3-4 - Organização semelhante mas diferente de campos
receptivos geniculados e corticais simples. 1 e 2 representam campos
geniculados
já
vistos
anteriormente
(centro
ON e centro OFF,
repectivamente). 3 e 4 representam campos receptivos simétricos. 5 e 6
representam campos receptivos assimétricos. Finalmente, 7 representa o
campo receptivo lateralizado. As cruzes indicam as áreas onde a resposta é
excitatória, e as circunferências as áreas de respostas inibitória.
Estas células têm a função de detectar uma linha ou
margem com determinada orientação espacial. Caso a linha
(ou borda ou margem, qualquer limte entre claro e escuro)
usada como estímulo tenha qualquer outra orientação, parte
dela actuará sobre a região de efeitos OFF (inibidores), anulqando qualquer efeito que o restante da linha tenha sobre a
região de efeito ON (excitatório).
Fig. 5.3-5 - Efeito dum estímulo representado por uma faixa
iluminada com 1 grau de largura por 8 graus de comprimento, centrada no
centro do campo receptivo. A duração do estímulo é representada pelo traço
horizontal sobre cada actividade. Notar o aumento da resposta, com o
estímulo na vertical (o campo receptivo era vertical).
Os três tipos básicos de células ocorreram em
proporções equivalentes.
Fig. 5.3-6 - Representação semi-esquemática das conexões
neuronais para um neurónio simples, conforme os resultados de Hubel e
Wiesel. O sombreado indica as células geniculadas que estão a formar
sinapes com as duas células simples. Aqui pode-se ver perfeitamente a
disposição linear de células geniculadas com as quais as células simples vão
formar sinapses. A célula simples mais à esquerda, faz sinapses com células
geniculadas na oblíqua. A da direita fá-las na horizontal.
Como se pode ver nesta figura, os neurónios
geniculares apenas ligam a um campo receptivo retiniano,
que é circular e concêntrico. Daí o mesmo tipo de campo
receptivo destes neurónios, que nada mais parecem fazer do
que uma espécie de buffering dos sinais provenientes da
retina. Após esse buffering, cada célula cortical simples está
ligada a uma linha de células geniculadas, formando o seu característico campo receptivo linear.
É de notar a semelhança destas células com as unidades duma rede neuronal artificial do tipo Perceptron. Nesta,
cada célula apenas separa o espaço em dois hiper-planos apenas limitados pela extensão desse próprio espaço de
entrada.
5.3.3.2.2 Neurónios complexos
Estes neurónios encontram-se na região 19 do córtex visual,e ao contrário das células simples, o estímulo eficaz
também é da forma de barra, ranhura ou borda, com determinada orientação no espaço, mas colocada em qualquer parte
do campo receptivo. Este campo receptivo é totalmente homogéneo. Especialmente, o movimento do estímulo ao longo
de todo o campo receptivo, para trás ou para a frente, desde que conservada a sua orientação, produzia uma resposta
5-11
Reconhecimento automático de caracteres
Estudo do sistema visual
5-12
neuronal forte e mantida durante todo o período do movimento. Algumas células só respondem a uma direcção de
movimento.
Fig. 5.3-7 - Respostas de células complexas a um estímulo representado por uma faixa luminosa
com 1 grau de largura e 2,5 graus de comprimento. A -D mostram o efeito com o estímulo paralelo ao
exio do campo receptivo e E - G em posição não paralela. Em H, o estímulo foi mantido paralelo ao eixo
do campo receptivo, mas movido rapidamente em ambos os sentidos, por toda a sua extensão. Note-se
que aconteceu frequentemente que, após algum tempo depois do estímulo estar a ser apresentado, a
frequência da resposta diminuía. Isto pode ser devido à característica de adaptação à luz da retina, cujos
neurónios deixam de responder como no início do estímulo, diminuindo a sua actividade.
Pode ser aqui que se consegue alguma invariância de translação, na medida
em que a estas células respondem à mesma orientação, mas para posições absolutas
diferentes. É de salientar o facto de que estas células respondem com mais
intensidade quando o estímulo se move (no sentido correcto).
5.3.3.2.3 Neurónios hiper-complexos
Estes neurónios encontram-se na região 18 do córtex visual, e para estas células, o campo receptivo tem uma
região de respostas ON bem delimitada e de limites lineares. As mais diversas formas para essa região foram
identificadas, desde quadradas ou rectangulares, até cruciformes [Hubel e Wiesel, 1965, 1968]. Todavia, para cada uma
existe um eixo com o qual deve estar alinhada uma das bordas do estímulo. É de notar ainda, que estas células
respondem melhor a estímulos que se limitem ao seu campo receptivo ON.
Fig. 5.3-8 - Caso particular duma célula hiper-complexa sensível a um estímulo de ângulo
recto. Note-se que esta célula dispara tanto para o estímulo côncavo como para o convexo, desde que
as duas fronteiras façam um ângulo de 900 entre si. Quaisquer outros ângulos não provocam uma
excitação apreciável desta célula. Além disto, esta célula parece responder apenas a estímulos em
movimento.
Parece que a função destes neurónios é a de analisar estímulos mais
complexos do que simples linhas ou margens. Pode ser que a função destes neurónios seja a de detectar a presença de
ângulos e formas (features) em figuras complexas. A invariância proporcionada pelos neurónios complexos (que ligam a
estes hiper-complexos) vai-se decididamente reflectir também numa invariância de translação na detecção dessas
features, na medida em que aqueles fazem uma espécie de dessensibilização de translação posicional. Assim, fica
explicado o facto das fronteiras não terem de possuir uma certa disposição de translação no campo receptivo da célula
hiper-complexa; qualquer que seja a posição relativa dessas fronteiras, desde que estejam dentro do campo receptivo e
desde que façam um certo ângulo entre si, a célula dispara de modo semelhante.
É de salientar que estas células parecem apenas responder a estímulos em movimento e no sentido correcto, o
que pode invalidar a possibilidade do seu uso para reconhecimento de padrões fixos.
5.3.4 Funções e estrutura do córtex estriado e pré-estriado
Foi proposto [Hubel e Wiesel, 1959, 1962, 1968] que os três tipos neuronais descritos anteriormente representem
um sistema hierárquico. Tal interpretação resulta do que deve ocorrer entre a chegada da actividade geniculada organizada, como a retiniana em função de campos recpetivos concêntricos, activados por estímulos circulares, como
ocorre com a ganglionar retiniana - e a dos neurónios corticias simples, reactivos a estímulos lineares, com orientação
precisa e definida para cada célula.
5-12
Reconhecimento automático de caracteres
Estudo do sistema visual
5-13
Essa tranformação é imaginada por uma convergência sobre a célula cortical simples de vários aferentes
geniculados, cada um activado por uma região circular (rodeada por uma região anelar convêntrica e inibitória) de
localização definida na retina. Desta forma, é fácil compreender o facto de que a orientação precisa do estímulo linear
que activa uma célula cortical simples, é determinado pelo padrão de convergência das ligações aferentes geniculadas.
O mesmo acontece para as células complexas, sede de
convergência de células simples com campos receptivos de padrão e
orientação semelhantes. Estas últimas convergem para células
hipercomplexas.
Fig. 5.3-9 - Esquema ilustrativo do tipo de organização das ligações para
células simples. Várias unidades geniculadas (são apenas representadas sete) têm
campos receptivos do tipo ON, dispostos em linha recta na retina. Essas sete células
projectam-se para o mesmo neurónio simples. O campo receptivo resultante para o
neurónio simples, toma uma forma semelhante à representada, podendo esta ser
simétrica, assimétrica ou lateralizada.
Fig. 5.3-10 - Esquema ilustrativo da organização do campo receptivo de
células complexas. Uma série de células simples (são mostradas quatro) com campos
receptivos de padrão e orientação semelhantes, projectam para um mesmo neurónio
complexo. Desta forma, quando um objecto é ligeiramente movido, mas ainda dentro do
campo receptivo do neurónio complexo, apesar do conjunto de neurónios simples
activos mudar, os complexos ficam na mesma. É uma certa invariância de translação.
Nesta figura, os campos receptivos simples estão representadops apenas para dar uma
ideia da posição receptiva de cada neurónio simples relativa, na retina. As ligações que
convergem para cada neurónio simples provêm, óbviamente, de neurónios geniculados.
O campo receptivo complexo resultante, apenas mostra a orientação dos estímulos a que
reage.
Com esta convergência de campos receptivos de semelhantes, o
neurónio complexo consegue realmente, dar uma resposta a um
estímulo correctamente orientado e dentro de um maior campo
receptivo resultante††. Quer isto dizer, que só se o estímulo tiver o
padrão e orientação correctos, é que haverá possibilidade de excitação
da célula complexa, se esse estímulo ainda cair dentro do seu campo
receptivo. Mesmo que esta última condição se verifique, mas o estímulo tiver padrão ou orientação diferentes, então a
célula não reagirá.
††
Esta invariância de translação, ou dessensibilização de translação posicional, também é implementada na rede neuronal artificial
NeoCognitron do senhor Fukushima. Isso é feito através das células C, que agrupam células S (featura-extracting) iguais para conseguir alguma
invariância de translação.
5-13
Reconhecimento automático de caracteres
Estudo do sistema visual
5-14
Fig. 5.3-11 - Esquema ilustrativo da organização do campo receptivo de
células hiper-complexas. Uma série de células complexas (são mostradas quatro)
com campos receptivos de padrão e orientação semelhantes aos pares, projectam
para um mesmo neurónio hiper-complexo. O ângulo a que este neurónio hipercomplexo fica mais sensível, é igual ao ângulo relativo entre as duas orientações dos
campos receptivos dos neurónios complexos aferentes. Desta forma, quando um
objecto é ligeiramente movido, mas ainda dentro do campo receptivo do neurónio
hiper-complexo, apesar do conjunto de neurónios complexos activos mudar, os
hiper-complexos ficam na mesma. É uma certa invariância de translação que advém
da invariância inserida pelos neurónios complexos. Nesta figura, os campos
receptivos complexos estão representadops apenas para dar uma ideia da posição
receptiva relativa de cada neurónio complexo, na retina.
Note-se que, se não houvesse um certo grau de liberdade
introduzido pela dose de invariância dos neurónios complexos, esta
detecção de ângulos por parte dos neurónios hiper-complexos seria
certamente selectiva demais. Sem aquela invariância dentro do campo receptivo, seriam apenas detectados ângulos com
os dois segmentos de recta constituintes exactamente posicionados nos campos receptivos dos respectivos neurónios
simples. Parece então que os processos de reconhecimento apenas precisam de informações ácerca do tipo de ângulos e
não da posição das suas rectas originado-as.
5.3.4.1 Colunas corticais
Hubel e Wiesel [1962, 1968] demostram que o córtex visual é funcionalmente organizado em termos de lâminas
horizontais e colunas verticais. A organização horizontal é marcada pela presença apenas de células complexas e hipercomplexas nas lâminas superiores. Pelo contrário, nas lâminas inferiores, o predomínio quase exclusivo é de células
simples. A organização vertical é marcada por dois tipos de colunas. O primeiro é representado por colunas de células
que respondem à mesma orientação do estímulo. No segundo, as células são agrupadas em colunas de acordo com o seu
tipo de dominância ocular (esquerda ou direita). É de salientar que as primeiras, além de possuirem todas a mesma
orientação do campo receptivo (respondem todas ao mesmo estímulo) e pertencerem à mesma região retiniana, são
constituídas por células simples e complexas.
Fig. 5.3-12 - Desenho esquemático da disposição das colunas nas
circunvalações do córtex visual. Cada coluna está disposta na perpendicular em
relação à superfície do córtex, e é sensível a uma certa orientação dos estímulos
luminosos. A distribuição destas orientações é suave de coluna para coluna. Cada
coluna possui células simples que convergem para células complexas também
existentes, e acaba na massa branca‡‡ que constitui o ajuntamento dos axónios eferentes daquelas colunas e que encaminha a informação para outras
células e zonas do córtex..
As ligações são curtas e interiores às colunas, o que vem a mostrar a grande possibilidade das células complexas
receberem ligações das células simples, ficando mostrada a razão do campo receptivo destas ter a mesma orientação das
simples. Foi também mostrado [Hubel e Wiesel, 1968, 1974; Peters e Jones, 1985] que estas colunas estão fortemente
correlacionadas, na medida em que a preferência de orientação variava suavemente pela superfície do córtex.
‡‡
Enquanto que o córtex cerebral é cinzento, a massa branca adquire essa coloração devido à exclusiva existência de axónios que possuem
uma camada protectora de mielina, substância essa que é branca.
5-14
Reconhecimento automático de caracteres
Estudo do sistema visual
5-15
Cada coluna pode ser considerada como uma unidade funcional independente, em que as células simples
recebem conexões da geniculadas, e se projectam para as complexas. Cada pequena porção do campo visual é
representado por coluna atrás coluna, cada uma especializada numa orientação diferente, e duma forma suave.
Estas estruturas detectoras de features espaciais tais como as orientações e ângulos, estão actualmente a começar
a fazer parte duma teoria complexa que tenta globalizar estes mecanismos de detecção de frequências espaciais visuais
ou componentes espectrais espaciais visuais e que se chama Teoria de Fourier ou de frequência espacial da análise
visual. Surge assim uma tentativa de paralelizar a visão com a análise espectral intrínseca do sistema auditivo, bem
como análises espectrais em centros superiores. Note-se que espectro nem sempre se refere a entidades ligadas a sinais
reais, podendo ser pensada também para entidades mais abstractas tais como mapas superiores mais abstractos do que os
do córtex visual. Voltaremo-nos a referir a este tópico, mais à frente.
5.3.4.1.1 Plasticidade das colunas
Mostrou-se, através de experiências, que esta organização cortical podia ser modificada (o cérebro podia-se reorganizar para se adaptar às condições do mundo exterior). Assim, numa experiência-protótipo [Hirsh & Spinelli, 1970,
1971] em que se criaram gatinhos recém-nascidos, usando óculos que só deixavam ver linhas verticais num olho e
horizontais noutro. Além desta esperiência, também se mostrou que a exposição a pontos luminosos, sem quaisquer
cantos ou contornos, conduz a campos receptivos neuronais anormais, cujos neurónios respondiam bem a pontos de luz
e mostrando pouca sensibilidade para estímulos usuais.
Outra experiência em laboratório levou à hipótese dos neurónios simples serem também capazes de aprenderem a
ficarem sensíveis a contornos não-rectilíneos, mas sim curvilíneos [Softky & Kammen, 1988]. Nessa experiência, testase um modelo Hebbiano, isolado e biológicamente plausível que tanto pode aprender segmentos orientados como
curvas, dependendo do ambiente em que é treinado.
Também é facto que um período muito breve de exposição, tão pequeno como uma hora, pode ter uma grande
influência na selectividade dos neurónios do córtex visual [Blakemore & Mitchell, 1973]. O cérebro parece ser capaz de
reorganizar as suas ligações de forma a se adaptar com o ambiente que o rodeia; as células corticais respectivas ao olho
“vertical” só possuíam campos receptivos verticias, acontecendo algo semelhante às do olho horizontal (apenas campos
receptivos horizontais). Já nem havia células binoculares§§ que respondiam a ambos os olhos, já que ambos transmitiam
informação completamente diferente e sem features comuns. Estes resultados mostram claramente que o cérebro se
organiza duma forma perfeitamente previsível. Segundo dados conseguidos destas experiências, parece que o córtex só
se modifica se a experiência visual anormal ocorrer durante um período particularmente “sensível” - cerca de 3 a 12
semanas em gatos recém-nascidos [Hubel & Wiesel, 1970]. Fora isto, o córtex possui um arranjo genéticamente prédeterminado desde a nascença.
Muitas outras experiências semelhantes, nas quais se modificava o ambiente em que o animal vivia, levaram
todas à mesma conclusão - o cérebro adapta-se à informação proveniente do ambiente em que se encontra. Esta “regra”
de que o córtex se adapta ao tipo de informação que lhe chega, parece culminar para a importantíssima confirmação da
especulação [Barlow, 1960] de que a função primária dos centros sensoriais, é a de codificar os padrões de excitação
que ocorrem, de forma eficiente que dê origem a uma representação menos redundante do ambiente.
Resta saber se as redes neuronais artificiais, aliadas a regras de aprendizagem, conseguem exibir estas mesmas
propriedades de auto-organização semelhantes. Uma primeira tentativa [Von de Malsburg, 1973] foi feita para tentar
verificar isso. Foi construída uma rede com determinadas características que tentavam imitar morfologias cconhecidas
do cérebro, e no final da simulação, o este córtex artificial conseguiu mesmo criar zonas reactivas a diferentes
orientações do estímulo, formando uma estrutura em forma de colunas. Esta experiência será melhor exposta mais à
frente neste projecto.
§§
São células especiais que recebem ligações de ambos os olhos, e como tal, reagem a ambos. Julga-se que, quando o cérebro recebe
informação incoerente entre olhos, que simplesmente inibe esta função binocular, desligando um olho dessas células. Também pode desligar
completamente um dos olhos, tornando-se inútil, apesar de biológicamente perfeito. Este problema é chamado amblyopia.
5-15
Reconhecimento automático de caracteres
Estudo do sistema visual
5-16
5.3.4.2 Hiper-colunas corticais
Hubel e Wiesel [1968] defendem que a função do córtex visual primário pode ser considerada primariamente
como analisadora do que ocorre em parte do campo visual, em termos de orientação de limites entre claro-escuro, do
movimento desses limites e de variações desses limites, o que é feito pelo sistema de células simples, complexas e hipercomplexas, respectivamente. Hubel & Wiesel [1972, 1974] descreveram também a hiper-coluna: um conjunto de
colunas de orientação, em forma de folhas paralelas, contendo todas as orientações dentro de 180º, ou um conjunto de
colunas com a mesma dominância ocular (esquerda ou direita).
Hubel & Wiesel [1974b] afirmam que é necessário um microeléctrodo deslocar-se duma distância relativamente
constante de 2-3mm, paralelamente à superfície do córtex visual, antes que seja representada uma zona visual
inteiramente nova nos campos receptivos dos neurónios analisados. Dentro desta distância de 2-3mm, o eléctrodo
atravessa uma série de módulos organizacionais que são as tais hiper-colunas.
Cada um desses conjuntos tem de 0.5 a 1.0mm de extensão cortical. Levado esse conceito a confronto com o
factor de amplificação***, foi verificado que no registo feito a uma distância cortical de 1mm do anterior, modificava-se
o campo visual aí analisado. Para a nova posição, o campo visual ficava sobreposto à metade do campo visual da
posição de registo anterior. Levando-se em conta que o tamanho do campo visual atendido por milímetro de córtex
aumenta com o aumento da distância da fóvea [Daniel e Whitteridge, 1961], esse resultado mostra que a sobreposição
observada ocorre com deslocamento ao longo do córtex corresponde a uma hiper-coluna (de orientação ou de
dominância). Consequentemente, uma área cortical de 2x2mm contém toda a maquinaria necessária para processar as
informações de determinada parte do campo visual [Hubel e Wiesel, 1974b]. Por outras palavras, o tamanho cortical de
cada hiper-coluna mantém-se essencialmente constante, mas o respectivo hiper-campo receptivo††† de cada uma delas
vai aumentando para abranger cada vez mais campo visual.
Fig.
5.3-13
-
À
esquerda temos uma Ilustração
esquemática
do
tamanho
e
disposição dos hiper-campos
receptivos - campos receptivos
retinianos processados por cada
hiper-coluna cortical. Como se
pode ver, o tamanho de campo
visual atendido por cada hipercoluna vai aumentando, o que
diminui a acuidade visual na periferia da retina. A fóvea é a zona que possui maior concentração de hiper-colunas dedicadas, o que aumenta a sua
acuidade visual. Assim, a fóvea é capaz de permitir o maior poder de discriminação de contornos, enquanto que a periferia possui um poder muito
menor permitindo apenas a discriminação de contornos mais a “grosso”. À direita temos um exemplo do poder de discriminação das hiper-colunas
correspondentes à zona foveal e à zona periférica. Enquanto que a na fóvea se é capaz de detectar a presença dos SS’s, na zona periférica apenas se
discrimina a presença dum contorno em forma de cruz. Por outro lado, a fóvea não é capaz de detectar essa cruz. Por outras palavras, a zona foveal
detecta pormenores “finos”, enquanto que a zona periférica detecta pormenores “grossos”. Ambas estas zonas são absolutamente necessárias para
constituírem um poderoso sistema de processamento visual e de reconhecimento. Enquanto que a zona periférica (quase todo a retina) capta a forma
geral da imagem, os movimentos oculares‡‡‡ vão captando os seus pormenores aos poucos. Isto exige a utilização dum gerador de saccades,
mecanismo pelo qual a retina é movida pelo espaço, colocando a zona foveal nos pontos importantes. Este mecanismo será explicado mais à frente.
***
Como já foi dito, o tamanho do campo visual processado por milímetro de córtex aumenta com a distância à fóvea, o que significa que
cada hiper-coluna vai abranger cada vez mais campo visual.
†††
Referimo-nos à área visual recebida e processada por uma hiper-coluna.
‡‡‡
Mais à frente iremos falar destes movimentos oculares, indispensáveis para se poder detectar os pormenores importantes numa imagem de
dimensões maiores que a zona foveal.
5-16
Reconhecimento automático de caracteres
Estudo do sistema visual
5-17
Fig. 5.3-14 - Ilustração da hipótese pela qual os hiper-campos receptivos
estão sobrepostos uns com os outros. À esquerda mostram-se as consequências
indesejáveis de campos não-sobrepostos: ficariam zonas da retina não tratadas e
haveriam posições de ângulos que não permitiam a sua correcta detecção. Cada
campo detectaria apenas uma orientação, sem conseguir ligar as duas orientações
de forma a detectar o ângulo. É necessário uma campo intermédio, o que origina a
sobreposição dos campos à direita. Aqui já se garante a cobertura de toda a retina,
bem como a detecção de ângulos que se situam entre dois campos adjacentes.
Poder-se-ia pensar que o problema anterior poderia ser resolvido pelo gerador de
saccades, o qual colocaria o ângulo inteiro sob um campo. Isto não é o caso, já que
este gerador também necessita saber que existe lá um ângulo, para poder gerar o
movimento respectivo do olho (saccade). Ora, se o ângulo não é detectado no
córtex visual, então o gerador saccádico também não será certamente excitado
naquele sentido.
Mais à frente, quando falarmos de mapas cerebrais computacionais, voltaremos a este conceito real de hipercolunas já integradas nesses mapas.
5.3.4.3 Neurónios com grandes campos receptivos
Este facto do tamanho dos campos receptivos ir aumentando mais ou menos monótonamente, à medida que nos
afastamos da fóvea, acontece duma forma geral para os campos receptivos ao longo do caminho visual e córtex
respectivo. Foi observado que os campos receptivos dos neurónios do núcelo geniculado lateral, do córtex estriado e do
superior colliculus também aumentam de tamanho à medida que aqueles neurónios se afastam das zonas que processam
a fóvea. Além disto, os campos receptivos de neurónios cada vez mais profundos no caminho do processamento visual
também vão aumentando gradualmente de tamanho. Um exemplo disso são os neurónios complexos que possuem
campos receptivos maiores que os neurónios simples, dos quais recebem as entradas. Regiões extra-geniculadas do
tálamo, anatómicamente relacionadas com as áreas corticais visuais, também contém campos receptivos
característicamente grandes.
Neurónios com campos receptivos grandes não podem transmitir informação precisa sobre a localização dum
estímulo na retina. Esse papel parece ser deixado para os neurónios com campos receptivos mais pequenos, como os
dedicados a processar informação vinda da fóvea. No entanto, aqueles neurónios parecem executar importantes funções
de detecção de contornos específicos. Por outras palavras, neurónios com campos receptivos grandes parecem ser úteis
como feature detectors, que detectam um certo contorno num pedaço de campo visual relativamente grande. São
exemplo destes neurónios, os neurónios complexos, que detectam um estímulo orientado segundo uma certa direcção e
em qualquer parte do seu campo receptivo [Hubel & Wiesel, 1962; Pettigrew, 1968]. Esta e outras observações
conduziram à noção de que certas classes de neurónios centrais detectam features específicas da imagem retiniana, tal
como foi sugerido para a retina da rã [Bell, 1964]. Têm sido focados outras capacidades que este tipo de neurónios pode
possuir, como a resposta preferencial a outros aspectos da imagem retiniana, tais como o tamanho, forma, direcção e
velocidade do movimento [Hoffman, 1970; Humphrey, 1968; Dow, 1969; Gross, 1972; Zeki, 1974, 1974b; Gordon,
1973; Wright, 1971; Straschill, 1969]
Para além desta ideia “localizada” da detecção de features, também se pensou na hipótese de que a informação
sensorial poderia ser representada pela actividade duma população de neurónios, em vez de um ou dois apenas. Não se
deve esquecer que o cérebro tem acesso imediato a todos os neurónios que respondem a um dado estímulo. Esta ideia
foi denominada até por codificação distribuída ou agrupada [Adrian, 1931], para explicar como é os aferentes cutâneos
da rã podiam codificar a posição dum estímulo pontual.
5-17
Reconhecimento automático de caracteres
Estudo do sistema visual
5-18
Estes conceitos de codificação agrupada e detecção de features são agrupadas na chamada Teoria de Fourier ou
de frequência espacial da análise visual, a qual tem atraído ampla atenção nos últimos anos. De acordo com uma forma
desta teoria, os neurónios visuais são diferencialmente sensíveis a contornos de luminância sinusoidal com determinado
período. Assim, esses neurónios actuam como filtros espaciais e os seu padrão de descarga representa a composição
espectral espacial de parte da imagem retiniana. Os neurónios com campos receptivos grandes, surgem com alguma
naturalidade nestes sistemas, já que a sua selectividade dum neurónio em frequência está emn parte relacionado com o
tamanho do seu campo receptivo [Pollen, 1975; Legendy, 1975; MacLeod, 1974]. Mesmo que a actividade dum só
neurónio possui um significado preciso, em termos duma preferência duma frequência espacial, a sua saída é
relativamente inútil sem a referência à actividade de outros neurónios. Isto pode ser contrastado com os modelos de pura
detecção de features, nos quais as características familiares da imagem (orientação, ângulos) correspondem directamente
ao disparo de neurónios individuais. Uma codificação distribuída da frequência espacial representaria a presença e
posição duma feature, através da descarga dum grupo de neurónios. Também têm sido propostos modelos mistos
[Erickson, 1974].
É dado um tratamento mais aprofundado deste assunto e de outros relacionados, em McIlwain [1976]. Aqui
também se fala das hiper-colunas e vários tipos de células envolvidas no caminho visual. Em particular, fala-se de
conceitos importantes para a extracção de modelos, tais como:
- Campos dendríticos e mapas aferentes: uma perspectiva de convergência.
- Imagens pontuais e imagens de campos receptivos: uma perspectiva de divergência.
- Invariância de translação e imagens de campos receptivos.
- Acuidade visual e imagens pontuais invariantes em translação.
- Imagens pontuais e hiper-colunas.
- Campos receptivos grandes e as transformações sensorial-motoras no superior colliculus.
5.3.4.4 Outras características
De um modo geral, os efeitos de lesões no córtex visual traduzem-se por definitivas reduções do campo visual.
Isto evidencia o facto de que estas zonas são responsáveis pelo processamento inicial da informação vinda dos olhos,
não entrando directamente no processo de reconhecimento.
A estimulação eléctrica do córtex pré-estriado provoca movimentos oculares conjugados que levam os olhos a se
fixarem na região do campo visual correcpondente ao ponto estimulado [Wagman, 1964]. Este resultado é de
fundamental importância, pois evidencia a existência de um mecanismo automático que controla o movimento dos olhos
em função dos estímulos importantes recebidos pelas retinas. Entre esses estímulos importantes, poder-se-íam contar os
estímulos móveis que chamam logo à atenção em muitos animais incluíndo o homem.
5.3.5 Mapas cerebrais
Vamos agora apenas introduzir a noção de mapas cerebrais, os quais prefazem uma parte importante de todo o
cérebro. Estes mapas são zonas cerebrais que agrupam os estímulos sensoriais num conjunto de features, as quais serão
transmitidas às zonas superiores do córtex. Existem mapas espacialmente organizados para a visão, mapas de frequência
para a audição e mapas da superfície corporal para o tacto. Ainda existem muitos outros mapas que, no entanto, não
estão organizados duma forma óbvia segundo os sinais de entrada. Entre estes, existem mapas de distância a objectivos
para o sistema de sonar do morcego, mapas espaciais de “interesse visual” na superior colliculus, e mapas da localização
espacial de fontes de ruído no ambiente. Estes mapas são descritos com maior detalhe em Knudsen [1987].
O mapa computacional é um bloco essencial na construção da infraestruturado processamento de informação
pelo sistema nervoso. Aqui, “computação” é visto como qualquer tranformação da representação de informação. Os
neurónios que constituem um tal mapa, representam um array de processadores ou filtros em parte pré-determinados,
5-18
Reconhecimento automático de caracteres
Estudo do sistema visual
5-19
cada um “sintonizado” de forma ligeiramente diferente, e que operam em paralelo sobre o sinal aferente.
Consequentemente, estes transformam esse sinal quase instantâneamente numa distribuição de probabilidades
codificadas pela posição, que representam valores dos parâmetros mapeados como sendo picos de actividade
localizados nesse mapa. Esta informação transformada pode depois ser acedida por processadores superiores, os quais
também podem ser, eles próprios, mapas computacionais.
5.3.5.1 Mapas visuais
Exemplos de mapas que são de importância vital para a sobrevivência dum animal, são os mapas computacionais
do sistema visual, tais como os sensíveis às orientações de linhas e à dominância ocular, no córtex visual primário
[Hubel & Wiesel, 1963, 1977], e o mapa de direcção de movimento na área visual cortical média temporal [Albright et
al 1984]. Tem sido sugerido um mapa de cor na área cortical V4, mas a sua topografia ainda não foi demonstrada [Zeki,
1974, 1980]. Além destes mapas dedicados ao sistema visual, existem ainda mapas dedicados à audição, extremamente
importantes para animais nocturnos ou practicamente cegos (morcegos, corujas).
Os mapas computacionais também estão envolvidos na programação motora. O mapa melhor conhecido é o mapa
do espaço motor ou direcção do olhar, na superior colliculus do cérebro [Roucoux et al 1980; Wurtz & Albano, 1981].
Os mapas computacionais mais familiares foram descobertos por Hubel & Wiesel [1963, 1968], no córtex visual
primário (V1) de gatos e macacos.Tal como já se disse anteriormente, foram encontrados dois tipos repetitivos de mapas
computacionais: mapas de orientações preferidas que representam o ângulo de inclinação de linhas, e mapas de
dominância ocular que representam a força relativa de influência excitatória de cada olho.
Fig. 5.3-15 Mapas computacionais
do
córtex
primário
macacos.
visual
(V1)
de
(A)-
Diagrama esquemático
de hiper-colunas para a
dominância
ocular e
preferência
de
orientação de linhas. O
mapa da dominância
ocular representa duma
forma sistemática, as forças relativas excitatórias da influência de cada olho. A escala numérica refere-se aos grupos de dominância ocular definidos
por Hubel & Wiesel. Aqui, às unidades excitadas exclusivamente pelo olho direito é atribuído o valor 1, e às unidades excitadas exclusivamente pelo
olho esquerdo o valor 5. No mapa das preferência de orientação, os neurónios estão sintonizados para o ângulo de inclinação dos estímulos
rectilíneos; a sintonização varia sistemáticamente ao longo do mapa, à volta duma gama de 180º de orientações. Desenho adaptado de Hubel &
Wiesel [1977]. (B)- Curvas de sintonia representativas dos neurónios na zona V1, para orientações de linhas. A resposta é traçada em função da
orientação do estímulo. As letras circundadas identificam curvas de sintonia com as posições do mapa indicadas em (A). A sintonia neuronal no
mapa de orientações, bem como em outros mapas computacionais, pode ser bastante larga: enquanto que cada neurónio possui uma resposta máxima
numa gama estreita de orientações, também exibe resposta substancial ao longo duma gama de 50º de orientações. Gráfico baseado em dados obtidos
por Schiller et al [1976]. Estas curvas de sintonia assemelham-se com os conceitos de fuzzy logic, em que as transições não são bruscas como na
lógica booleana. Para informação precisa sobre a selectividade, pode-se consultar o trabalho teórico de Bienenstock [1982].
Tal como já foi mencionado anteriormente, cada hiper-coluna processa informação duma região pequena do
campo visual; hiper-colunas vizinhas processam informação de porções sobrepostas mas sistemáticamente deslocadas
do campo visual. Assim, estas hiper-colunas são exemplos de mapas computacionais que são repetidos dentro dum mapa
retinotópico maior.
5-19
Reconhecimento automático de caracteres
Estudo do sistema visual
5-20
Em todas as espécies testadas, o superior colliculus (tectum óptico) contém um mapa computacional motor que
direcciona os movimentos orientados dos olhos, cabeça e/ou orelhas [Robinson, 1972; Stryker & Schiller, 1975;
Roucoux et al, 1980; Stein & Clamann, 1981]. Por exemplo, em primatas, os neurónios situados nas camadas
intermédias e profundas do superior colliculus disparam imediatamente antes dos movimentos sacádicos§§§ dos olhos, e
a magnitude e direcção do movimento associado com essas descargas varia topográficamente com a localização no
colliculus [Sparks et al, 1976]. Mais tarde iremos referirmo-nos mais a este tipo de movimentos rápidos dos olhos. Além
do mais, estimulação eléctrica local no colliculus, provoca movimentos sacádicos dos olhos, cuja magnitude e direcção
também exibem variação sistemática com a posição exacta do estímulo [Robinson, 1972; Stryker & Schiller, 1975].
Estes dados indicam que a saída do superior colliculus (tectum óptico) inicia programas motores específicos que
dependem da localização da actividade máxima no mapa motor.
Todas estas informações revelar-se-ão, sem dúvida alguma, como extremamente úteis para a obtenção de
modelos que cumpram funções semelhantes e para a implementação dos mesmos.
5.3.5.2 Propriedades e vantagens dos mapas
Os neurónios que constituem os mapas computacionais, executam funções pré-definidas em paralelo sobre sinais
aferentes. A palavra “pré-definido” significa apenas que estes neurónios não necessitam de sinais de centros superiores,
de forma a poderem desempanhar as suas funções. As suas computações básicas apenas dependem dos padrões de
ligações locais intrínsecas a esse circuito de processamento. Além disso, não significa que está tudo ligado
genéticamente de forma imutável: apesar dos padrões básicos de interligação estarem, sem dúvida alguma,
genéticamente determinados, os seus detalhes podem ser influenciados extensivamente através da experiência. É o que
acontece, por exemplo, no mapa espacial auditivo e mapa visual das orientações [Knudsen, 1985; Stryker et al, 1978].
Uma importante consequência deste porcessamento pré-definido e paralelo, é que a informação é rapidamente
tranfomada nos mapas.
• Processamento eficiente da informação
O sistema nervoso tem de estar contínuamente a analisar enormes quantidades de infomação sensorial vinda do
exterior. Para que as respostas do organismo não se façam esperar demasiado tempo, isto requer estruturas eficientes
que sejam capazes de filtrar e analisar rapidamente toda essa informação. Os mapas computacionais são ideias para esta
função de pré-análise ou filtragem, colocando toda aquela informação duma forma sistemática e sortida na sua saída. A
informação apresentada desta forma, torna-se fácil de aceder e as ligações subsequentes a centros nervosos superiores,
serão mais simples. Além disso através da codificação de todos os tipos de informação, num código comum
representado por actividades duma população de neurónios, permite ao sistema nervoso superior uma estratégia única
para ler esses dados. Qualquer que seja a fonte dos estímulos, todos eles serão representados e olhados como picos de
actividade em mapas de neurónios.
• Interações adicionais possibilitadas pelos mapas
Quando um parâmetro da informação exterior é representado sob uma forma topográfica, será possível ainda uma
série de mecanismos neuronais que actuam sobre a distribuição desse parâmetro, duma forma que não seria possível se a
informação fosse armazenada sob a forma dum código não-topográfico. Uma classe de mecanismos prende-se com as
facilitações**** e inibições laterais, que só fazem sentido funcionar para informação mapeada (topográfica). Uma
segunda classe é representada pelas interacções não-impulsionais sinápticas (que não usam potenciais de acção), as
quais apenas actuam sobre curtas distâncias [Watanabe & Bullock, 1960; Pearson, 1979]. Finalmente, existem ainda as
§§§
Movimentos quase instantâneos dos olhos, provocados pela presença dum estímulo considerado importante no campo visual.
****
O fenómeno da facilitação sináptica foi extensivamente explicado num capítulo anterior, em que se falava das características dos
neurónios biológicos.
5-20
Reconhecimento automático de caracteres
Estudo do sistema visual
5-21
interacções não-sinápticas que resultam de variações no meio químico e eléctrico, causadas por descargas de neurónios
vizinhos [Haas & Jeffreys, 1984].
• Mapas computacionais de ordem superior
Tem sido mostrado que o sistema nervoso usa mapas computacionais para derivar e representar parâmetros
sensoriais, tais como orientações de linhas na visão e atrasos interaurais, bem como parâmetros mais abrstractos, tais
como a localização de fontes sonoras que depende da interacção de múltiplos parâmetros básicos. No entanto, os mapas
desobertos até agora, são de ordem relativamente baixa; eles apenas mapeiam parâmetros sensoriais e motores
fundamentais. Além destes, também poderão existir mapas de ordem muito superior. Mas, enquanto que os primeiros
não dependem do nível de atenção ou consciência dos animais estudados, estes últimos já podem depender desses
factores. Assim, estes mapas só poderão ser estudados se se proporcionaream condições em que o animal tem de realizar
complexas e sofisticadas análises ou respostas comportamentais.
5.4 Outras áreas corticais de função visual
O grande número de observações em pacientes portadores de lesões corticais em área outra que a estriada
[Tauber, 1960; Luria, 1966, 1973] mostra que, além da função fundamental do córtex visual, várias outras áreas
participam da função visual. As conexões dessas áreas com a estriada foram demonstradas por meios abatómicos
[Cragg, 1969; Jones e Powell, 1970; Kuypers e colabs., 1965; Pandya e Kuypers, 1969; Zeki, 1969] e fisiológicos
[Cowey, 1964; Cowey e Cross, 1970; Mishkin, 1966].
O padrão geral dessas conexões é o seguinte: os axónios que partem do córtex visual primário (córtex estriado,
área 17) vão para o córtex pré-estriado (áreas 18 e 19) e deste partem conexões para o córtex ínfero-temporal.
Todas essas áreas enviam conexões para o córtex frontal: as áreas estriadas e pré-estriadas para a área 8 (campos
oculares frontais), enquanto que o córtex ínfero-temporal as envia para e recebe de outras áreas pré-motoras frontais,
além da área 8.
5-21
Reconhecimento automático de caracteres
Estudo do sistema visual
5-21
5.5 Movimentos do olho e percepção visual
Os olhos são os órgãos sensoriais mais activos no ser humano. Eles movem-se contínuamente enquanto exploram
os estímulos visuais que recebem do mundo exterior. Estes movimentos dos olhos são muito importantes para a
percepção visual, e a sua análise poder-nos-á revelar muitas coisas ácerca do processo da percepção.
Trabalho mais recente [Grossberg, 1989] até chega a sugerir mecanismos de aprendizagem que assentam
precisamente nos movimentos oculares. Uma série de redes neuronais seriam responsáveis pela geração, memorização e
associação dos movimentos e imagens foveais obtidas. Trataremos pois aqui, aspetos particulares dos mecanismos de
percepção.
5.5.1 Introdução
Fizeram-se experiências em pessoas, em que que se registou os movimentos dos olhos de diferentes pessoas para
diferentes objectos visuais. Primeiro, essas pessoas tinham de inpeccionar esses objectos pouco familiares, enquanto que
quando já os reconheciam, cada pessoa tinha uma maneira característica de observá-los. Cada objecto tinha, para ser
reconhecido, um caminho preferencial para os olhos.
O movimento dos olhos é necessário, por uma razão fisiológica: só de pode obter uma informação visual
detalhada através da fóvea retiniana. Assim, excepto quando o objecto é muito pequeno, os olhos têm de se movimentar
para se conseguir inspeccionar os vários detalhes dum objecto.
O sistema de memória do cérebro deve ter algum tipo de representação interna dos objectos que vê e que
reconhece. A aprendizagem ou a familiaridade dalgum objecto, é o processo de construir tal representação. O
reconhecimento dum objecto quando o encontramos de novo, é o processo de “compará-lo” com a sua representação
interna no sistema de memória.
Existia em 1975 uma certa controvérsia, sobre se o processo de reconhecimento seria global ou série, isto é, se se
fazia de uma vez só (olhar e reconhecer) ou se se fazia aos poucos (inspecção rápida do objecto). Como as experiências
dos senhores David Noton e Lawrence Stark conduziam a resultados que pareciam evidenciar mais a segunda hipótese,
vamo-nos debruçar sobre essa mesmo. Vamos admitir então, que o cérebro memoriza e reconhece objectos, através de
particularidades dos seus contornos.
5.5.2 Plasticidade, memória associativa e de trabalho
O córtex cerebral é capaz de efectuar o processamento muito rápidamente, e pode ser parcialmente reconfigurado
com a experiência. Além disso, o mapeamento no cortex é organizado. Com este conceito de mapeamento, referimo-nos
tanto aos aspectos de localização das diversas sensibilidades a estímulos exteriores no cérebro, bem como à organização
topográfica dessas mesmas sensibilidades.
As áreas melhor estudadas, são as áreas primárias sensoriais. É estimado que 90% da superfície cortical cerebral
é utilizado para funções de associação. É constituida por sub-áreas, com grande especificidade. A área 46 corresponde à
memória de trabalho.
A memória de trabalho e associativa são cooperativas. A memória associativa é importante, porque é aqui que
aprendemos sobre o mundo exterior. A memória associativa é de tempo prolongado, estável e para efeitos prácticos,
permanente. No fundo, a memória associativa é a parte indispensável do cérebro onde ocorrem os pensamentos lógicos
e onde se estabelecem ccorrelações entre dados vindos da memória de trabalho. Esta última recebe os estímulos do
exterior, após estes terem passado pelas áreas corticais primárias sensoriais. A memória de trabalho tem a capacidade de
6-21
Reconhecimento automático de caracteres
Estudo do sistema visual
5-22
reter um bocado de informação na cabeça, por alguns segundos, para guiar o comportamento na ausência de informação
relevante do exterior. A memória de trabalho pode sobrepor-se a respostas associativas, para permitir a um organismo
basear as respostas em representações armazenadas em vez de directamente na representação de estímulos sensoriais. O
córtex associativo pode ser visto como um número de sub áreas especializadas em processar informação em
representações particulares em vez de um grande complexo pluripotêncial. Por outras palavras, cada área primária
sensoriasl possui uma memória de trabalho que é a primeira a processar as informações codificadas que provêm das
zonas sensoriais primárias. É o caso do sistema da visão: o córtex visual fornece dados codificados (em forma de
features) para serem posteriormente analisados nas zonas mais complexas das memórias de trabalho e de associação.
Na área 46 do cortex pré-frontal, aparenta haver um mapa espacial em que diferentes neurónios acedem a
informação visuo-espacial e retêm a informação em tempo real durante um tempo de delay, para guiar a resposta na
ausência de informação.
A memória de trabalho está associada à memória chamada de STM (Short Term Memory) e a associativa está
relacionada com a LTM (Long Term Memory). Falaremos mais destas memórias, em termos aprofundados, quando
seguirmos para as teorias de Grossberg e Kuperstein [1989] mais à frente.
Fig. 5.5-1 - Os estímulos vindos dos sentidos são “descodificados/transformados” nas áreas primárias sensoriais
(córtex visual, córtex auditivo, córtex motores, etc.). Esses dados são depois fornecidos à memória de trabalho que fará um
processamento básico (normalização de actividades, supressão de ruído, etc.). A informação já filtrada e seleccionada, vai
eventualmente entrar na memória associativa, onde será permanentemente armazenada para futuro uso (associações,
reconhecimentos, etc.). Poderá eventualmente existir alguma influência da memória associativa sobre a memória de
trabalho, a fim de ajudar em processos de reconhecimento.
5.5.3 Bases para o reconhecimento de padrões
Contornos de determinado comprimento e orientação, ângulos e interrupções de contornos, são estímulos
óptimos que, através dum exaustivo processamento no córtex visual, podem ser reconhecidos. Será interessante e útil
fazer uma espécie de mapa de excitação que mostre as excitações dos diferentes neurónios das diferentes regiões
cerebrais da visão. Isto é mostrado na figura seguinte.
6-22
Reconhecimento automático de caracteres
Estudo do sistema visual
5-23
Fig. 5.5-2 - Esquema dos processos de excitação que a letra iluminada “K”
provoca, nas camadas da retina e nos neurónios do sistema visual cortical. (a) Imagem da letra luminosa na retina, e padrão espacial de excitação na camada dos
receptores da retina. (b) e (c) - Padrão de excitação na camada de saída da retina
(neurónios ganglionares); (b) - ON-Centrum-Neurons; (c) - OFF-Centrum-Neurons. De
(b) a (k) a zona excitada é representada por traços negros. (d) - Padrão de excitação na
camada neuronal do Corpus geniculatum laterale (corpo geniculado) e na primeira
camada do córtex visual. (e) até (h) - Padrões de excitação das diferentes camadas
neuronais, sensíveis a diferentes direcções dos estímulos (neurónios simples, região
17); aqui, os neurónios já só respondem a contornos com direcções bem determinadas.
(i) até (k) - Padrões de excitação das diferentes camadas neuronais do córtex
secundário e terciário (neurónios complexos e hiper-complexos, regiões 18 e 19); aqui,
os neurónios já só respondem a contornos com ângulos ou interrupções bem
determinadas. Este esquema simplifica fortemente as relações neurobiológicas; a
distribuição espacial nas diversas camadas do córtex visual não é linear em relação ao
estímulo.
É de notar que a retina não transmite só contornos, mas que apenas os realça através do seu mecanismo de
contraste.
Basicamente, julga-se que o córtex visual apenas executa uma espécie de pré-processamento, através dum
trabalho de discriminação de vários tipos de contornos. De seguida, haverão mecanismos de reconhecimento complexos
que, associados ao mecanismo de movimento dos olhos, vai tentar lembrar-se daqueles contornos detectados na imagem
visual. No fundo, o reconhecimento faz-se através da conjugação complexa entre estas diferentes entidades cerebrais.
Não podemos estudar as respostas de uma parte do cérebro; temos que perceber como é que as diferentes partes
do cérebro cooperam para realizar uma tarefa.
Um sistema de visão pode ser composto de pequenos processos de baixo nível:
-Percepção de profundidade
-Percepção de movimento
-Segmentação de texturas
-Forma das sombras
Nos sinais intermédios tem uma representação simbólica para descrever a visão de baixo nível, descrevendo cada
região em termos das features. Na visão de alto nível, é o reconhecimento dos objectos.
As diferentes fontes de informação têm fraquezas e forças, um sistema com sucesso deve explorar a cooperação
entre as diferentes fontes.
5.5.4 Stephen Grossberg - Aprendizagem atencional e saccádica
Este senhor publicou trabalhos apaixonantes que tentam explicar e propôr implementações de redes capazes de
ter funcionamentos altamente avançados, duma forma localmente simples e que não exige “ajudas externas” para
cumprir as funções desejadas. Além disto, as suas teorias são biológicamente plausíveis e tentam mesmo imitar certos
comportamentos das memórias encontradas no cérebro.
Vamos agora focalizar ainda mais este mecanismo complicado que envolve os movimentos saccádicos dos olhos,
e até mesmo as mudanças de atenção internas do cérebro. Toda esta teoria foi extraída do excelente livro “Neural
dynamics of adaptive sensory-motor control” de S. Grossberg e M. Kuperstein, 1989. Foram encontradas outras
referências em outros livros, mas que não apresentavam a profundidade daquele primeiro.
Sabe-se que são várias as zonas cerebrais que controlam estes movimentos: a retina, collicus superiore, córtex
parietal, cerebelo, córtex visual, córtex frontal, núcleo oculomotor e a formação reticular peripontine. Quando há vários
estímulos a incidir na retina, há uma competição entre eles e um será escolhido para ser o próximo foco de atenção, o
6-23
Reconhecimento automático de caracteres
Estudo do sistema visual
5-24
que é acompanhado por uma saccade reflexa. No que se refere às mudanças de atenção, essas são realizadas
internamente ao cérebro, mais específicamente nas memórias de trabalho. É aí que se vai processar a primeira análise
dos dados de entrada, pelo que são essas zonas que determinam a informação que vai ser armazenada na memória
associativa ou que vai ser utilizada para posteriores reacções.
Vamo-nos apenas debruçar sobre os mecanismos mais relevantes que intervêm no controlo das saccades,
deixando de parte considerações sobre os mecanismos de correcção de erros de movimento. Estas últimas têm como
objectivo apenas a explicação da auto-correcção de erros durante os movimentos saccádicos devido a imperfeições nas
respostas dos músculos, entre outros factores. Para o nosso trabalho, apenas nos interessa obter mais informação sobre o
modo de escolha e armazenamento dos contornos dum padrão.
Nestas primeiras alíneas, não vamos aprofundar demasiado os conceitos, querendo apenas dar uma ideia mais ou
menos sucinta dos processos cerebrais descritos e caracterizados por Grossberg. As alíneas seguintes apenas ligam os
vários conceitos e mecanismos, que serão posteriormente melhor detalhados.
5.5.4.1 Memória de curta duração - STM, e de duração longa - LTM
A memória de curta duração (STM - Short term memory) é uma rede que vai poder armazenar temporariamente
padrões de entrada da retina ou de camadas neuronais, através de caminhos de feedback positivo e negativo. Para evitar
efeitos de saturação devido a feedback positivo, este é controlado através de sinais de feedback competitivos ou
inibitórios laterais, que regulam automáticamente o ganho da rede. Mostra-se [Grossberg] que é possível traduzir esta
rede por meio de equações que representam a dinâmica da rede e que permitem calcular a progressão temporal desta. A
questão central deste tipo de rede recursiva, está nos campos receptivos do tipo ON-center OFF-surround (centro
positivo e periferia negativa). É através destas ligações laterais (incluíndo a auto-ligação) que um neurónio se autoexcita e inibe outros, conduzindo a uma dinâmica semelhante à da rede MAXNET mas em que podem sobreviver mais
que uma actividade no final, já que estas ligações têm um alcance limitado ou mesmo valores decrescentes com o seu
respectivo comprimento. Além desta rede realimentada, também existe uma versão simples de STM que apenas tem
como função normalizar as suas actividades. Esta última tem as ligações aferentes em forma ON-center OFF-surround.
Fig. 5.5-3 - À esquerda ilustra-se a rede feedforward que
fornece informação a esta rede STM, através dum campo receptivo
concêntrico. À direita ilustra-se a rede feedforward, em que os
campos receptivos se situam sobre a mesma camada e as ligações
aferentes podem ser arbitrárias. Estes campos receptivos são do tipo
ON-centrum OFF-surround, e originam uma dinâmica semelhante
às redes do tipo MAXNET na rede feedback, em que se amplificam actividades mais fortes e se atenuam outras mais fracas. Ao contrário da rede
MAXNET, em que apenas sobreviverá a actividade mais forte, nesta rede sobreviverão as actividades que iniciarem acima do limiar de supressão.
Aqui apenas se mostra o campo receptivo do neurónio central, sendo este semelhante para todos os outros. Assim, o funcionamento é simples e
intuitivo: um neurónio com forte actividade inicial tende a auto-excitar-se mais do que os outros o inibem, pelo que verá a sua actividade
amplificada; por outro lado, aqueles que começarem com uma actividade mais baixa do que o anterior, verão uma inibição lateral exercida pelo
neurónio mais forte maior do que a sua própria auto-excitação, vendo a sua actividade cada vez mais atenuada até desaparecer. Esta rede feedback
também possui propriedades de normalização das suas actividades. Devido a estas disposições, apenas nos interessará implementar uma STM com a
segunda topologia.
Na rede feedback é particularmente importante o envolvimento da função sigmoid presente nas suas equações
dinâmicas, função essa que vai introduzir o chamado quenching threshold1, que consiste no limiar que determina se um
ponto luminoso do padrão vai ser amplificado ou atenuado (se o ponto começar abaixo desse limiar, será suprimido; se
1
Do inglês “limiar de supressão”
6-24
Reconhecimento automático de caracteres
Estudo do sistema visual
5-25
começar acima desse limiar, será contrastado ao longo do tempo). Isto origina uma forte tolerância ao ruído, e
selecciona os pontos mais importantes do padrão através dum mecanismo de controlo automático de ganho de atenção.
Por outras palavras, há aqui um processo de contraste entre pontos dum padrão, em que apenas sobrevivem alguns que
serão armazenados na STM. A este processo de supressão de actividades baixas, chama-se featural noise supression
(supressão de padrões que não excitam suficientemente as células extractoras de features). Tudo isto é feito pela própria
STM, através dum período de free-run em que a realimentação positiva e negativa determinam aquela progressão
temporal de supressão/amplificação dos pormenores luminosos.
Fig. 5.5-4 - Efeitos de diferentes limiares de supressão. Em A e B, o mesmo padrão é
diferentemente transformado e armazenado na STM. Note-se que há uma espécie de normalização
da actividade total. O padrão antes do armazenamento na LTM é o colocado na STM no instante
de tempo zero, e após o armazenamento é o que resta depois do tempo de processamento pela
realimentação da STM. Faz-se assim, uma diferenciação entre dados significativos e nãosignificativos duma forma adaptativa que dá uma saída normalizada em actividade total.
Para conseguir uma simulação desta rede recursiva STM, foram feitos estudos [Grossberg e Kuperstein] que
levaram a equações e modelos capazes de serem testados. Esses modelos tinham em conta o tipo de função de
transferência, que originava diferentes comportamentos da rede STM. Usando uma função linear, mostra-se [Grossberg]
que a rede pode instabilizar, chegando a situações patológicas de “alucinação”, onde qualquer estímulo é amplificado,
devido a um limiar de supressão demasiado pequeno. Uma função sigmoid mostrou-se ser a mais apropriada.
Fig. 5.5-5 - Influência da função de transferência na transformação e saída final dum padrão
na STM. A sigmoid é a que condu z resultados mais úteis, enquanto que as outras produzem efeitos
indesejáveis.
Fig. 5.5-6 - Nesta figura vê-se a mesma
saída
da
STM
(padrão
armazenado
após
enriquecimento de contraste), para dois padrões
de entrada com níveis muito diferentes de
uniformidade.
Vantagens
imediatas
deste
armazenamento do tipo STM: além de serem escolhidas as actividades mais representativas do padrão (as maiores) mantendo-se uma normalização
da actividade final na STM, actividades pouco pronunciadas ou distinguíveis sofrem um aumento de contraste tal, que só sobrevivem os contornos
ligeiramente mais representativos. Este funcionamento das STM permite aos centros superiores receberem sempre informação representativa e nãoredundante, mesmo que a entrada na STM possua características altamente uniformes. Isto elimina totalmente a necessidade de controlos
automáticos de ganho exteriores (como foi feito por Fukushima [1988], através de linhas para trás que regulavam o genho das diversas camadas do
Cognitron de forma a obter na saída actividades com nível apropriado para o classificador final).
Este limiar de supressão não se encontra directamente implementado na rede, mas é apenas uma consequência
matemática da própria estrutura da rede. Quer dizer que é a estrutura desta rede que evita saturações através do
ajustamento automático dos seus ganhos internos, em resposta a diferentes cargas de estimulantes de entrada. É este
processo automático de ganho de atenção, que vai determinar a forma de armazanemento dum padrão na STM no lobo
parietal posterior. Por outras palavras, a rede tende a fazer com que apenas a população com a maior actividade inicial,
fique fortemente activa.
6-25
Reconhecimento automático de caracteres
Estudo do sistema visual
5-26
Resumindo, existe uma rede competitiva dinâmica selecciona uma população de actividades iniciais superiores
ao limiar de supressão, para ser posteriormente armazenada na STM. Realiza-se assim, uma espécie de contraste em que
apenas prevalecem os pontos dum padrão que provocam maior actividade, havendo também um mecanismo de controlo
automático de ganho de atenção, que adapta a posição daquele limiar a cada situação. Pensamos que isto significa que
para padrões muito complicados (muita luz), o limiar é aumentado, acontecendo o contrário no caso de padrões mais
simples. Desta forma, extraem-se mesmo só as features mais importantes e destoantes num padrão, ou seja, obtém-se a
“forma” geral do padrão.
As equações diferenciais necessárias [Grossberg] para se obter um funcionamento correcto duma STM, tiveram
em conta as respectivas equações que governam o funcionamento dinâmico da membrana neuronal:
C
∂V
= (V + − V ) g + + (V − − V ) g − + (V p − V ) g p ,
∂t
onde V(t) é a voltagem variável da célula, C é uma capacidade constante, V+ V- e Vp são limites de saturação
excitatório, inibitório e passivo, respectivamente. Estes estão relacionados com canais de iões Na+, K+ e Cl-,
respectivamente. Por outras palavras, a voltagem da membrana celular do neurónio não poderá exceder estes limites,
tanto positivamente (excitação) como negativamente (inibição). Os termos g+, g- e gp são condutâncias que podem variar
ao longo do tempo de acordo com os sinais de entrada (aprendizagem).
A equação diferencial que traduz a anterior, duma forma modelizada, é a seguinte:
dxi
= − Axi + ( B − xi ) ∑ I ex − ( xi + C ) ∑ I in ,
dt
onde xi é a actividade do neurónio I, A é a constante de decaimento expontâneo dessa actividade, B é o limite de
saturação excitatória, C é o limite de saturação inibitório, Iex são as entradas excitatórias e Iin sãoi as entradas inibitórias.
Note-se que Iex e Iin já passaram pelos respectivos pesos. Não se confunda actividade com saída do neurónio. A
actividade refere-se apenas à tensão interna do neurónio, que vai provocar uma saída de impulsos. Uma forma mais
extensa desta equação seria:
dxi
= − Axi + ( B − xi ) ∑ (o k ⋅ wik ) − ( xi + C ) ∑ (o k ⋅ wik ) ,
dt
onde O e W são as entradas (saídas de neurónios) e os respectivos pesos. Extendendo ainda mais esta equação,
de forma a contemplar as funções de transferência, obtemos a versão completa desta:
dxi
= − Axi + ( B − xi ) ∑ ( f k ( x k ) ⋅ wik ) − ( xi + C ) ∑ ( f k ( x k ) ⋅ wik )
dt
k
k
Desta forma, é facil verificar que a actividade do neurónio vai estar limitada a − C ≤ x ≤ B , com C e B
positivos. Como já se disse, quando a função de transferência f(.) dos neurónios é uma sigmóide, então a rede possui a
propriedade do limiar de supressão (quenching threshold -QT). Actividades que inicieam abaixo desse limiar são
atenuadas e vice-versa. Uma forma particular desta rede, é quando apenas existe uma ligação excitatória do neurónio
para ele próprio com peso unitário. Todas as outras ligações que lhe chegam são ligações inibitórias de longo alcance,
também com peso unitário:
dxi
= − Axi + ( B − xi ) f i ( xi ) − ( xi + C ) ∑ f k ( x k )
dt
k ≠i
Para esta rede, o QT é calculado [Grossberg] como sendo:
x (1)
QT =
,
B − AC −1
6-26
Reconhecimento automático de caracteres
Estudo do sistema visual
5-27
onde x(1) e C correspondem a grandezas específicas de f(.) (ver Grossberg). Assim, o QT depende dessas
grandezas, bem como de B e A. Para uma compreensão completa deste assunto, tem de se ver os estudos feitos por
Grossberg, onde se explica conceitos como as reflectâncias que são de primordial importância no processo de contrastenhace destas STM.
Este tipo de memórias STM foram largamente estudadas por Grossberg, e têm um papel muito importante na
aprendizagem, selecção, e processos de acção-reacçao cerebrais. Resta frisar bem, que também a retina já processava
algum contrast-enhacement, que será levado a níveis definitivos na STM.
Uma sequência de acções ou padrões que ficavam de cada vez activos na STM, passam de algum modo para a
LTM que preservará a ordem dessa sequência. Isto foi estudado [Grossberg] no caso de sequências do tipo actionreward em cobaias. Isto pode ter vital importância no caso de se construir um sistema capaz de reconhecer padrões
através dos seus movimentos saccádicos. Haverá ainda um gradiente de generalização que consiste no reconhecimento
de sequência intermédias a partir das aprendidas. Existe uma complicada interacção entre a STM e a LTM, onde
diferentes sequências de padrões (Ex: features ou acções) originam diferentes reacções (reinforcement, frustration). A
LTM responde com um padrão (espectativa) ao estímulo passado pela STM, criando uma espécie de relação expectancy
prediction. No caso da ordem da sequência ser quebrada por algum padrão inesperado, gera-se um reset da STM
acompanhado por uma onda cerebral chamada P300. Pode-se considerar como exemplo uma pessoas que sempre ouviu
uma sequência de acordes duma melodia, e que reage imediatamente a um acorde diferente que não devia estar ali.
6-27
Reconhecimento automático de caracteres
Implementação de um modelo da visão
6-1
6. Implementação de um modelo da visão
6.1 Introdução
Com base nos dados dos capítulos anteriores, é possível extrair-se um modelo com propriedades semelhantes às
do sistema visual. Tal como já foi dito no início, não pretendemos processar informação de cor, de movimento ou de
binocularidade. Numa fase inicial também não pretendemos implementar o sistema que controla os movimentos do olho.
Talvez o façamos numa fase mais adiantada, o que permitiria um mecanismo de segmentação e de localização
automática da atenção.
Em primeiro lugar, o que nos interessa, é a idealização e implementação dum sistema capaz de reconhecer
padrões já correctamente segmentados e escalados. Nesse reconhecimento também não vamos, numa fase inicial,
implementar mecanismos mais complexos do tipo que ocorrem em outras zonas do cérebro, relacionadas com mapas de
features. Em segundo lugar, estamos interessados em obter estruturas altamente plausíveis biológicamente
Resumindo, poderíamos dispor as várias fases possíveis da seguinte forma:
• Retina
Nesta fase, implementaríamos uma camada de neurónios capazes de processar a imagem apresentada de forma
semelhante ao homem, realçando os contrastes. Como ainda não se chegou à fase do mecanismo de controlo dos
movimentos do olho, não teria sentido realizar também a zona da fóvea. Assim, toda a retina terá igual densidade de
receptores.
• Córtex visual
Nesta fase, passar-se-ia à implementação das camadas que processariam a imagem fornecida pela retina, de
forma a conseguir discriminação visual das várias features básicas. Aqui também se realizará alguma invariância de
translação. Seria utilizado um factor de amplificação constante, o que poderia ser alterado numa fase posterior que
também já usasse uma zona foveal na retina. No fundo, apenas se faz uma discriminação de contornos nesta rede. No
entanto, este módulo não deve ser menosprezado, já que é dele que depende toda a compressão da imagem original.
• Mecanismo de reconhecimento cortical
Nesta fase mais avançada e difícil, procede-se ao reconhecimento própriamente dito, que também terá em conta
distorções, translações e rotações do padrão. Este mecanismo utilizaria os conceitos de Target Position Map e ART.
Numa fase ainda mais avançada até se poderia introduzir os conceitos de memória de trabalho e associativa.
• Mecanismo de movimento do olho
Esta seria a fase final, em que o sistema se reconhecimento conseguiria, por si mesmo, detectar os estímulos mais
importantes e orientar-se segundo eles, possibilitando o reconhecimento totalmente automático de sequências de
padrões. Apenas se teria de realizar a segmentação da zona de padrões a reconhecer, o que é muito mais fácil e cómodo
(Ex: zona de preenchimento do número de cheque).
Aqui já seria utilizada a fóvea, para se obterem diferentes níveis de atenção e reconhecimento (por exemplo para
um H feito de SS’s). O córtex visual teria agora hiper-campos receptivos de tamanho diferentes.
6-1
Reconhecimento automático de caracteres
Implementação de um modelo da visão
6-2
Estas duas últimas fases poderão não passar de um sistema idealizado. No entanto, essas fases parecem-nos de
fulcral importância para um salto adiante nos processos de reconhecimento de padrões de forma mais autónoma e
eficiente. Por exemplo, em todos os processos já experimentados (que nós saibamos), dá-se igual importância a toda a
área visual de entrada. Pode ser que isso origine uma excessiva confusão devido a uma sobre-carga de informação vinda
de todos os lados, tentando-se “ver” tudo de uma vez e sem capacidade suficiente de concentração nos pormenores mais
importantes. Talvez um sistema que se concentre numa zona de cada vez e que apenas tenha uma leve percepção do que
há dos lados, movendo-se através dum mecanismo que detecte e siga contornos importantes (guiado por essa
percepção), consiga realizar tarefas de reconhecimento que já se aproximem das do cérebro.
É óbvio que um sistema destes implicaria uma aprendizagem global que conseguísse abranger todos os
mecanismos envolvidos, de uma forma coerente e eficaz. Talvez se pudésse realizar tudo isto com uma rede
neocognitron ligeiramente modificada e aliada a outras redes que implementam os restantes mecanismos “auxiliares” e
de reconhecimento, tais como uma rede motora.
6.2 Diagrama de blocos
Fig. 6-1 - Componentes indispensáveis para uma primeira fase de reconhecimento automático de
caracteres correctamente segmentados e escalados. A retina faz uma espécie de pré-processamento
neuronal, o córtex visual encarrega-se da discriminação dos dados visuais, a secção de pós-processamento
(neuronal ou algorítmico) transforma os dados de forma conveniente para que o classificador possa decidir
pela melhor opção de uma forma controlada.
Numa primeira fase de do mecanismo de reconhecimento, o diagrama de blocos
reduz-se a apenas as suas componentes indispensáveis:
• Retina
Esta componente será realizada através duma rede neuronal com pesos préestabelecidos e fixos. Não será necessária qualquer aprendizagem, visto que se sabe
bem qual o resultado desejado, podendo este ser traduzido por pesos de valor
conhecido. Como já se disse, a função desta rede, será a de extrair os contornos do
padrão a classificar. Assim, dum padrão a cheio na entrada, resultará uma réplica
constituída apenas de contronos.
• Córtex visual
Esta componente também será realizada através duma rede neuronal, desta vez
de muito maior complexidade, e com a capacidade de aprendizagem. É aqui que se
fará a discriminação dos contronos através da extracção de features. Apenas termos contornos hipercomplexos na sua
saída (ângulos, etc.). Além disso, implementaremos apenas a zona foveal, de maior concentração de pequenas hipercolunas.
• Classificador
Este classificador vai decidir entre várias possibilidades de classificação, a partir dos dados fornecidos pelo
córtex visual.
Tanto quanto possível, optaremos por soluções neuronais em detrimento de algoritmos programados. Também
iremos sempre dar primazia a redes treinadas, em detrimento de pesos pré-estabelecidos (excepto no caso simples da
retina).
As STM serão implementadas nas várias camadas do córtex visual artificial. O classificador mais simples será
uma rede treinada com o algoritmo da rectro-propagação do erro. Será essa a solução final que vamos realizar neste
trabalho.
6-2
Reconhecimento automático de caracteres
Implementação de um modelo da visão
6-3
6-3
Reconhecimento automático de caracteres
Retina artificial
7-1
7. Retina artifical
Neste ponto, vamos descrever os aspectos funcionais e anatómicos da retina modelizada para o nosso sistema de
reconhecimento.
7.1 Considerações iniciais
A retina será o ponto de entrada para todo o mecanismo de reconhecimento a montante. É dela que vai depender
o tipo de dados que o córtex visual discriminará. Assim, atendendo a conhecimentos anatómicos e funcionais, esta retina
vai ter como funções principais:
• Eliminar zonas cheias, deixando apenas os contornos dessas zonas, já que apenas vão ser discriminados
contornos.
• Se só existirem contornos, a retina deverá alargá-los de forma a se obter uma saída com contornos hipercomplexos discrimináveis.
7.2 Funcionamento
Esta retina artificial será constituída por apenas um tipo de neurónios, que simularão a interacção entre os vários
tipos de neurónios presentes na retina real (bipolares, amácrinas, ganglionares, horizontais). O que desejamos à saída da
retina, é apenas a característica dos campos receptivos do nervo óptico eferente do olho. Essa característica mantém-se
até chegar ao córtex visual.
Essas características dos campos receptivos vão originar o tal contrast-enhacement, que no caso de imagens
binárias se reduz a uma simples extracção de contornos.
Fig. 7-1 - Dependendo da posição de cada campo receptivo, vão-se ter saídas
activas ou não-activas: apenas as células com campos receptivos centrados na fronteira
claro-escuro é que vão ser activadas. O efeito final é o da sobrevivência apenas de
pontos pertencentes ao contorno do padrão.
Este processo é bastante simples e foi comprovado com êxito,
na parte experimental.
7-1
Reconhecimento automático de caracteres
Retina artificial
7-2
7.3 Implementação práctica
Vamos agora expôr pormenores da nossa implementação no programa de simulação NeuroCAD - Neural
Network CAD-Workshop. Entre esses pormenores, contam-se as disposições e tipos de células, bem como resultados
finais.
7.3.1 Parâmetros da rede
Esta rede vai ser constituída apenas por uma camada de células que farão a tranformação desejada à imagem de
entrada, e será constituída apenas por células com campo receptivo do tipo ON-Centrum1.
• Dimensão e tipo de entrada
Para o tamanho de entrada, escolhemos 32x32 devido a termos disponíveis uma base de dados com bitmaps de
caracteres com esse formato. Fazendo reduções à escala desses caracteres, obtinham-se versões que já pouca ou
nenhuma informação de contronos tinham, pelo que decidimos manter aquele formato original. Estes bitmaps serão do
tipo preto-e-branco, pelo que teremos entradas booleanas.
• Tipo de camadas
Utilizámos camadas quadradas com 32x32=1024 neurónios, tanto para a saída como para a entrada. Isto significa
que iremos obter à saída um bitmap semelhante ao de entrada mas transformado de forma conveniente.
• Tipo de ligações
É aqui que se vai determinar toda a transformação efectuada pela rede. Em semelhança com a retina real, cada
célula vai possuir um campo receptivo quadrado 3x3 do tipo ON-Centrum. O centro vai ter dimensão 1x1 e peso 1,
enquanto que as restantes 8 ligações vão ter peso -1/8. Isto garante que, quando todo o campo receptivo estiver
estimulado, a célula fica com excitação resultante nula. Apenas utilizámos campos receptivos do tipo ON-Centrum,
porque isso já permite atingir o objectivo em vista para a retina (contrast enhacement). Utilizar só células OFF-Centrum
daria origem ao mesmo resultado, mas com um shift de um pixel2. Usando campos receptivos maiores apenas
complicava os raciocínios, além de não trazer melhorias nenhumas face aos objectivos plenamente alcançados com 3x3.
A distância inter-campo será unitária, o que resulta da camada de saída ter o mesmo número de células da de
entrada. O centro de cada campo receptivo será colocado de forma sequencial, a partir do primeiro pixel de entrada, o
que origina que os extremos ficarão com ligações nulas.
Fig. 7-2 - O campo receptivo duma célula do tipo ON-Centrum
tem o centro excitador e uma periferia inibidora. As células da camada de
saída são sequencialmente projectadas para a camada de entrada, com o
centro do campo receptivo como ponto de referência. Cada linha de saída
será ligada também em linha à entrada, até se completar. Depois, passa-se
à linha seguinte. Desta forma, preserva-se a distribuição espacial a 2D,
também na teia de ligações resultantes. Neste desenho também fica
evidente o espaçamento unitário entre campos receptivos, nas duas
direcções.
• Tipo de neurónio
A camada de entrada terá apenas uma função amplificadora unitária linear.
1
Mais à frente faremos experiência com células do tipo OFF-Neuron.
2
Em resultados posteriores, vimos que isto pode ser uma vantagem para a classificação de padrões filiformes (sem grossura).
7-2
Reconhecimento automático de caracteres
Retina artificial
7-3
Para as células constituintes da camada de saída3, usámos neurónios sem capacidade de aprendizagem. A sua
função de entrada será do tipo Weighted, em semelhança com o que acontece na retina real. A sua função de saída será
do tipo Step, já que queremos uma saída activa apenas quando existe uma fronteira entre preto e branco nessa zona.
Assim, verificámos experimentalmente que um limiar de threshold de 0.25 (saída activa quando o centro era excitado, e
não mais de 6 ligações inibidoras: 1 - 6/8 = 0.25) era adequado aos nossos propósitos. Esta threshold foi implementado
dirtectamente na função Step, mas poderia ser implementado usando o peso de Bias. Os pesos de Bias não são
utilizados, sendo colocados a zero.
Fig. 7-3 - Diferentes situações relativas do campo receptivo e
da fronteira claro-escuro, com uma ampliação do campo receptivo a
mostrar as várias ligações activadas (vazio-desactivada; cheioactivada). Em cima, temos três exemplos para uma fronteira paralela ao
campo receptivo (os mesmos resultados obter-se-íam no caso vertical).
(A) - Não se excita o centro, pelo que a célula correspondente não será
activada. (B) - Já se excita o centro, havendo não mais de 6 inibições, o
que activa a célula. (C) - há mais de 6 inibições, e a célula não se
activa (neste caso até se verificava uma média pesada nula). (D) Mesmo que em (A). (E) - Mesmo que em (B). (F) - Este é o caso limite
em que há exactamente 6 inibições e a célula será activada. Esta foi a
melhor condição-limte, pois resultava em saídas com os contornos
intactos. Mais à frente veremos as diferenças de escolha do threshold.
Resumindo, vamos aqui listar todos os parâmetros mais importantes introduzidos no NeuroCad, para
conseguirmos obter a rede da forma exposta anteriormente:
•
•
•
•
•
Input data type: Bitmap
Output data type:
Weights type:
Bias weight:
Input function:
Bitmap
48 bit / 6 byte
Not used
Weighted
•
•
•
•
•
Output function:
Linkage type:
Receptive field size:
Receptive field center:
Interfield offset:
Deste arranjo resultaram os seguintes dados numéricos da rede:
• Possible link count:
• Weights memory:
67 Kb
• Weight count:
• Layer count:
2
• Forward connectivity:
• Neuron count: 2048
• Link count:
10240
Step (threshold=0.25)
Receptive fields
3x3 (weight=1)
1x1 (weights= -1/8)
1 Horiz. 1 Vert.
1049600
11264
0.975%
7.3.2 Resultados
Colocando alguns bitmaps à entrada da rede, pudémos logo verificar que se estava a processar o esperado: na
saída obtinham-se réplicas só de contornos.
3
Para além da camada de entrada obrigatória no NeuroCAD, e que apenas faz um buffering dos sinais de entrada.
7-3
Reconhecimento automático de caracteres
Retina artificial
7-4
Fig. 7-4 - Saídas da retina para imagens
de entrada com dimensões de 32x32. As imagens
do lado direito de cada par, são as entradas, e as
saídas estão à direita. Como as imagens já são
relativamente grandes, já se pode ver os contornos
interior e exterior de cada símbolo. As células
trabalhavam com um threshold de apenas 0.25.
Desta
forma,
todos
os
contornos
foram
preservados. Note-se que uma linha fina não sofre
qualquer transformação. Note-se também que
letras
mais
pequenas
são
completamente
preservadas.
Fig. 7-5 - Saídas da retina com as células a
trabalharem com um threshold de 0.375. Desta vez,
cada célula já é activada quando há pelo menos 5
sinapses inibidoras activas. Como se pode ver, isso
provoca uma ligeira deterioração dos contornos nas
zonas de segmentos de recta inclinados.
Para que tudo isto funcione do
modo esperado, os padrões terão de ter
um tamanho mínimo, que consiste em ter
linhas que não se toquem. Caso isso
aconteça, o padrão será preservado.
Contudo, como se verá durante o desenvolvimento da parte neuronal do córtex visual, isso não constitui qualquer
problema. Caso o padrão seja filiforme, também não haverá qualquer transformação, o que já pode trazer sérios
problemas de discriminação no córtex viosual posterior, que já não será mais capaz de discriminar ângulos em
segmentos de rectas. Por exemplo, u numeral 1 pode já não ser correctamente classificado, pois não haverá nenhuma
célula hiper-complexa activa (não se detectam quaisquer ângulos). Isto é tudo devido ao facto desta retina estar a extrair
os contornos interiores das fronterias claro-escuro.
Parece-nos extremamente importante que a retina seja capaz de amplificar mais aqueles pormenores que
interessam para a discriminação e reconhecimento de padrões. De facto, como vimos durante o estudo desses
mecanismos reais, é dada especial importância aos contornos, durante a discriminação visual no cérebro. Interessa mais
a “forma” do que o “tamanho”. No nosso caso extremo, apenas extraímos os contornos.
Fazendo experiências com neurónios OFF-Centrum, obtivémos resultados semelhantes mas com um shift de um
pixel dos contornos, o que permite a possibilidade de extracção de features semelhantes às do mesmo padrão cheio.
Fig. 7-6 - Neste caso, onde se utilizam
exclusivamente células com campo receptivo do tipo
OFF-Centrum, a retina extrai os contornos exteriores
das fronteiras claro-escuro. Isto mostra-se vantajoso
para os padrões filiformes, que também vão poder ser
discriminados conforme ângulos no córtex visual.
Note-se que alguns contornos extremos das imagens
podem desaparecer devido aos limites de 32x32
impostos pelo bitmap. No entanto, se isso acontecer
poucas vezes ou em zonas rectilíneas, não degradará
substancialmente o conteúdo das features angulares.
7-4
Reconhecimento automático de caracteres
Retina artificial
7-5
A associação de células do tipo ON-Centrum e OFF-Centrum, poder-se-á obter um resultado que resolve os
problemas pontuais existentes nas duas configurações retinianas anteriores. As saídas de cada par de células ONCentrum e OFF-Centrum seria Ored, para dar uma soma dos dois resultados independentes. Apesar da atractibilidade
desta solução, podem surgir problemas nas células simples do córtex visual, as quais serão mais sensíveis a contornos
filiformes do que cheios (largura maior que um pixel), devido ao arranjo adoptado para os seus campos receptivos (ver
córtex visual). Para que esta solução funcionasse bem, seriam necessárias algumas modificações nas estruturas
anatómicas e de aprendizagem dessas células.
Fig. 7-7 - Aqui pode-se ver o resultado da
acção conjunta dos dois tipos de campos receptivos
das células retinianas.
A acuidade dum sistema de reconhecimento que tenha uma retina deste tipo, será levada ao limite, na medida em
que ainda se consegue activar as células hiper-complexas. Apenas com células ON-Centrum, essa acuidade virá limitada
a padrões cheios (mínima largura de 2 pixels). A acuidade visual humana poderá também estar relacionada com este
fenómeno de discriminação limite.
7.4 Comentários finais
Com este modelo simplificado da retina, apenas pretendemos extrair os contornos dum padrão, para que este
possam ser discriminados no córtex visual (que só funciona bem com contornos). Das duas configurações principais
apresentadas, apenas vamos usar aquela que usa neurónios com campo receptivo do tipo OFF-centrum, por razões que
se prendem com o prórpio funcionamento do córtex visual.
Fica assim concluída a parte que se refere à rede neuronal artificial que cumpre a função de contrast-enhacement
da retina real. Os treinos subsequentes das redes a montante, utilizarão as saídas desta retina artificial como conjunto de
treino. Note-se mais uma vez, que esta retina constitui a fóvea dum sistema que poderá ser muito mais desenvolvido e
complexo, incluíndo movimentos saccádicos.
7-5
Reconhecimento automático de caracteres
Retina artificial
7-6
7-6
Reconhecimento automático de caracteres
Córtex visual artificial
8-1
8. Córtex visual artificial
Nesta parte vamos expôr todo o trabalho feito durante a elaboração deste bloco do sistema de reconhecimento. É
aqui que se vai fazer um processamento mais sério dos dados visuais provenientes da retina artificial.
8.1 Considerações iniciais
O córtex visual será o bloco intermédio que vai ter a fundamental função de discriminar e extrair features, a
partir dos dados fornecidos pela retina. É deste bloco que vai depender a “filtragem” dos pormenores do padrão que vão
determinar o conjunto de dados classificáveis.
Dificuldades encontradas no processo de convergência do algoritmo de treino utilizado, obrigaram-nos a usar um
conjunto de treino com padrões pré-fabricados, em vez dos dígitos já disponíveis. Estes padrões tinham a forma
desejada para a sensibilidade dos campos receptivos de cada camada a treinar.
8.2 Funcionamento
Tal como parece acontecer no cérebro, vamos construir uma complexa rede constituída por hiper-colunas. Cada
hiper-coluna será constituída por colunas sensíveis a uma só orientação e que cobrem uma certa zona da retina. Cada
coluna será feita dum conjunto de células simples, cada uma com um campo receptivo semelhante mas em sítios
diferentes daquela zona da retina. Estas células simples discriminarão a orientação de contornos, e convergirão para
células complexas. Estas vão proporcionar alguma invariância que será útil para uma flexivel detecção de ângulos nas
células hiper-complexas seguintes. A informação de discriminação por estas fornecida, vai ser depois encaminhada para
posterior processamento em instâncias superiores de tratamento visual.
Fig. 8-1 - Desenho esquemático da disposição das colunas
dentro das hiper-colunas. Cada coluna conterá neurónios simples
com campos receptivos dentro dum mesmo hiper-campo
receptivo, uniformemente distribuídos. Essas colunas também
conterão neurónios complexos que combinam mais do que um
neurónio simples. As hiper-colunas conterão um leque de colunas
que cobre todas as orientações possíveis de 0º a 180º, e as suas
células hiper-complexas combinarão mais do que um (e de
preferência apenas dois) neurónios complexos, de forma a ficarem
receptivas a ângulos de variadas magnitudes e posições. Os
axónios destes últimos vão formar o fluxo de informação da
imagem
discriminada,
para
futuro
porcessamento
e
reconhecimento. Note-se que apenas representámos aqui 3 hipercolunas e 4 colunas, para simplificar o desenho. Na realidade, isto
será muito mais denso. Estas hiper-colunas terão hiper-campos receptivos que cobrem todo o dígito de entrada (32x32) de forma a ficarem algo
sobrepostas, tal como acontece na combinação retina-córtex visual dos mamíferos. Cada hiper-coluna terá toda a maquinaria necessária ao
processamento dum hiper-campo receptivo retiniano. Como é óbvio, estas hiper-colunas serão iguais entre si.
8-1
Reconhecimento automático de caracteres
Córtex visual artificial
8-2
Assim, apenas as features extraídas pelas células hiper-complexas serão aproveitadas para processamento
posterior. Significa isto, que esta rede terá uma entrada que é a saída da retina, e terá uma saída que indica quais as
features presentes e onde.
Esta rede já será treinada, em que se apresenta um conjunto de treino criteriosamente escolhido, para que as
várias células adquiram as diferentes capacidades de discriminação. Este treino será não-supervisionado e organizativo,
de forma a se obterem semelhanças com a distribuição suave característica no córtex visual.
Como vão haver três tipos de neurónios, que à partida não sabem qual o tipo de campo receptivo a que devem
ficar sensíveis a, vai ser necessário introduzir algumas regras de constrangimento durante a fase de treino. Essas regras
têm como objectivo um treino específico para cada classe de neurónios.
Como o treino duma rede tão grande se perspectivava fastidioso, decidimos dividir esse treino em duas partes
que em nada invalidam o modelo usado. Primeiro treina-se uma só hiper-coluna, e depois replica-se esta rede até
preencher todo campo visual da retina. Assim, a hiper-coluna protótipo será treinada com padrões do tamanho a camada
de entrada, ou seja, com a parte da retina que lhe compete.
Além do treino-protótipo, a aprendizagem de cada camada será feita individualmente e a começar pela camada
de células de campo receptivo simples. Cada camada posterior só será treinada quando a anterior já estiver treinada.
Realmente, não teria sentido estar a treinar tudo ao mesmo tempo, já que os dados que chegariam às camadas
posteriores não teriam significado válido.
Von Malsburg [1973] construíu e simulou um modelo de córtex visual de vertebrados superiores (Ex: gato,
homem). O objectivo da experiência era de simular a auto-organização dos neurónios sensíveis às orientações, no córtex
estriado. Estes neurónios encontram-se na zona 17 (primária) do córtex visual, e respondem preferencialmente a certas
orientações de segmentos de entrada. Hubel e Wiesel [1962] mostraram que as células corticais estavam organizadas
naquilo que eles chamaram “colunas”, perpendiculares à superfície cortical. Todas as células orientadas dentro da
mesma coluna, responderiam à mesma orientação. Mais surpreendente foi o trabalho posterior de Hubel e Wiesel [1968,
1974] que indicava que as preferências de orientação de colunas adjacentes e próximas eram altamente correlacionadas,
e que estas preferências variavam de forma suave ao longo do córtex visual (ver Peters e Jones, 1985, para maior
detalhe).
8.3 Hiper-coluna protótipo
Chamamos a esta rede hiper-coluna protótipo porque vamos apenas treinar uma hiper-coluna, que será
posteriormente copiada de forma a existirem tantas quanto necessário para cobrir todo o campo de entrada de 32x32, e
que é precisamente a saída da retina.
Como já dissémos, esta rede será constituída por colunas de células simples, complexas e hiper-complexas. Na
implementação práctica, cada classe de células estará confinada a uma só camada que comunica com as camadas
anterior e posterior. Assim, termos uma camada de células simples, outra de complexas e uma última de células hipercomplexas. Cada coluna será apenas diferenciada pelo conceito de plano de células do NeuroCAD, em que cada um
destes planos simulará uma coluna e terá toda influência de todo o hiper-campo receptivo da hiper-coluna, tal como
acontece com as colunas no córtex visual (todas as colunas duma hiper-coluna recebem ligações de zonas que cobrem
agora todo o hiper-campo receptivo).
8-2
Reconhecimento automático de caracteres
Córtex visual artificial
8-3
Fig. 8-2 - Representação esquemática da hiper-coluna
protótipo, com todos os seus componentes internos. O campo
visual é dividido em vários hiper-campos reeptivos, cada um
pertencendo a uma hiper-coluna igual a esta. Dentro desse hipercampo receptivo, existem vários campos receptivos simples,
pertencendo às várias colunas. Cada coluna vai possuir neurónios
cujos campos receptivos simples varrem todo o hiper-campo
receptivo. No esquema mostram-se apenas alguns campos
receptivos simples e algumas ligações. Os neurónios complexos
ainda pertencem ideológicamente às colunas, apesar de estarem
numa camada posterior na implementação práctica. Cada neurónio
hiper-complexo vai receber campos receptivos de todas as colunas,
ou seja, dos seus neurónios complexos. Os axónios destes
neurónios hiper-complexos formarão a saída da hiper-coluna.
A replicação destas hiper-colunas protótipo
far-se-á no NeuroCAD através das suas capacidades
de NetFlow. Todos as ligações e neurónios serão
partilhados, havendo na realidade apenas uma cópia
em memória. O NetFlow encarregar-se-á de comutar
o hiper-campo receptivo desta hiper-coluna, para todas as posições do campo visual fornecido pela retina. Óbviamente,
esta hiper-coluna será treinada com o resultado do processamento efectuado pela retina.
Durante a implementação desta hiper-coluna protótipo, tivémos que pesar vários factores, o que origem a um
conjunto de treinos preliminares, que serviram essencialmente para testar e calibrar os métodos de treino a usar. Nesta
primeira fase surgiram alguns problemas e também limitações, o que levou a uma segunda implementação já definitiva.
A única coisa que foi decidido de início para ficar constante, foi o tamanho do hiper-campo receptivo de cada
hiper-coluna, fixado em num quadrado de 12x12 pontos retinianos. Significa isto, que o campo visual de 32x32 será
dividido em 3x3 hiper-campos receptivos com sobreposição de 48 pontos em cada um (2 pontos em ambas as
direcções). Esta seria a configuração mínima para abranger todo o campo visual, mas também se pode optar por uma
configuração com 4x4 hiper-campos receptivos, desta vez com uma sobreposição maior entre eles. A decisão será feita
após ponderar os possíveis prós e contras. Por agora, vamo-nos apenas concentrar na implementação duma hiper-coluna
protótipo.
O objectivo principal desta parte do trabalho, é pois o de implementar esta rede atendendo à fisiologia real das
redes biológicas encontradas no córtex visual, e de verificar o funcionamento dessa rede tendo em conta o
funcionamento do córtex real.
8.3.1 Implementação práctica
Vamos aqui expôr os pormenores da nossa implementação no programa de simulação NeuroCAD - Neural
Network CAD-Workshop. Começaremos por expôr os pormenores da hiper-coluna protótipo, e só depois é que
seguiremos para uma rede mais global.
Como também já se sabe, a hiper-coluna vai conter uma camada de neurónios simples, uma camada de neuróios
complexos e uma camada final de neurónios hiper-complexos. A contrução e treino serão feitas numa base de camada-acamada.
8.3.1.1 Camada de neurónios simples
8-3
Reconhecimento automático de caracteres
Córtex visual artificial
8-4
O primeiro passo para a construção desta hiper-coluna protótipo, será o de implementar a primeira camada de
neurónios simples no NeuroCAD. Esta aproximação resultou numa camada com 1296 neurónios, distribuídos por
planos1. Como já se sabe, a função desta camada, será a de discriminar segamentos de diferentes orientações.
8.3.1.1.1 Parâmetros arquitecturais
Aqui vamos listar os parâmetros essenciais desta rede, sendo algumas justificações para um ou outro pormenor,
apresentadas mais à frente durante a fase de escolha de padrões e respectivo treino.
• Dimensão da camada
Esta camada terá 3x3 planos, cada um com 12x12 neurónios (tal como o tamanho do hiper-campo receptivo).
Desta forma, garante-se que todos os pontos dessa parte do campo visual retiniano recebem um centro de campo
receptivo simples dum neurónio simples respectivo. Como os campos receptivos vão ser pequenos (definidos mais à
frente), além de outro problema relacionado com os dados retinianos a treinar, perder-se-ia informação se se optásse por
um espaçamento maior que o unitário entre centros.
Fig. 8-3 - Exemplos de problemas que podem ocorrer
com um campo receptivo de 3x3. No exemplo à esquerda,
mostra-se o mau resultado obtido devido a uma distribuição
muito rara dos campos receptivos simples pelo campo visual.
Esta situação é óbviamente indesejada. À direita, mostra-se a
possibilidade dum campo receptivo a um segmento de recta
oblíquo nunca ficar excitado pelo estímulo correspondente
(contorno). Neste caso ( e só se mostra o espaçamento
vertical) o espaçamento de 2 em 2 pontos dos campos receptivos simples, foi claramente insuficiente para apanhar contornos que fiquem no meio de
dois deles. Se se espaçar os campos receptivos de apenas um ponto (máxima concentração), então garante-se que nenhum destes efeitos negativos
apareçam.
Numa experiência, onde ainda não estávamos conscientes dos problemas que surgeriam, colocámos campos
receptivos com uma distância inter-campo igual a dois. O treino correu bem porque os campos se adaptaram, mas
quando fomos a fazer chamamentos à rede com padrões de teste, havia certos contornos para os quais a rede não
mostrava qualquer actividade. No entanto, eram contornos iguais aos treinados, mas em posições diferentes das do
treino. Então foi aí que concluímos que esses contornos só podiam estar a cair entre as zonas excitatórias de campos
receptivos adjacentes, faltando um campo intermédio que o apanhásse. Assim, caindo apenas em zonas inibitórias, não
havia qualquer excitação. Resumindo, a distância máxima entre campos receptivos adjacentes, deve ser igual à grossura
dos contornos a analisar por estes.
Como se verá do tipo de ligação a seguir, vamos precisar de apenas 8 planos de neurónios simples para
discriminar as diversas orientações que vão aparecer. Por questões ligadas à função vizinhança do processo de treino e
organização, vamos utilizar umm quadrado de 3x3 planos. Cada um com os 12x12 neurónios resulta num total de 1296
neurónios nesta primeira camada.
• Tipo de ligações
As ligações serão óbviamente em forma de campos receptivos espaçados unitáriamente. Decidimo-nos por fixar
um campo receptivo de 5x5 para cada neurónio simples. Este tamanho e forma foram escolhidos de forma a permitir que
estes neurónios possam ficar sensíveis a um segmento de recta de qualquer orientação dentro desse campo. Pensa-se que
no córtex visual cada neurónio simples tem ligações apenas em linha, não possuíndo ligações ao ldao dessa linha,
1
Recorde-se que um plano no NeuroCAD corresponde a um conjunto de neurónios geralmente com pesos partilhados (iguais). De plano para
plano, as ligações irão dar à mesma zona da camada anterior.
8-4
Reconhecimento automático de caracteres
Córtex visual artificial
8-5
ficando sensível a um segmento de recta orientado conforme aquelas ligações. Para ficar sensível a outra orientação,
têm-se de desfazer e refazer ligações. Para permitir esse nível de plasticidade, fizemos o campo receptivo quadrado para
poderem ficar activas as ligações que interessem.
Fig. 8-4 - Todas as orientações distinguíveis por um campo receptivo de 5x5. As orientações
emparelhadas poderão ser consideradas prácticamente iguais, o que poupará em número total de
planos necessários para discriminar entre essas orientações. Assim, apenas serão necessários 8 planos
de neurónios simples, cada um sensível a uma orientação. Os valores indicam o ângulo de rotação das
orientações, com referência ao segmento vertical. Os segmentos agrupados, são vistos uma única
rotação média. Bastam rotações entre 0º e 180º (exclusivé), para obter todos os segmentos possíveis.
No fundo, estamos a conferir à rede uma grande capacidade plástica de se adaptar a qualquer orientação.
Utilizando os 9 planos com 12x12 neurónios cada, resulta num total de 32400 ligações a partir de 225 pesos partilhados.
• Tipo de neurónios
Os neurónios serão dum tipo capaz de aprender pela regra de Hebb, e terão capacidades de ajustar o seu limiar de
disparo duma forma dinâmica adaptativa.
Em primeiro lugar, quanto à regra de aprendizagem, fizemos algumas experiênias frustrantes no início desta
implementação, e que consistiam em utilizar a regra de aprendizagem e competição da rede kohonen2. Esta regra de
actualização fazia com que os pesos ficassem com uma representação espacial dos padrões a treinar, isto é, os pesos
adquiriam uma forma espacial misturada ou única daqueles padrões. Ora, isto originava resultados totalmente
indesejáveis, visto que os pontos e zonas escuras (ausência de estímulo) também encaradas da mesma forma que os
contornos. Por outras palavras, os neurónios tendiam a ficar com uma representação espacial de qualquer coisa que
aparecesse na entrada; os seus pesos podiam muito bem tender para as zonas escuras sem qualquer utilidade práctica
para o problema em causa.
Fig. 8-5 - O problema essencial da regra de aprendizagem por “similaridade” dos
pesos com os padrões, é que qualquer entrada é um padrão “bom” e aprendível pelos
neurónios respectivos. À esquerda temos um exemplo de alguns conjuntos de pesos que
adquiriram representações espaciais úteis, na medida em que essas representações são mesmo
contornos que queremos que o córtex visual seja capaz de discriminar. Por outro lado, também
há aqueles conjuntos de pesos que adquirem representações espaciais de padrões “inválidos” e
inúteis para esta tarefa de discriminação. Tudo isto é causado pelo facto de que esta regra de
competição escolhe o vencedor com base na sua similaridade de pesos com o padrão presente no seu campo receptivo. Assim, até um padrão “vazio”
pode vencer, pois representa um vector de entrada a zeros.
Durante o treino da rede ainda com a teoria intacta do kohonen, chegámos a situações a princípio estranhas, pois
a rede ficava activa até para padrões nulos. O que nós queremos não é obter uma representação de tudo o que entra, mas
sim apenas dos contornos, dos estímulos.
Todo este caminho levou-nos à escolha duma regra de competição que não tinha em conta a similaridade dos
pesos com o padrão, mas sim apenas a actividade de saída dos neurónios. Esta actividade seria calculada como é
habitual fazer-se: uma soma dos sinais de entrada, ponderados pelos valores dos pesos; uma média pesada das entradas.
Y=
ΣX⋅W
Eq. 8-1
Aliada a isto, passaríamos a usar a regra de Hebb para a actualização dos pesos, com uma normalização dos
pesos após cada actualização. Essa normalização far-se-á de forma a manter uma soma de pesos unitária. Esta última
medida tem três objectivos cruciais:
2
Esta rede utiliza uma actualização de pesos baseada na distância de cada peso ao valor de entrada originado pelo padrão apresentado.
Assim, os pesos ajustam de forma a parecerem cada vez mais com algum padrão.
8-5
Reconhecimento automático de caracteres
Córtex visual artificial
8-6
- evitar que os pesos aumentem indefinidamente, já que a regra de Hebb restrita não prevê qualquer mecanismo
de decaimento daqueles. Esta regra apenas aumenta pesos.
- ao mesmo tempo que uns pesos sobem, outros terão de descer para manter a sua soma constante. Isto resolve
logo o problema do contraste entre zonas fortemente excitatórias e zonas prácticamente nulas (ligações inexistentes).
- manter a gama de valores de saída dos neurónios, entre 0.0 e 1.0, sabendo que as entradas serão digitais 0/1.
Fig. 8-6 - Sequência de aprendizagem dum campo receptivo
simples que fica sensível a um segmento de recta contido no campo
visual (no hiper-campo receptivo da hiper-coluna em causa), após
vencimento do neurónio respectivo. A princípio, o neurónio venceu
por uma questão de igualdade entre todos eles3, mas à medida que os
seus pesos se vão adaptando, este neurónio vencerá por mérito próprio sempre que lhe aparecer aquele segmento de recta no seu campo receptivo.
Assim, há pesos que vão aumentando e outros que vão diminuindo. No final deste processo de convergência, o campo receptivo ficará quase 100%
sensível apenas a um segmento de recta exactamente naquela posição do campo visual.
Note-se que é absolutamente necessário que a inicialização dos pesos seja sempre diferente de zero, e de
preferência igual a um valor elevado (EX: 1). A regra de Hebb nunca chega a funcionar para todas as ligações
possuirem pesos nulos. Isto é óbvio, pois se o neurónio nunca consegue ficar activo, também não haverá actualização de
pesos. Este problema mantém-se mesmo com a adaptação automática do limiar de disparo, explicado mais à frente.
Cada neurónio tem de possuir pelo menos um peso positivo para que todo o processo passe a funcionar.
Resumindo, os neurónios vão apenas ser excitados com estímulos reais, e não “padrões” quaisquer. Isto origina
actividades apenas quando existem de facto estímulos luminosos.
8.3.1.1.2 Parâmetros de treino
Os parâmetros de treino referem-se ao processo de aprendizagem interna de cada neurónio, bem como à
característica de vizinhança entre eles.
• Treino interno do neurónio simples
A constante de aprendizagem epsilon será fixada em 0.8. Isto decorre dos resultados experimentais obtidos num
trabalho anterior com a rede kohonen, e que estamos a extrapolar para aqui visto ter originado uma aprendizagem
correcta e segura. Não será feita qualquer diminuição progressiva deste valor em função do tempo, já que isso não se
mostrou ser vantajoso neste caso. A regra de actualização dos pesos é, como já tinhamos visto, a regra de Hebb. Esta
regra será ainda afectada pela função de vizinhança, mas por agora vamos apenas apresentar a forma essancial usada:
∆W=Y⋅X ⇐ Y>0
∆W=0
⇐ Y≤0
com Wf=Wi+∆W
Quanto ao peso de Bias, este vai determinar o limiar de resposta de saída. A ideia é a de dar ao neurónio a
capacidade de adaptar este nível duma forma automática, com base na história das suas saídas anteriores. Assim, e tendo
em conta características do neurónio biológico, este limiar vai--se ajustar de forma a se situar algo abaixo da saída do
neurónio. Esta adaptação é análoga à caraterística capacidade de habituação dos neurónios biológicos.
A acção que se quer implementar para obter um comportamento semelhante, obriga às seguintes condições:
3
No início, como os neurónios terão todos pesos inicializados à volta do mesmo valor, ou mesmo iguais, escolhe-se um ao calha que vá
iniciar todo um processo de convergência dinâmico.
8-6
Reconhecimento automático de caracteres
∆Bias= -∆⋅Y ⇐ Y>0
∆Bias= ∆
⇐ Y≤0
Córtex visual artificial
8-7
com Biasf=Biasi+∆Bias
Traduzido para linguagem corrente, estas condições reduzem a:
- Se o neurónio ficou activado, então significa que a sua actividade deverá decrescer, pelo que se torna o Bias
mais negativo de forma a difiultar a activação desse neurónio. Este decréscimo terá de ser óbviamente proporcional à
prórpia actividade, para se evitar que o neurónio atinja um estado desactivo devido ao Bias já baixo demais. Não
queremos que ele deixe de ficar activo, mas sim apenas que fique menos activo. Assim, a actualização do Bias nesta
condição, reduz-se a uma série de valores que tende para um estado mínimo de activação não-nulo. Trata-se, no fundo,
duma aproximação “por baixo dio limiar (traduzido pelo Bias), em que não se quer que este ultrapasse o valor de saída.
- Se o neurónio não conseguiu ficar activo, então significa que o limiar está demasiado baixo, pelo que se vai
adicionar uma quantidade ao Bias, aumentando a chance de ficar activo para a próxima vez. Aqui já não existe o
problema anterior, já que se trata duma aproximação “por cima” em que se deseja mesmo que esse limiar ultrapasse o
valor de activação interna (média pesada), possibilitando a activação de saída do neurónio ao fim de algum tempo. Só
não se deseja que este limiar ultrapasse a linha do zero, pois isso levaria a uma activação incondicional do neurónio.
Esta última sub-condição já fica incluída pelo requerimento de que o Bias fique sempre negativo (só incrementa o Bias
se este ainda for inferior a ∆).
Fig. 8-7 - Ilustração dos dois processos originados pela adaptação constante do valor do limiar (através do Bias). À direita deu-se o
fenómeno de “habituação por activação”, isto é, o neurónio daptou o limiar de forma a reduzir a sua frequência de impulsos. À esquerda deu-se
precisamente o contrário, na medida em que o neurónio adaptou esse limiar até que conseguiu responder. Não temos a certeza se este segundo
fenómeno é totalmente correcto biológicamente, mas resolve uma importante questão de adaptabilidade neuronal relacionada com o “recrutamento”
de neurónios4.
Este mecanismo (que tem duas partes inter-relacionadas) é suave (optámos por fazer ∆=0.05) e convergirá
provavelmente para valores médios estáveis, e resolveu dois problemas que surgiram durante os treinos efectuados
experimentalmente: havia neurónios que nunca ganhavam e ficavam sensíveis a mais do que um padrão; havia grupos de
4
No fundo, o problema centra-se no seguinte: mesmo se as ligações laterais não forem suficientes para “recrutar” neurónios para certas
funções cerebrais, tem de haver um mecanismo que permita que neurónios permanentemente desactivados se tornem cada vez mais susceptíveis de
tomar porte na actividade cerebral. Se assim não fosse, poderia eventualmente acontecer que aparecessem zonas neuronais permanentemente
desactivadas, por falta de estímulos duma certa forma (extrapolando para qualquer zona cerebral). A função vizinhança apenas tem funções
organizativas e de influência, mas não é capaz de “acordar” neurónios que nunca foram excitados correctamente ou que sempre estiveram longe dos
vencedores. Aquele mecanismo de adaptação do limiar capacita esses neurónios de também tomarem parte no complexo processo de sensibilização
do córtex para um conjunto de padrões.
8-7
Reconhecimento automático de caracteres
Córtex visual artificial
8-8
tamanho heterogéneo para cada padrão. Este mecanismo foi apenas implementado a certa altura das experiências. A
forma como este mecanismo vai tentar resolver estes problemas é o seguinte:
- Habituação por activação - esta parte vai evitar que hajam neurónios que ganhem simultânemente para mais do
que um padrão. Isto é conseguido pela suposição de que um neurónio vai ter uma sensibilidade máxima para apenas um
padrão, sendo esta mais fraca para os outros, pelo que a adaptação do limiar ao maior deles evita que os outros activem
o neurónio. Desta forma, evita-se o aparecimento de neurónios a fazerem uma espécie de “cruzamento de padrões,
pouco útil para a a função de discriminação pretendida. Esta parte já implementa, só por si, um mecanismo semelhante à
clássica consciência usada nas redes Kohonen, pelo que a vai substituir com sucesso verificado nos treinos posteriores.
- Activação por habituação - esta parte já vai resolver um problema algo mais subtil, e que consiste na divisão
heterogénea das sensibilidades pelos padrões. Há por vezes uma grande disparidade de tamanhos, em redes com mais de
9 planos e mais de 4 padrões diferentes. Aguns padrões tendem a ficar com uma porção maior que outros. Este problema
nem sempre ficou totalmente resolvido, pelo que a eficácia desta parte não pode ser afirmada com certeza. Na realidade,
este meio de “acordar neurónios não pressupõe o padrão apar o qual esses neurónios vão ser recrutados. O que
pensámos, foi a possibilidade de haver maior probabilidade dum grupo menor atrair neurónios adormecidos, do que
grupos maiores. Isso poderia ser verdade se esses neurónios já estivéssem perto desses grupos menores, para serem
imediatamente capturados pela vizinhança destes, logo que saiam do “sono”.
• Treino dos planos na camada e vizinhança
Quanto à função de vizinhança, continuámos a usá-la, visto esta ser absolutamente fundamental para que a uma
rede se possa organizar. Sem esta vizinhança, seria demasiado provável que a rede não aprenderia todos os padrões,
além de passar a ter uma distribuição aleatória das sensibilidades destes pelos neurónios. Como queremos que esta
camada aprenda de forma a ficar com uma distribuição suave de receptividades ao longo dos seus planos (colunas no
córtex visual), e que seja capaz de se adaptar plasticamente a qualquer conjunto de padrões que venha a ter de
discriminar, é indispensável usar a função vizinhança.
Está provado que há fortes interacções excitatórias laterais entre neurónios da mesma coluna cortical (plano do
NeuroCAD) e mais fracas entre colunas, ficando inibitórias entre colunas mais afastadas. Isto explica o facto de
neurónios da mesma coluna ficarem com o mesmo campo receptivo, e de haver uma transição suave da forma dessas
campos de coluna para coluna.
Fig. 8-8 - Ampliação duma coluna de neurónios simples que possuem
ligações laterais excitatórias entre si. Também há ligações laterais entre colunas, que
excitam colunas próximas e inibem colunas mais afastadas. Note-se que, apesar do
desenho mostrar apenas uma linha a ligar cada entidade, essas ligações laterais
parecem ser em forma de campo receptivo (centro excitatório e periferia inibitória =
ON-Centrum).
As ligações internas à coluna, vão ser automáticamente e realizadas pela partilha de pesos que garante que todos
os neurónios num plano do NeuroCAD (coluna real) possuem o mesmo campo receptivo, apenas deslocado no campo
visual. No que se refere às ligações laterais entre colunas, estas serão prontamente simuladas pela função vizinhança,
que será semelhante à da rede Kohonen. Esta função actuará como ligações laterais para os outros neurónios a afectar,
visto ir adicionar um termo ao cálculo da actividade de cada neurónio5. Esta adição serve para activar/desactivar
neurónios vizinhos de forma a que estes também aprendam/inibam com a regra de Hebb. Como se sabe, esta regra vai
multiplicar a entrada pela saída, pelo que esta última terá de estar activa para que se porcesse alguma aprendizagem.
Como é óbvio, além dessa saída, também temos de ter na entrada os valores desejados para a aprendizagem. Assim, o
NeuroCAD afecta os neurónios vizinhos através da função de vizinhança e também lhes fornece as entradas do neurónio
vencedor.
5
No NeuroCAD, esta função vizinhança fornece mais uma ligação unitária ligada à rotina de treino, e que terá uma entrada com magnitude
conforme com a distância ao plano do neurónio que foi o vencedor para um dado padrão.
8-8
Reconhecimento automático de caracteres
Córtex visual artificial
8-9
Se apenas nos preocupassemos em activar os vizinhos, provavelmente estes não aprenderiam nada parecido com
o padrão presente no campo receptivo do vencedor, pois aqueles estão num local diferente do campo visual de entrada.
Fig. 8-9 - Desenho esquemático que mostra a forma de interligação entre o
neurónio vencedor e os seus vizinhos. Existe um contorno que originou um vencedor.
Este vencedor vai aprender segundo a regra de Hebb, normalmente. Também envia as
suas entradas para os seus vizinhos, para que estes possam aprender pelo mesmo campo
receptivo de entrada onde realmente se encontra o contorno. Sem essa precaução, os
vizinhos não iriam aprender nada correctamente porque não existe o mesmo contorno
nos seus campos receptivos.
No NeuroCAD, sempre que vai treinar os neurónios todos a
partir dum vencedor, basta treinar um neurónio qualquer de cada
plano, pois dentro de cada plano os seus pesos serão sempre copiados
duns para os outros (pesos partilhados). Ao mesmo tempo, o
NeuroCAD fornece um valor de vizinhança que será adicionado ao valor de saída desses vizinhos, bem como uma
variável que dá acesso ao campo receptivo do neurónio vencedor. Aqueles vizinhos que serão levemente excitados pelo
vencedor (vizinhos próximos) aproximarão a sua sensibilidade à do vencedor, enquanto que aqueles que forem inibidos
(vizinhos distantes) não sofrerão qualquer alteração. Note-se, mais uma vez, que todo este processo de vizinhança
funciona apenas a nível de planos (entre colunas corticais). A vizinhança altamente excitatória interna às colunas, será
garantida pela partilha de pesos.
Fig. 8-10 - Esquema da camada de neurónios simples, segundo a estrutura adoptada pelo NeuroCAD.
Esta camada de exemplo é constituída por 4x4 planos, cada um com 5x3 neurónios simples com pesos
partilhados. Cada plsno está fictíciamente ligado a todos os seus vizinhos, através da função de vizinhança
(aqui apenas se mostra um conjunto dessas ligações. Após a determinação e aprendizagem dum plano
vencedor, todos os seus vizinhos são afectados duma forma mais leve ou até inibidos, conforme a sua distância
a ele. Esta vizinhança controlada origina uma distribuição suave de sensibilidades ao longo dos planos
(colunas corticais).
A função de vizinhança não pode ser igual à utilizada na rede do tipo Kohonen,
onde ela apenas assume valores positivos. Aí, essa função era utilizada de uma forma
multiplicativa com a constante de aprendizagem já existente, de forma a produzir uma
aprendizagem cada vez menor para a periferia. Aqui, nós queríamos implementar uma estrutura análoga à do córtex
visual real, tendo já implementado as ligações laterais de vizinhança e só faltando modificar a função de vizinhan,a de
forma a esta funcionar para esta caso. É que agora, esta função terá de assumir valores positivos e negativos, conforme a
distância. Isto porque queremos excitações e inibições adicionadas à saída do neurónio.
Fig. 8-11 - Chapéu mexicano modificado para funcionar como valor fornecido a uma ligação lateral.
Para ligações curtas (vizinhos próximos, esse valor será excitatório, enquanto que para ligações longas
(vizinhos afastados) esse valor será inibidor.
Esta curva para a função de vizinhança tornar-se-há mais estreita com o passar
do tempo de aprendizagem, para se conseguir simular as duas fases indispensáveis à organização homogénea da rede:
Assim, haverá uma constante de tempo de vizinhança que determinará a passagem suave e progressiva duma fase
à outra. Empíricamente, pode-se dizer que, quando os ciclos de treino igualam metade dessa constante, está-se numa
fase intermédia. Quando os ciclos de treino igualam essa constante, já não haverá alterações a nível de organização,
havendo apenas um apuramento dos valores dos pesos. Para caracterizar essas duas fases, há ainda duas constantes,
chamadas SIGMAi e SIGMAf que, como já foi estudado em experiências feitas em redes Kohonen, terão valores iguais a
metade do lado do quadrado da rede e uma ordem de grandeza abaixo, respectivamente. (Ex: rede com 4 de lado ⇒
SIGMAi=2 e SIGMAf=0.2).
8-9
Reconhecimento automático de caracteres
Córtex visual artificial
8-10
Como já foi estudado durante experiências realizadas com as redes do tipo Kohonen, a forma ideal da camada de
era uma forma semelhante à distribuição espacial dos padrões. Pensamos que aqui se vai dar a mesma coisa, apesar da
utilização da regra de Hebb que só vai ter em conta a parte estimulada dos padrões de entrada. Para evitar possíveis
discrepâncias, resolvemos usar sempre que possível camadas quadradas. É essa a razão duma camada com 3x3 planos
de neurónios simples.
Quanto à implementação práctica desta função vizinhança, há duas possibilidades:
- Acção sobre a aprendizagem, em que aquela função teria valores positivos desde 1.0 até 0.0, que multiplicavam
pela constante de aprendizagem, dando origem a uma espécie de “factor de atenuação” da própria aprendizagem a qual
diminuia com a distância ao vencedor. Este mecanismo foi o utilizado pelas redes do tipo Kohonen.
Epsilonef=Epsilon ⋅ Neighbourhood
Eq. 8-2
- Acção directa em forma de ligação lateral, em que a função de vizinhança já assume valores entre 1.0 e -1.0, de
forma a contribuir para a excitação ou inibição do neurónio, respectivamente. Este é o mecanismo biológicamente
observado no cérebro.
Y=(Y+Neighbourhood)/2
(factor 2 para manter a normalização da saída)
Eq. 8-3
Fig. 8-12 - Esquematização das ligações laterais que implementam a segunda versão da
função de vizinhança. Apenas se representaram algumas ligações, mas na realidade trata-se duma
rede densa em que cada neurónio liga a todos os outros. Conforme a distância, essas ligações
laterais possuem um peso mais ou menos positivo ou mais ou menos negativo: Ligações curtas são
fortemente excitatórias e ligações longas são inibitórias. Os valores desse pesos são descritos pelo
chapéu mexicano.
Até certo ponto das experiências posteriores, usámos a primeira implementação, mas depois passámos a usar a
segunda implementação para obtermos uma estrutura ainda mais próxima da estrutura que seria mais facilmente
realizável em hardware, além de ser a mais biológica. É que, para além de tentarmos encontrar boas soluções, também
estamos altamente interessados em conseguir implementar estruturas neuronais que sejam realizáveis por meio de
ligações em vez de estruturas auxiliares de treino.
8.3.1.1.3 Conjunto de treino
Já vimos que a primeira camada do córtex vai discriminar apenas segmentos de reta de diferentes orientações.
Assim, arranjámos um conjunto de treino constituído pelas 8 orientações-base. Outras orientações intermédias serão
detectadas por um ou dois planos de neurónios simples. Pensamos que 8 orientações treinadas serão suficientes para o
caso específico do reconhecimento de caracteres. Verificámos que orientações intermédias eram bem detectadas, e como
só nos interessa ter discriminações relativas (não é necessária precisão absoluta), utilizámos só este conjunto.
Fig. 8-13 - Conjunto de padrões de treino a utilizar para a aprendizagem da camada de
neurónios simples. Aqui estão presentes as rotações de 0º a 180º (exclusivé).
Usando um conjunto de treino assim específico para esta camada (tal como se fez no Neocognitron de
Fukushima), evita os problemas de sensibilização dos campos receptivos simples para outros contornos que não fossem
segmentos. Além disso, estes segmentos compridos também vão garantir que os campos receptivos fiquem com as suas
sensibilidades todas centradas, o que vai minimizar as distorções causadas por campos das extremidades.
Fig. 8-14 - Pode-se compreender perfeitamente que a sensibilidade a um dado segmento se vai
desenvolver no centro do campo receptivo simples. Isso é simplesmente porque é nessa posição que inicialmente
se consegue mais excitação (mais ligações excitadas), pelo que é aí que será a máxima probabilidade de vencer.
8-10
Reconhecimento automático de caracteres
Córtex visual artificial
8-11
Em treinos preliminares apenas se usará um conjunto restrito a 4 segmentos, apenas para verificar os
funcionamentos correctos dos algoritmos, e observar eventuais efeitos do aumento de padrões de treino para 8.
Note-se que se poderia pensar em treinar as camadas directamente com os padrões a reconhecer posteriormente.
Nós tentámos efectuar treinos com as saídas da retina, a partir dos dígitos, mas a rede teve grandes dificuldades em se
organizar, originando resultados finais inúteis e caóticos. Isto deve-se essencialmente ao facto de já ser necessário uma
grande carga de constrangimentos para esse caso onde a entrada apresenta mais do que simples segmentos de recta. Sem
qualquer constrangimento, os neurónios simples ficavam sensíveis a uma mistura de linhas demasiadamente caótica.
Aqueles constrangimentos para a camada de neurónios simples, resumem-se aos seguintes:
- O estímulo terá de ter a forma de segmento de recta.
- O estímulo tem de estar centrado.
Estes constrangimentos (inseridos na rotina que determina o neurónio vencedor) evitam que hajam vencedores
para estímulos indesejados para esta camada.
8.3.1.1.4 Dados do NeuroCAD
As dados a introduzir ao NeuroCAD, para se conseguir a estrutura desejada para esta rede, são os seguintes:
• Bias usage:
Used
• Input data type: Bitmap
• Learning rule:
Hebb
• Output data type:
Class
• Normalize weights:
Enabled
• Weights type:
48 bit / 6 byte
• Frozen state:
Not frozen
• Patterns order:
Sequential
• Plane update:
Shared
• Input function:
Weighted
• Receptive field size:
1x5x5
6
• Output function:
Linear
• Interfield offset:
1
• Layer size:
3x3 planes
• Starting neuron index: (0,0)7
• Plane size:
12x12 neurons
• Multi-plane fields:
Enabled
Deste arranjo resultaram os seguintes resultados numéricos da rede:
• Link count:
• Weights memory:
202 Kb8
• Weight count:
• Layer count:
2
9
• Forward possible links:
• Neuron count:
1296
• Forward connectivity:
32400 {Active:26244 Null:6156}
33696 {Active:27540 Null:6156}
18662410
14.06%11
Os pesos eram todos inicializados a 1.0 e automáticamente normalizados para 1/2512 pelo NeuroCAD, enquanto
que o peso de Bias era colocado a 0.0 nos treinos em que foi usado, para permitir que o neurónio adapte o seu valor a
partir duma influência Bias inicialmente nula.
8.3.1.1.5 Resultados experimentais
6
Note-se que, em conjunção com o efeito do peso Bias, é como se estivessemos a utilizar efectivamente uma função linear threshold, que só,
apresenta saída se esta for superior a um certo limiar.
7
Como o centro do campo receptivo de 3x3 vai ser colocado no neurónio (0,0) de cada plano, significa que para os campos periféricos vai
haver uma parte que ficará de fora (essas ligações serão consideradas NULL pelo NeuroCAD (é como se lá não estivessem).
8
Cada peso ocupa 6 byte em memória, pelo que termos (Nº de pesos) X 6 = 33696 x 6 = 202176 byte ≈ 202Kb.
9
(Tamanho plane) X (Nº planos) = 12x12x9 = 1296.
10
(Nº neurónios hiper-campo retiniano) X (Nº neurónios simples) = 144 x 1296 = 186624
11
(Nº ligações activas) / (Nº ligações possíveis) = 32400 / 186624 = 0.1406 = 14.06%
12
5x5=25 ligações (pesos).
8-11
Reconhecimento automático de caracteres
Córtex visual artificial
8-12
Aqui vamos apresentar alguns resultados importantes para a compreensão do comportamento desta primeira
camada da rede, sob condições de treino diferentes. Assim, fizemos várias experiências, mudando o conjunto de treino e
variando o tempo de treino, bem como outros parâmetros.
Antes de proceder à exposição de resultados finais definitivos a implementação desta primeira camada, vamos
apresentar antes um conjunto de experiências que serviram para verificar o funcionamentodos algoritmos, bem como
para decidir sobre várias grandezas a utilizar no futuro. Apenas no final é que a estrutura da rede será a definitiva. Os
treinos preliminares usaram redes com estruturas ligeiramente diferentes, com o propósito de observar e explicar certos
fenómenos.
Todos os treinos foram realizados com uma apresentação sequencial dos padrões. Um apresentação aleatória não
revelou qualquer melhoria, havendo mesmo situações de piorio do resultado final.
Quanto ao tempo de treino, este foi levado sempre um pouco para além da constante de de tempo de vizinhança,
para permitir uma convergência final bastante estável.
8.3.1.1.5.1.1 Treinos preliminares
Como já se disse, vamos treinar esta camada de neurónios simples com segmentos de recta com várias
orientações. Em cada treino, faremos apenas alguns breves comentários que adicionem algum conhecimento pertinente
para a compreensão do comportamento da rede.
Fig. 8-15 - Segmentos usados para treinar os exemplos seguintes.
Nestes primeiros treinos, utilizamos a implementação da função de vizinhança através da influência no factor de
aprendizagem. Em treinos mais posteriores utilizaremos a segunda implementação.
• Treino com epsilon=0.8; SIGMAi=2; SIGMAf=0.2; CTV=1013; 4 segmentos
Aqui ainda não tinhamos adicionado o peso de Bias, e usámos ainda a consciência que penaliza neurónios que
ganhem com mais frequência. Também ainda estávamos a testar configurações com campos receptivos simples de
apenas 3x3 pontos. O tamanho da camada era de 4x4.
Fig. 8-16 - Mapa de pesos obtido no NeuroCAD no final do treino (20 ciclos). O branco indica a
presença dum peso elevado, e o preto dum peso nulo ou muito reduzido. De facto, quando fomos verificar os seus
valores, os pesos a branco tinham a sua magnitude máxima (atendendo à normalização), enquanto que os
restantes eram todos inferiores a 0.0001. Como se pode ainda ver, cada padrão recebeu igual atenção (4 planos
adjacentes para cada um).
• Treino com epsilon=0.8; SIGMAi=2; SIGMAf=0.2; CTV=20; 4 segmentos
Aqui já experimentámos o Bias, e desligámos a consciência normal, pois esta revelou-se desatrosa aquando do
uso simultâneo com o Bias.
Fig. 8-17 - Mapa de pesos ao fim de 20 ciclos. A utilização do Bias não alterou a distribuição numérica
dos planos pelos padrões, relativamente ao caso anterior.
13
Constante de tempo de vizinhança
8-12
Reconhecimento automático de caracteres
Córtex visual artificial
8-13
Fig. 8-18 - A partir daqui, todos os treinos são efectuados com este conjunto de treino,
constituído por 8 segmentos.
• Treino com epsilon=0.8; SIGMAi=2; SIGMAf=0.2; CTV=15; 8 segmentos
Aqui também não usámos o Bias, mas usámos a consciência normal.
Fig. 8-19 - Organização algo caótica no final do treino. Observam-se
algumas misturas indesejáveis de sensibilidades a diferentes orientações. A
distribuição numérica dos planos também não ficou muito equitativa.
Idealmente, deveriam aparecer dois planos para cada orientação.
• Treino com epsilon=0.8; SIGMAi=2; SIGMAf=0.2; CTV=40; 8 segmentos; com Bias; vizinhança lateral
Foi exactamente neste ponto das experiências que resolvemos tentar implementar o mecanismo de autoadaptação do limiar de disparo (traduzido pelo Bias), de forma a tentar superar o problema das misturas de
sensibilidades, mas sem precindir dum valor reduzido da função de vizinhança para a fase final do treino. A partir daqui,
já não se utilizou o mecanismo clássico de consciência, pois este interferia de forma caótica em todo o processo de
treino. A partir deste treino também já utilizámos a segunda implementação da função de vizinhança. Mas antes de
introduzir o Bias, verificámos primeiro se esta mudança não iria afectar o processo de treino. De facto, não modificou,
tal como seria de esperar.
Fig. 8-20 - Dois exemplos de treino efectuados. Finalmente conseguiuse o que se queria: treinar a rede de forma a atingir um resultado final livre de
misturas. Também se conseguiu manter uma distribuição relativamente boa, em
que apenas duas orientações ficaram desfavorecidas (enquanto que outras duas
ficaram favorecidas).
A preocupação essencial que tivémos em todos estes
treinos e em treinos posteriores, foi a de garantir que haja pelo
menos um plano dedicado a cada orientação. Seria altamente indesejado se alguma orientação ficasse completamente de
fora. Mas essa preocupação nunca chegou a fazer-se sentir de forma práctica, pois em todos os treinos a rede conseguia
ficar sensível a todas as orientações. E agora que finalmente resolvemos o problema das misturas indesejáveis (que
retiravam a capacidade dos planos afectados conseguirem discriminar uma só orientação), já podemos passar a uma
implementação final desta primeira parte.
8.3.1.1.5.2 Treino definitivo desta primeira camada
Finalmente chegámos a resultados que nos satisfizeram, para podermos efectuar um último treino definitivo para
esta primeira camada de neurónios simples. Agora que já resolvemos os problemas e temos a certeza de ter encontrado
condições de treino boas para conseguir os nossos objectivos, vamos proceder ao treino duma camada de tamanho
mínimo. Por este tamanho mínimo, entenda-se o número mínimo de planos que ainda permite a dedicação de pelo
menos um plano a cada orientação.
O tamanho mínimo desta camada, atendendo a que queremos discriminar 8 orientações diferentes e que
queremos uma camada quadrada14, será de 3x3. As condições de treino foram as seguintes:
14
Para não favorecermos alguns padrões em detrimento de outros na distribuição espacial destes, tal como já foi explicado anteriormente e
durante as experiências com redes do tipo Kohonen.
8-13
Reconhecimento automático de caracteres
• Epsilon=0.8
• SIGMAi=2.0
• SIGMAf=0.2
Córtex visual artificial
8-14
• CTV=40
• com peso Bias (threshold adaptável)
• vizinhança lateral (segunda implementação)
Fig. 8-21 - Como se pode ver, conseguimos este resultado excelente (logo na primeira
tentativa) em que há pelo menos um plano especializado em cada orientação (mas em zonas
diferentes do hiper-campo receptivo, como é óbvio). Note-se que aqui já se utilizaram campos
receptivos simples dos 5x5 anunciados anteriormente. Até aqui (exceptuando este último), apenas
fizémos os treinos com campos de 3x3 para obter resultados mais rapidamente. Esta mudança não
tem qualquer consequência em termos de resultados. Apenas temos um mapa de pesos maior.
Fig. 8-22 - Mapas de actividades dos neurónios dos diversos planos, para as várias orientações de treino. Pode-se ver perfeitamente que cada
plano (à excepção dum duplicado) é mais sensível à sua orientação respectiva (actividade mais escura de todas). Cada plano é um dos 9
agrupamentos de neurónios dentro de cada mapa de actividade. Em cada mapa mostra-se também a orientação do segmento que lhe corresponde à
actividade originada. Note-se que, apesar daqui não se perceber bem a diferença de actividade, podemos certificar que havia uma grande diferença
entre a actividade máxima e a imediatamente seguinte (em cor), pelo que a selectividade é bastante acentuada.
Também verificámos que esta rede consegue discriminar orientações intermédias destas treinadas, já que aqueles
eram sempre muito parecidas com as treinadas. Portanto, esta rede serve perfeitamente para desempenhar a primeira
função de discriminação do córtex visual, e que é a discriminação de segmentos de recta15 orientados.
O interessante destes treinos todos é, como já se disse anteriormente, a plasticidade que esta rede possui para se
adaptar às características do mundo exterior, duma forma automática. Esta rede ficou sensível exactamente ao tipo de
15
No mundo exterior, estes segmentos correspondem a fronteiras entre claro e escuro. A retina é que as transforma em segmentos.
8-14
Reconhecimento automático de caracteres
Córtex visual artificial
8-15
contornos apresentados pelo mundo exterior. Se passássemos a apresentar contornos diferentes, a rede voltaria a
adaptar-se segundo eles. Mas para isso funcionar correctamente e a rede se conseguir organizar outras vez tão bem, seria
necessário expandir novamente a função de vizinhança no início. De facto, a única coisa que torna esta rede algo
estática para novos padrões, é a função vizinhança que ficou estreita. Para tornar esta rede totalmente dinâmica (viva) e
para lhe conferir capacidades de adaptação contínuas, seria necessário adicionar um mecanismo inteligente de autoadaptação das ligações laterais. Ou seja, as prórpias ligações laterais é que tinham de ser capazes de se modificar
conforme o estado de organização e actividade da rede, implementando uma espécie de auto-vizinhança.
8.3.1.1.6 Selectividade simples
Como se viu, dimensionámos os campos receptivos simples para um tamanho de 5x5 pixels, sendo a intenção
destes ficarem sensíveis a segmentos orientados com uma espessura de apenas 1 pixel. Isto tem a limitação da separação
das orientações não ficar bem definida. Orientações próximas são confundidas como sendo uma só, não havendo sequer
uma transição suave das actividades dos neurónios simples correspondentes a essas transições de orientação.
Fig. 8-23 - Em cima e à esquerda
está representada a correspondência padrão
(ao qual um dado neurónio simples é
sensível) - ligações (padrão de ligações
desse mesmo neurónio) - pesos (pesos
arredondados
dessas
ligações),
que
é
originada através do treino. Neste caso,
como o neurónio vai ficar com 5 ligações
activas e as restantes muito atenuadas, e
pela utilização da regra de Hebb com
normalização, significa que cada ligação vai
ficar com muito aproximadamente 1/5 (um
quinto) de peso enquanto que as restantes
ficam quase nulas. Isto origina uma curva de selectividade à orientação como a que está à direita em cima. Para a orientação vertical (zero graus de
rotação da máxima sensibilidade), o neurónio dispara com o máximo valor de 1.0. Para desvios cada vez maiores, o neurónios dispara cada vez
menos, em termos de degraus discretos. A obtenção dos valores desses disparos é ilustrada em baixo, onde cada orientação activa 5, 4 ou apenas uma
ligação existente de peso 1/5. A actividade do neurónio será a soma dessas activações. Como se pode ver pela curva de selectividade dum neurónio
sensível à orientação vertical, esta apresenta um andamento pouco apropriado para um filtro de orientações: a banda de paragem não atenua o
suficiente para orientações afastadas da central, além de haver um salto inicial muito grande da banda de passagem para a de paragem.
Fig. 8-24 - Ao contrário do que
pensávamos, um campo receptivo mais
fino
não
problema.
vai
resolver
A
forma
totalmente
da
curva
o
de
selectividade continua muito bicuda e a
banda de paragem atenua o mesmo. No
entanto,
houve
espalhamento
da
alguma
curva:
melhoria
no
a
só
curva
estaciona nos 0.2 aos 45º de desvio,
enquanto que no exemplo anterior isso já
acontecia aos 30º.
Mesmo
aumentando
a
resolução do campo receptivo, é
8-15
Reconhecimento automático de caracteres
Córtex visual artificial
8-16
fácil compreender que a resposta mínima será sempre 0.2 para o caso de segmentos com espessura igual à do centro
estimulante do campo receptivo. Sómente para segmentos mais finos é que esta resposta baixaria ainda mais. Para o
caso anterior, esse valor mínimo, para segmentos de espessura de 1 pixel, esse valor atingeria 0.1. Com resoluções cada
vez maiores do campo receptivo, a curva de selectividade ir-se-ia tornando cada vez mais suave, podendo atingir
respostas mínimas também cada vez menores. O problema mais ou menos subtil que surge com estes campos cada vez
mais finos, é que segmentos finos poderão não conseguir excitar suficientemente os neurónios respectivos. Isto está
directamente relacionado com a acuidade visual do sistema global. Assim, para evitar este tipo de problema nesta fase
inicial da implementação, decidimos avançar com os campos receptivos de 5x5, possuindo um centro activo com
espessura de apenas 1 pixel.
Esta questão da resolução e espessura dos campos receptivos, poderá eventualmente ser retomada em trabalho
futuro, já que é um problema real que afecta a performance deste córtex visual artificial.
Estas curvas podem ser comparadas com as obtidas experimentalmente [Schiller et al, 1976; Knudsen, 1987] e
com as curvas obtidas em estudos teóricos [Bienenstock, 1982].
8.3.1.2 Camada de neurónios complexos
Vamos agora implementar a segunda camada de neurónios, que é camada dos neurónios complexos. Esta camada
tem como função principal, a de conferir alguma invariância de translação.
8.3.1.2.1 Parâmetros arquitecturais
Para que esta camada consiga conferir alguma invariância de translação ao sistema de discriminação (hipercoluna), esta terá de ter campos receptivos especiais, bem como uma ordenação especial dos neurónios. No fundo, o que
cada neurónio tem de fazer, é receber várias saídas de neurónios simples adjacentes, para que fique activo logo que
apareça pelo menos uma actividade. Por outras palavras, vamos implementar OR’s neuronais.
• Dimensão da camada
Dependendo do grau de invariância desejado, devemos juntar mais ou menos saídas de neurónios simples em
cada neurónio complexo. Como o hiper-campo receptivo vai ter dimensão 12x12, o que já é relativamente pequeno, não
podemos exigir um elevado grau de invariância senão ficaremos com pouca resolução espacial dos contornos.
Assim, vamos optar por uma invariância de 4x4, ou seja, uma invariância de 4 pontos na horizontal e 4 pontos na
vertical. Isso significa que vamos agrupar as saídas dos neurónios simples da camada anterior, em campos de 4x4 saídas.
Se a cada neurónio complexo vão corresponder 4x4=16 neurónios simples, sem qualquer sobre posição destes campos,
isso resulta num factor de redução de 1616 para esta segunda camada. Então vamos ficar apenas com:
Nº neurónios complexos = Nº neurónios simples / Factor de redução = (12x12x3x3)/(4x4) = 81.
O número de planos mantém-se óbviamente o mesmo, já que vai haver uma correspondência plano-a-plano em
termos de sensibilidade à orientação. Assim, esta camada também vai ter 3x3 planos, o que dá 9 neurónios complexos
para cada um. Podia-se ter logo calculado esse último número também logo a partir do factor de redução, agora para
apenas o número de neurónios presentes numa camada: (12x12)/(4x4)=9 neurónios complexos por plano complexo.
• Tipo de ligação
16
Pode-se falar de dois tipos de factor de redução: factor de redução dimensional (igual a 4 para a altura e largura) e o fector de redução
numérico que corresponde à relação directa entre quantidades de neurónios (igual a 16). Como é óbvio, este último pode-se obter pela multiplicação
dos dois anteriores (altura e largura).
8-16
Reconhecimento automático de caracteres
Córtex visual artificial
8-17
Como já vimos, optando por uma invariância de 4x4, têm de se usar campos receptivos de 4x4. Estes campos
virão de neurónios simples adjacentes, e não serão sobrepostos. Também não vão sair para fora dos planos simples,
como acontecia na retina e nos neurónios simples. Estes campos estarão completamente inseridos dentro do plano
simples respectivo.
Fig. 8-25 - Estrutura esquemática das
primeiras
duas
camadas
adjacentes
(simples
e
complexa). Apenas se mostram alguns campos
receptivos
e
alguns
neurónios.
Cada
neurónio
complexo tem um campo receptivo de 4x4 neurónios
simples adjacentes. Estes campos receptivos não são
sobrepostos nem ficam com zonas de fora, e são
adjacentes uns aos outros. Obtém-se assim um factor
de redução de 4x4.
Esta estrutura implica que o mesmo
neurónio complexo responda para um
segmento mesmo que este mude de posição
dentro duma gama de 4x4 pontos. Isto
significa lógicamente que o campo
receptivo retiniano equivalente para cada
neurónio complexo, passa de 5x5 de cada simples, para (5+(4-1))x(5+(4-1))=8x8. Desde que o segmento orientado
esteja dentro daquele campo retiniano, o mesmo neurónio complexo responderá (naturalmente que responderão
diferentes neurónios simples dos 16 totais, que por sua vez excitarão aquele mesmo neurónio complexo).
Fig. 8-26 - Obtenção do campo receptivo complexo equivalente na
saída da retina. Cada neurónio simples possui um campo receptivo nessa saída,
de 5x5 deslocado de um ponto entre neurónios simples adjacentes, o que resulta
num campo complexo equivalente na retina de 8x8. À esquerda mostra-se a
dimensão e posições sucessivas doas campos receptivos simples na saída da
retina.
Os campos complexos sobre a camada de neurónios
simples não terá sobreposição, mas os campos receptivos
complexos equivalentes na saída da retina já estarão algo
sobrepostos. Como cada neurónio complexo recebe 4 neurónios
simples de cada dimensão (altura e largura da rede), os campos receptivos complexos equivalentes estarão espaçados de
4 pontos entre si, o que significa que estes estarão também sobrepostos nos restantes 8-4=4 pontos. Ou seja, a
sobreposição será de metade. Isto poderá ser o que realmente acontece no cérebro, se extrapolarmos o facto de que os
hiper-campos receptivos no córtex visual dos mamíferos também se sobrepôe em metade aos outros adjacentes. Trata-se
apenas duma coincidência. Estas ligações terão um peso pré-estabelecido e fixo. O seu valor será de 1/16 para manter a
normalização. No cérebro pode-se pensar numa tendência genética para esta configuração de ligações.
• Tipo de neurónio
Estes neurónios complexos não terão qualquer capacidade de aprendizagem e serão congelados. Tal como nos
simples, também farão uma média pesada das entradas, mas desta vez terão uma função de saída em degrau. Através de
uma experiência rápida, verificámos que estes neurónios só deviam responder com um 1.0 à saída, se dois ou mais
8-17
Reconhecimento automático de caracteres
Córtex visual artificial
8-18
neurónios simples estivéssem activos a 1.017. Isso resulta num limiar que terá de ser imediatamente inferior a
2x1/16=1/8=0.125 para o degrau dos neurónios complexos. Utilizámos o valor de 0.12 para esse limiar.
Estes neurónios não vão usar o peso de Bias, a menos que se quisesse realizar o limiar de saída através dum Bias
negativo. Nós optámos por um limiar fixo na própria função.
• Modificações na camada simples
Estes neurónios terão uma função de saída em degrau, com um limiar de 0.7. Isto é para garantir que esta camada
recebe entradas lógicas (presença ou não de determinadas orientações). Se assim não fosse, heveriam problemas sérios
de convergência correcta durante os treinos efectuados na camada posterior de neurónios hiper-complexos. Além disso,
esta camada terá de ser congelada para evitar que treinos de camadas a montante alterem os pesos desta.
8.3.1.2.2 Dados do NeuroCAD
Como esta camada vai estar ligada a montante da camada simples, os padrões de entrada serão outra vez
apresentados na entrada da primeira camada. Estes padrões vão apenas servir para verificar o funcionamento correcto
desta camada complexa. Os dados a introduzir ao NeuroCAD, para a estrutura desta rede, são os seguintes:
• Modificações à camada simples
• Output function:
Step (threshold=0.7)
• Frozen state:
Frozen
• Parâmetros da camada complexa
•
•
•
•
•
•
•
•
Input data type: Bitmap
Output data type:
Weights type:
Input function:
Output function:
Layer size:
Plane size:
Bias usage:
Class
48 bit / 6 byte
Weighted
Step (threshold=0.12)
3x3 planes
3x3 neurons
Not used
•
•
•
•
•
•
•
Learning rule:
Normalize weights:
Frozen state:
Receptive field size:
Interfield offset:
Starting neuron index:
Multi-plane fields:
None
Enabled
Frozen
1x4x4
4
(1,1)18
Enabled
Deste arranjo resultaram os seguintes resultados numéricos para esta camada complexa:
• Link count:
1296 {Active:1296 Null:0}
• Weights memory:
7.5 Kb
• Weight count:
1296 {Active:1296 Null:0}
• Layer count:
3
• Forward possible links: 10497619
• Neuron count:
81
• Forward connectivity: 1.235%20
Os pesos eram todos inicializados a 1.0 e normalizados para 1/1621.
17
Verificou-se que não se conseguia treinar os a camada hiper-complexa com as saídas inicialmente lineares dos neurónios complexos, pelo
que estes últimos passaram a possuir uma saída em degrau. Esta modificação implica que também os neurónios simples passassem a possuir uma
saída em degrau, para haver uma distinção entre actividade e não-actividade destes. Sem essa medida extra, os neurónios complexos poderiam ficar
activos quando havia bastantes neurónios simples pouco activos, mas suficientes para somarem um valor elevado que activasse o neurónio complexo.
O limiar para os neurónios simples foi fixado a 0.8.
18
Índice do neurónio que vai ocupar o centro do campo receptivo. Como este campo de 4x4 não tem uma posição central definível, o
NeuroCAD coloca esse centro no ponto de índice (1,1). Isso garante que nenhuma ligação ficará de fora.
19
(Nº neurónios simples) X (Nº neurónios complexos) = 1296 x 81 =104976.
20
(Nº ligações activas) / (Nº ligações possíveis) = 1296 / 104976 = 0.01235 = 1.235%.
21
4x4=16 ligações (pesos).
8-18
Reconhecimento automático de caracteres
Córtex visual artificial
8-19
8.3.1.2.3 Resultados experimentais
Vamos aqui apenas apresentar alguns mapas de actividades que mostram a actividade de cada plano para cada
orientação dos segmentos de entrada.
Fig. 8-27 - Actividades da camada de neurónios simples, para
cada orientação de entrada. Como se pode ver a partir destes mapas, as
actividades só surgem nos planos sensíveis a cada orientação. Note-se que
há dois planos sensíveis à última orientação, pelo que ambos esses planos
aparecem activos aquando da apresentação dessa orientação. Note-se
também que a 6ª orientação provoca uma actividade residual num plano
adjacente. Aqui verifica-se bem o nível de organização que esta rede
realizou, ao colocar orientações adjacentes em planos adjacentes também
(o que nem sempre acontece, devido a problemas relacionados com o
tamanho dos campos receptivos (já discutido anteriormente). Finalmente,
veja-se que estes mapas de actividade já são os resultantes da aplicação das funções de saída em degrau, nos neurónios simples. Agora temos
actividades do tipo ON / OFF.
Fig. 8-28 - Mapas de actividade da camada complexa, para as diversas
orientações apresentadas na entrada da camada simples. Veja-se como houve uma
redução dum factor de 4 no tamanho de cada plano (os quadradinhos que
representam a zona de actividade unitária, ficaram 4 vezes maiores).
Pelo facto de termos estabelecido condições (pesos + limiar)
de forma a originar o disparo dos neurónios complexos apenas para
mais de uma entrada simples, e o limiar dos próprios neurónios
simples, faz com que apenas os complexos com campo reeptivo
retiniano equivalente situado a meio do segmento, disparem. Se esse campo estiver nas extremidades do segmento, os
neurónios simples não estarão acima do limiar, pelo que não transmitem actividade ao(s) complexo(s)
correspondente(s). Isto poderá constituir um grave problema, no caso dos segmentos dos padrões a reconhecer não
terem comprimento suficiente. É aqui que entra a imperativa necessidade de posteriormente de tentar implementar
camadas de normalização/contrast enhacement22 de actividades saídas de neurónios lineares.
Por enquanto, vamos treinar a camada seguinte dos hiper-complexos, com estes resultados. Mais tarde, se este
problema se apresentar demasiadamente degradante na performance do classificador, então procederemos a uma
possível implementação daquelas camadas STM especiais. No entanto, estamos a esquecer que as ligações laterais de
vizinhança, existem sempre. Nós é que as desactivamos nesta fase de chamada da rede (recall). Estas ligações laterais
podem ser um processo alternativo e biológicamente plausível, para conseguirmos obter os tais efeitos desejados de
normalização/contrast enhacement. É óbvio que daremos preferência a esta última solução, já que utiliza as
infraestruturas existentes, sem ser necessário adicionar outras, e porque elimina a artificialidade da desactivação das
ligações laterais aquando dos chamamentos da rede. Por enquanto, vamos deixar esta artificialidade das ligações laterais
desactivadas para chamamento, pois a solução biológicamente plausível exige um chamamento iterativo com
22
Estas camadas especiais, denominadas por STM-Short Term Memory, nos estudos efectuados aos mecanismos biológicos de visão, serão
posteriormente referenciadas. O que elas realizam, é uma amplificação das maiores actividades e uma atenuação das menores actividade, de uma
forma selectiva e adaptativa, proporcionando uma saída normalizada em actividade e ao mesmo tempo altamente contrastada. Isto é conseguido
através de mecanismos de realimentação com auto-campos receptivos do tipo ON-centrum.
8-19
Reconhecimento automático de caracteres
Córtex visual artificial
8-20
realimentação através de campos receptivos na própria camada. Esse estudo e trabalho será deixado para uma fase
bastante posterior.
As saídas obtidas nesta fase, pela camada complexa, serão agora as entradas para treinar a camada dos neurónios
hiper-complexos.
8-20
Reconhecimento automático de caracteres
Córtex visual artificial
8-20
8.4.1.3 Camada de neurónios hiper-complexos
Esta última camada do córtex visual vai conter os neurónios hiper-complexos, discriminadores de contornos en
forma de ângulos. São as saídas destes neurónios que vão servir de informação de classificação para órgãos a montante.
8.4.1.3.1 Parâmetros arquitecturais
Vamos aqui apresentar os diversos parâmetros que esta camada deve ter, para conseguir desempenhar
correctamente a sua função:
• Dimensão da camada
Como esta camada vai ter campos receptivos deslocados de uma unidade para a camada complexa, tal como
acontecia com os campos receptivos simples para a retina, iríamos ter tantos neurónios hiper-complexos como temos
complexos. Isso daria planos com 3x3 neurónios hiper-complexos cada um. Por uma razão que se prende com uma
distribuição homogénea dessas campos receptivos, vamos usar planos hiper-complexos com 4x4 neurónios cada (a
justificação virá aquando da explicação do tipo de ligações).
Quanto ao número de planos, terá de ser cuidadosamente estudado, para que não fique de fora nenhum ângulo
possível de ser formado pelas orientações discriminadas pela camada simples. Se assim não fosse, esteríamos
claramente a desperdição poder de discriminação proveniente daquela camada. No entanto, se isso obrigasse a um
número de planos pouco práctico, teríamos de deixar alguns ângulos de fora. Contudo, isso não foi necessário. Assim,
este número será igual ao número de combinações possíveis para pares de orientações. Como temos 8 orientações
diferentes, termos C82 = 28 ângulos também diferentes.
Fig. Error! No text of specified style
in document.-1 - Conjunto dos 28 ângulos
possíveis, formados pelas orientações treinadas
na camada simples. Cada linha consiste em
todas as rotações possíveis de cada ângulo. O
valor de cada linha representa a abertura desses
ângulos rodados, enquanto que os valores das
colunas representam o grau de rotações
sucessivas
até
se
chegar
ao
ponto
imediatamente antes do de partida (0º = 180º).
Mais uma vez, é óbvio que bastam rotações de
0º a 180º (exclusivé) para cobrir todo o leque
de orientações possíveis para cada ângulo (tal como na camada simples).
• Tipo de ligações
As ligações desta camada à camada dos neurónios complexos, serão também em forma de campo receptivo. As
dimensões desses campos será de 9x2x2. Esta novidade do 9x consiste em fazer o campo receptivo hiper-complexo a
partir de vários campos de 2x2, um em cada plano complexo. É que, como agora queremos que estes neurónios hipercomplexos fiquem sensíveis a ângulos, temos de lhes fornecer as saídas de vários planos complexos sensíveis a
orientações diferentes. Para isso, bastavam dois planos para cada neurónio hiper-complexo, o que lhe fixava o tipo de
ângulo ao qual ficaria sensível duma forma artificial e forçada. Por isso, decidimos fazer algo semelhante ao que
fizemos na camada simples, em que se deu total liberdade de escolha de sensibilidades: ligámos cada neurónio hipercomplexo a todos os planos complexos, através de campos parciais de 2x2. Isso resulta num número total de ligações
por cada neurónio hiper-complexo de 9x2x2 = 36.
8-20
Reconhecimento automático de caracteres
Córtex visual artificial
8-21
Fig. Error! No text of specified style in document.-2 Esquema simplificado das ligações entre a camada hiper-complexa e
a camada complexa. Apenas se mostram algumas ligações para o
caso do neurónio sombreado, mas os campos estão todos desenhados
(excepto os dois “seguinte” e “periférico”). Como se vê, cada
neurónio hiper-complexo vai ter um campo receptivos constituído
por 9 campos (2x2) posicionados na mesma posição mas em planos
complexos diferentes, o que resulta num tamanho final de 9x2x2.
Desenhou-se um dos campos periféricos, para mostrar a sua zona que
ficará de fora (ligações nulas). Para que isto acontecça de todos os
lados dum plano, e assim manter uma distribuição homogénea de
ligações nulas, é necessário ter-se 4x4 neurónios hiper-complexos.
Também se mostra um dos campos seguintes, sobreposto ao anterior.
O tamanho 2x2 de cada campo espaçados
unitáriamente, implica um tamanho de 4x4 para cada plano hiper-complexo. Isso é para que aqueles campos fiquem
igualmente distribuídos por cada plano complexo. Se usassemos apenas 3x3 neurónios hiper-complexos, haveria um
campo periférico com uma parte de fora, e outro totalmente dentro do plano complexo.
Fig. Error! No text of specified style in document.-3 - (A)- Caso em que, usando só planos
de 3x3 neurónios há assimetria na peroferia. (B)- Caso em que se usam 4x4 neurónios, o que garante
a simetria na periferia. Apenas se mostra este efeito na periferia horizontal, mas o mesmo acontece na
vertical. Os traços representam a extensão de cada campo.
Em vez de campos parciais de 2x2, podíamos ter ligado apenas uma
ligação a cada plano complexo (campos de 1x1). Essa última hipótese teria limitado o espalhamento máximo que um
ângulo poderia ter para ainda ser detectado.
Fig. Error! No text of specified style in document.-4 - Com um campo receptivo
hiper-complexo equivalente na retina, do tamanho do campo complexo também equivalente
(caso em que cada neurónio hiper-complexo recebe apenas um neurónio complexo de cada
plano complexo. A e B), apenas se conseguem detectar ângulos que estejam bem definidos
dentro daquele campo. Ou seja, ângulos cujos segmentos estejam dentro do mesmo campo
hiper-complexo equivalente na retina. Isso é o que acontece em A. Mas em B, já não há
possibilidade de detecção do ângulo, só porque o seu espalhamento é grande demais, ou
seja, os segmentos que o definem estão demasiadamente fora do campo equivalente na
retina. Neste caso, os neurónios simples não ficaram suficientemente afectados de forma a
ultrapassar o seu limiar de disparo, pelo que as camadas seguintes não recebem informação
suficiente (ou até mesmo nenhuma) para a detecção. Seria então necessário um campo
receptivo hiper-complexo equivalente ne retina maior, como em C.
É possível que, através de funcionamentos que preservem as ligações laterais activas mesmo durante o
chamamento da rede (recall), este problema possa ser mais elegantemente resolvido. De qualquer forma, é imperativo
que se aumente o campo receptivo hiper-complexo equivalente na retina, para que tenha a hipótese de detectar ângulos
realmente mais espalhados e arredondados1. Mais tarde poder-se-á pensar em resolver este problema ccom estruturas
que possuam hiper-campos receptivos de diferentes tamanhos.
1
No cérebro, isto é implementado de forma ligeriamente diferente: existe um conjunto de hiper-campos receptivos , uns mais pequenos e
juntos, e outros outros maiores e mais dispersos (tem a ver com o factor de amplificação, nos estudos anteriormente efectuados sobre os mecanismos
da visão). Assim, hiper-campos mais pequenos apenas são capazes de detectar ângulos pequenos, enquanto que os hiper-campos maiores já são
capazes de detectar ângulos mais espalhados. Como nós apenas estamos a implementar uma estrutura homogénea (como uma fóvea), estamos
8-21
Reconhecimento automático de caracteres
Córtex visual artificial
8-22
Esta escolha dum campo maior, reside portanto na capacitação destes neurónios hiper-complexos poderem
detectar ângulos cujos segmentos não estejam bem definidos apenas num único campo receptivo complexo retiniano
equivalente. Assim, o que estamos a fazer é aumentar o campo receptivo hiper-complexo equivalente na retina, para
possibilitar a detecção destes ângulos mais arredondados ou espalhados. Essa ampliação é calculada de forma
semelhante à obtida para os campos equivalentes dos neurónios complexos: como já vimos que os campos complexos
equivalentes na retina estão espaçados de 4 pontos, se juntarmos dois desses campos em ambas as dimensões (juntámos
dois neurónios complexos em ambas as dimensões) ficamos então com um campo equivalente de:
(largura campo complexo + deslocamento) X (altura campo complexo + deslocamento) = (8+4)x(8+4) = (12x12).
Fig. Error! No text of specified style in document.-5
- Desenho esquemático da obtenção do campo receptivo hipercomplexo equivalente na retina. Cada neurónio hiper-complexo
liga a 2x2 neurónios complexos, que por sua vez vão ligar a
4x8x8 neurónios simples. Obtém-se assim um campo
equivalente de 12x12 saídas retinianas.
Pode parecer que apenas um neurónio
consiga discriminar ângulos, já que o campo
receptivo equivalente na retina já ocpua todo o
hiper-campo (campo receptivo da hiper-coluna).
Isso não é assim, porque cada neurónio só detecta
um ângulo se este estiver mais ou menos entrado
naquele campo equivalente. Neurónios hipercomplexos sucessivos, detectarão ângulos em
posições também sucessivas no hiper-campo receptivo de toda a coluna. Portanto, não se perde informação posicional,
que é o que interessa preservar. Com esta estrutura, apenas estamos a dar a possibilidade dos neurónios detectarem um
ângulo em determinada posição, mas com arredondamentos e espalhamentos diferentes.
Fig. Error! No text of specified style in document.-6 - Ilustração da capacidade de detectar ângulos
diferentemente “afiados”, no mesmo campo receptivo hiper-complexo equivalente na retina. O ângulo I é
perfeitamente detectado, enquanto que o ângulo II ainda poderá ser detecado desde que as suas partes segmentares
que caem dentro do campo ainda cheguem para excitar os neurónios respectivos.
Note-se que apenas consideramos ângulos formados por pares de orientações. Não nos
interessa que a camada fique sensível a mais dum ângulo simultâneamente, misturando mais do que duas orientações.
Para que isso seja garantido durante o treino, temos de apresentar padrões que reflictam esse mesmo constrangimento.
Se quisessemos treinar esta camada a partir de padrões do mundo real, teríamos de fixar os seguintes
constrangimentos, tal como se faria num treino semelhante da camada simples:
- o estímulo tem de estar centrado.
- cada neurónio hiper-complexo só pode ficar sensível a duas orientações simultâneas, através da actualização
dum número apropriado dos seus pesos.
• Tipo de neurónios
Estes neurónios também terão a regra de Hebb para a sua aprendizagem. Da mesma forma que os neurónios
simples, usarão peso de Bias para adaptar dinâmicamente o seu limiar de disparo.
naturalmente limitados nessa aspecto. Estruturas heterogéneas eliminariam a necessidade de se aumentar o campo hiper-complexo equivalente. Isto
tudo significa que cada hiper.coluna terá um grau de acuidade visual diferente, cconforme o seu tamanho: coluna grande implica baixa acuidade o
vice-versa, mas cada uma tem também objetivos diferentes como se viu aqui.
8-22
Reconhecimento automático de caracteres
Córtex visual artificial
8-23
A aprendizagem de ângulos por parte destes neurónios, processar-se-á através da sensibilização das ligações que
provêm dos respectivos planos sensíveis às orientações desses ângulos. Assim, cada neurónio hiper-complexo ficará
apenas com dois conjuntos de ligações activas (cada conjunto corresponde a um plano complexo).
8.4.1.3.2 Parâmetros de treino
Os parâmetros de treino serão semelhantes aos utilizados para treinar a camada simples. Isto será assim, tanto no
que respeita a acções internas ao neurónio, como para as influências entre planos. As constantes SIGMA serão
óbviamente diferentes, pois o tamanho da camada é diferente. De resto, é tudo igual.
8.4.1.3.3 Conjunto de treino
Já vimos que os neurónios hiper-complexos desta camada vão ter a função de discriminar ângulos. Estes ângulos
serão formados a partir de qualquer par de orientações às quais a camada de entrada é sensível. Como também já vimos,
isso resulta num total de 28 ângulos diferentes (em abertura e rotação).
Fig. Error! No text of specified style in document.-7 - Conjunto de treino de 28 ângulos
(cruzamentos), para a aprendizagem da camada hiper-complexa. Aqui estão presentes todos os ângulos
possíveis de serem formados a partir das orientações para as quais a camada simples é sensível.
Mais uma vez, estamos a utilizar padrões que não impliquem o uso de
mecanismos de constrangimento na rotina de treino. Desta forma, os neurónios
hiper-complexos ficam treinados da maneira desejada, isto é, ficam sensíveis a
ângulos únicos sem misturas.
Não teria sentido treinar ângulos que não fossem formados por orientações
para as quais a camada simples não tinha sido treinada. Isso seria estar a introduzir mais um factor de distorção na
diuscriminação final, já que a camada simples já introduz uma espécie de quantização das orientações possíveis no
mundo exterior.
Note-se que estes ângulos de treino são constituídos por segmentos a cruzarem-se, em vez de ângulos simples do
género de: < > ∠ 〈, etc. A utilização de ângulos cruzados para o treino desta camada, tem a vantagem de ser de natureza
simétrica, não favorecendo aprendizagens que originem sensibilidades à orientação da abertura dos ângulos. Como no
cérebro cada neurónio hiper-complexo é sensível a quaisquer ângulos formados a partir de duas orientações, garantimos
assim esse facto biológico. De facto, não teria muito sentido que um neurónio hiper-complexo apenas conseguisse
detectar um certo ângulo, se este estivésse com a abertura a apontar numa direcção precisa. O que nós queremos que
este neurónios sejam capazes de detectar, são ângulos que apenas têm de respeitar a condição de serem formados a
partir de duas orientações precisas, qualquer que seja o lado para o qual está virada a abertura.
Fig. Error! No text of specified style in document.-8 - (A)- Quatro ângulos, formados pelas mesmas
orientações. (B)- Os quatro ângulo são concentrados num só, de forma a permitir uma aprendizagem semelhante à
que se observa no córtex cerebral de mamíferos.
8.4.1.3.4 Dados do NeuroCAD
Como esta camada vai estar ligada a montante da camada complexa, os padrões de entrada serão outra vez
apresentados na entrada da primeira camada. Estes padrões vão gerar saídas na camada simples, que serão usadas para
obter as saídas da camada complexa. Por sua vez, essas últimas vão excitar a camada hiper-complexa.
8-23
Reconhecimento automático de caracteres
Córtex visual artificial
8-24
As dados a introduzir ao NeuroCAD, para se conseguir a estrutura desejada para esta camada, são os seguintes:
•
•
•
•
•
•
•
•
•
Input data type: Bitmap
Output data type:
Class
Weights type:
48 bit / 6 byte
Patterns order: Sequential
Input function:
Weighted
Output function:
Linear2
Layer size:
5x6 planes
Plane size:
4x4 neurons
Bias usage:
Used
•
•
•
•
•
•
•
•
Learning rule:
Normalize weights:
Frozen state:
Plane update:
Receptive field size:
Interfield offset:
Starting neuron index:
Multi-plane fields:
Hebb
Enabled
Not frozen
Shared
9x2x2
1
(-1,-1)3
Enabled
Deste arranjo resultaram os seguintes resultados numéricos para esta camada:
• Link count:
17280 {Active:9720 Null:7560}
• Weights memory:
103 Kb
• Weight count:
17760 {Active:10200 Null:7560}
• Layer count:
4
• Forward possible links:388804
• Neuron count: 480
• Forward connectivity: 25%5
Os pesos foram todos inicializados a 1.0 e automáticamente normalizados para 1/366 pelo NeuroCAD. O peso de
Bias foi novemente inicializado a 0.0.
8.4.1.3.5 Resultados experimentais
Agora vamos novamente apresentar resultados obtidos de experiências preliminares, para podermos depois
proceder ao treino definitivo já com uma melhor compreensão do comportamento da rede até este ponto. Nem sequer
vamos utilizar o tamanho previsto para esta camada de neurónios hiper-complexos, para obtermos maior rapidez de
treino e de obtenção de resultados úteis. Também poupámos no conjunto de treino, reduzindo este para apenas 8 ângulos
na fase preliminar. Estes ângulos ainda eram do tipo que tinha a abertura para um lado. Como termos a oportunidade de
verificar, isto causou um sério problema durante esses treinos preliminares. Só mais tarde, já no treino definitivo é que
utilizámos o conjunto de treino mostrado anteriormente.
Mais uma vez, o tempo de treino foi levado sempre um pouco para além da constante de de tempo de vizinhança,
para permitir uma convergência final bastante estável. Em todos os treino seguintes, já utilizámos a segunda
implementação da função de vizinhança, através de ligações laterais fictícias.
8.4.1.3.5.1.1 Treinos preliminares
Fig. Error! No text of specified style in document.-9 - Conjunto de
treino utilizado nos dois treinos preliminares seguintes (1-8). Este conjunto
consistia de um ângulo de 90º rodados. A infelicidade da escolha inicial deste
conjunto, consistia no facto de que todos estes se reduzem a apenas dois ângulos realmente diferentes do ponto de vista dos neurónios hipercomplexos. Um desses ângulos é constituído por uma orientação vertical e outra horizonal (A), enquanto que o outro tem duas orientações oblíquas
(B).
2
Já que esta camada vai sofrer aprendizagem, já temos de voltar a usar uma função de saída linear.
3
Como o centro do campo receptivo de 2x2 para o NeuroCAD, é a ligação superior esquerda, o primeiro campo tem de ser colocado nas
coordenadas neuronais de (-1,-1).
4
(Nº neurónios hiper-complexos) X (Nº neurónios complexos) = 480 x 81 = 38880.
5
(Nº ligações activas) / (Nº ligações possíveis) = 9720 / 38880 = 0.25 = 25%.
6
9x2x2=36 ligações (pesos).
8-24
Reconhecimento automático de caracteres
Córtex visual artificial
8-25
• Treino com epsilon=0.8; SIGMAi=2; SIGMAf=0.2; CTV=40; 8 ângulos; com Bias; vizinhança lateral
Neste treino apenas quisémos verificar se esta camada conseguia discriminar bem entre os ângulos do conjunto
de treino. Também vamos apresentar mapas de actividade que mostram que este conjunto de treino não é adequado ao
treino deste tipo de neurónios.
Fig. Error! No text of specified style in
document.-10 - À esquerda apresenta-se o mapa de pesos
das ligações da camada hiper-complexa. Verifica-se que há
8 sensibilidades diferentes pelos 16 planos, tal como o
número de padrões treinados. Isto significa que, pelo menos,
o treino continua a ter sucesso mesmo já a este nível, no que
respeita à contemplação de pelo menos um plano para cada
padrão. À direita apresenta-se já um mapa de sensibilidades
artificialmente construído a partir da observação das
actividades para cada padrão (já que aqui, o mapa de pesos
não traduz directamente as sensibilidades de cada neurónio,
tal como acontecia na camada simples). Verifica-se que
afinal as 8 sensibilidades se reduzem a apenas 6, em que há
dois agrupamentos de ângulos semelhantes.
Fig. Error! No text of specified style in
document.-11 - Aqui podem-se ver as actividades
da camada complexa, para os diversos ângulos de
treino. Como parece evidente, estas actividades
reflectem a detecção dos pares de orientações de
cada ângulo. Assim , por exemplo no cantto
superior esquerdo, temos a detecção de um
segmento horizontalo e de outro vertical, o que
corresponde ao ângulo mostrado nesse momento.
Para os dois tipos fundamentais de ângulos que
aqui temos, as actividades respectivas são
semelhantes,
mudando
apenas
de
posição.
Fig.
Error!
No
text
of
specified style in document.-12 - Aqui
podem-se observar as actividades da
camada de neurónios hiper-complexos,
para cada ângulo de entrada. As zonas
claras rodeadas por zonas escuras, são
as actividades maiores. Como se pode
verificar, a rede practicamente não
conseguiu separar os ângulos ∧ > e < ∨
respectivamente. Isto terá a ver com o
8-25
Reconhecimento automático de caracteres
Córtex visual artificial
8-26
facto de serem formados a partir das mesmas orientações que, acrescido da invariância fornecida pela camada complexa, originou este agrupamento.
Deste treino preliminar podemos afirmar que não vale a pena tentar discriminar entre ângulos “diferentes” se
estes forem constituídos pelas mesmas orientações, além de não ter muita lógica fazer isso. Afinal, o que nos interessa é
apenas discriminar a presença de contornos importantes, quaisquer que eles sejam e qualquer que seja a sua orientação
ou lado de abertura angular. Assim, basta que estes neurónios hiper-complexos onsigam discriminar a presença dum
certo ângulo, independentemente do lado da abertura. No córtex visual é axactamente isso que parece acontecer. Eis a
razão da nossa decisão em utilizar um conjunto de treino com cruzamentos em vez de ângulos únicos própriamente
ditos.
8.4.1.3.5.2 Treino definitivo desta terceira camada
Vamos agora apresentar os resultados obtidos num treino definitivo, já com uma camada igual à prevista nas
discussões teóricas, bem como com o conjunto de treino alterado.
Fig. Error! No text of specified style in document.-13 - Este será o conjunto de treino
utilizado para este treino definitivo. Aqui já aparecem todos os cruzamentos possíveis.
• Treino com epsilon=0.8; SIGMAi=3; SIGMAf=0.25; CTV=80; 28 cruzamentos; com Bias; vizinhança
lateral
Tivémos que usar aqui valores de SIGMA médios, de forma a ter em conta a forma não quadrada da camada. Só
o SIGMAi é que reflecte o lado maior (6 planos) de forma a proporcionar um espalhamento inicial adequado a esse lado.
Pensamos que a falta da forma quadrada não vai favorecer nem desfavorecer demasiado certos padrões. Também não
valia a pena colocar mais uma coluna de planos, já que isso iria originar planos supérfluos.
Fig. Error! No text of
specified style in document.-14 - À
esquerda mostra-se o estado do
mapa de pesos desta camada, ao fim
de 30 ciclos de treino. Aqui já se
distinguiam
17
sensibilidades
diferentes. Nesta fase, ainda se
processava
a
organização
e
espalhamento. Ao meio, já temos o
estado final do mapa de pesos em
que
já
se
distinguem
22
sensibilidade diferentes. Houve alguns planos adjacentes que parecem ter ficado sensíveis ao mesmo ângulo. À direita, apresentamos já um mapa das
sensibilidades dos 30 planos aos vários cruzamentos de treino. Tal como na camada simples, este mapa é obtido pelo NeuroCAD a partir do nível de
actividade de saída desta camada, para cada cruzamento.
Apesar de parecer que há ângulos que ficaram de fora e que nunca serão detectados, isso não é bem assim. Na
realidade, Todos os ângulos originavam uma forte actividade nalgum(s) plano(s), pelo que a sua presença é bem notada.
8-26
Reconhecimento automático de caracteres
Córtex visual artificial
8-27
O que acontece é que estes ângulos marginalizados durante a fase de treino, são detectados por neurónios hipercomplexos que sejam sensíveis a um ângulo parecido. Estas actividades foram prontamente observadas nos mapas de
actividade. Além disto, até aqueles planos que parecem ter ficado sensíveis ao mesmo ângulo, apresentavam algumas
diferenças de actividade entre eles.
Para uma observação mais completa sobre as acticidades ao longo de toda a rede, vamos de seguida apresentar
uma sequência de mapas que mostram a actividade das diversas camadas, para cada padrão de entrada.
Fig.
Error!
No
text
of
specified style in document.15 - Mapa de actividades da
camada simples. Como se pode
ver, estas ainda são bastante
“finas” e aparecem nos planos
respectivos das sensibilidades.
À medida que um padrão vai
rodando,
estas
actividades
também vão rodando pelos
planos respectivos, duma forma
suave. Isto mostra que padrões
intermédios
também
serão
facilmente detectados, graças a
uma
selectividade
não
demasiadamente elevada. Cada orientação activa fortemente um plano, activando parcialmente planos próximos e relacionados com essa orientação.
Esta selectividade relativamente baixa, facilitará a detecção de orientações em curvas de raio elevado. Contudo, se se quiser aumentar essa
selectividade, ter-se-á de utilizar veto cells7 que são neurónios especiais que possuem a capacidade de inibir os neurónios detectores.
Fig. Error! No text of specified style in document.-16 - Mapa de actividades da camada complexa. Nota-se bem o factor de redução (4x4)
da camada anterior simples, para esta complexa. As actividade estão essencialmente na mesma posição, mas são mais grosseiras (coarse).
7
Ver o Neocognitron de Fukushima e Wako, 1991.
8-27
Reconhecimento automático de caracteres
Córtex visual artificial
8-28
Fig. Error! No text of specified style in document.-17 - Mapa de actividades da camada hiper-complexa. As
zonas mais escuras representam os neurónios com maior actividade, para cada padrão de entrada (cruzamentos). O contraste
entre actividades máximas (preto) e actividades parciais (cinzentos), foi mais forte do que parece aqui. Enquanto que as
primeiras tinham um valor próximo de 1.0, as restantes estavam geralmente abaixo dos 0.5.
00
01
02
03
04
05
06
++
++
+ (09)
++
++
++
++
07
08
09
10
11
12
13
++
+ (16)
++
++
- (19)
- (04)
++
14
15
16
17
18
19
20
++
- (20)
++
++
- (01)
++
++
21
22
23
24
25
26
27
- - (24)
+ (05)
++
++
++
++
+ (23)
Tab. Error! No text of specified style in
document.-1 - Tabela com a selectividade e força de
detecção de cada cruzamento. (++)- cruzamento dominador
de um ou mais planos. (+)- cruzamento bem detectado por
um plano especializado noutro cruzamento (este é indicado
dentro de parêntesis). (-)- cruzamento parcialmente
detectado por um plano especializado noutro cruzamento.
(- -)- cruzamento practicamente não detectado. Os números
de 0 a 27 identificam o cruzamento de treino.
Como se pode ver deste treino, 19 cruzamentos ficaram com planos de neurónios completamente dedicados a
eles. Além destes, haviam ainda outros 9 cruzamentos detectados por um desses planos anteriores (alguns eram pior
detectados que outros). Um destes últimos (21) quase que ficava de fora. Alguns cruzamentos obtiveram mais do que
um plano dedicado, o que estragou um bocado a distribuição final. De qualquer forma, o que nos interessa é que os
cruzamentos fossem detectados, mesmo que hajam planos que detectem dois ou mais cruzamentos ao mesmo tempo.
Como no final desta camada se vão juntar todos os 30 planos num só, não interessa de onde vêm as actividades. Esse
interesse apenas foi dado para o ponto de vista da plasticidade da camada. Mesmo aí, desde que todos os cruzamentos
sejam atendidos, já é um bom resultado.
8.4.1.3.6 Selectividade hiper-complexa
Tal como fizémos para os neurónios simples, também aqui podemos calcular a curva de selectividade para os
neurónios hiper-complexos. Para isso, vamos considerar as curvas de selectividade calculadas para os dois campos
receptivos simples considerados anteriormente: 5x5 (usado na camada simples) e 10x10 (só para teste). Como cada
neurónio hiper-complexo vai, em princípio, receber apenas duas saídas complexas, a actividade deste será a soma
normalizada das actividades daqueles. Mas os neurónios complexos vão ter uma curva semelhante à dos simples, àparte
do facto de estes receberem mais do que um neurónio simples (factor multiplicativo eliminado pela normalização da
saída para um máximo de resposta de 1.0).
Os neurónios hiper-complexos terão então uma curva de selectividade semelhante à dos simples, no caso do
ângulo mantiver sempre a mesma abertura mas rodar no espaço. Se rodar apenas um dos lados, enquanto que o outro
está fixo na posição de resposta máxima, então a curva piora o seu aspecto, por causa da falta de distinção sináptica que
será explicada mais à frente.
Fig. Error! No text of specified style in document.-18 - À esquerda
estão representadas as várias rotações dos cruzamentos que originam as várias
actividades dum neurónio hiper-complexo que seja sensível ao primeiro. A
curva de selectividade até que nem é má, para este caso de rotação do
cruzamernto inteiro. Isto porque ambos os segmentos orientados que o
compõem rodam ao mesmo tempo. Se apenas rodar um deles e o outro ficar
fixo, a coisa já é diferente (pior).
8-28
Reconhecimento automático de caracteres
Córtex visual artificial
8-29
Fig. Error! No text of specified style in document.-19 - Esta é a curva de selectividade resultante para o caso da rotação de apenas um
segmento. Como se pode verificar, a curva possui uma zona plana demasiadamente elevada, o que deteriora a selectividade para cruzamentos mais
pequenos. A partir dos 33º sensivelmente, os neurónios hiper-complexos deizam de ser capazes de distinguir entre cruzamentos de abertura menor.
Isso origina o indesejável observado nos mapas de actividade anteriores, em que havia neurónios que pareciam ser igualmente sensíveis a uma gama
de ângulos diferentes. Visto de outra forma, havia ângulos que provocavam uma área relativamente grande de actividade semelhante.
Esta falta de selectividade tem de ser resolvida em experiências posteriores, se quisermos que a aprendizagem e
organização dos vários planos se processe duma forma mais selectiva e correcta. O facto dos neurónios hiper-complexos
não terem ficado semelhantemente sensíveis a todos os cruzamentos, e de terem ficado com uma distribuição de
sensibilidades um pouco estranha e altamente irregular, será certamente devido a esta falta de selectividade dos
neurónios individuais em ângulos pequenos.
8.4.1.4 Camada de saída
Como já foi anunciado, esta camada de saída vai reunir todos os planos da camada hiper-complexa, em apenas
um plano de saída. Isto tem como objectivo a redução do número de linhas de saída, para facilitar o trabalho dos andares
seguintes, bem como para tornar estas saídas invariantes do tipo de ângulo. Apenas nos interessa saber as posições dos
contornos importantes.
8.4.1.4.1 Parâmetros arquitecturais
• Dimensão da camada
Como será óbvio, esta camada terá a dimensão de um plano da camada hiper-complexa imediatamente anterior.
Assim, esta camada de saída terá apenas 4x4(=16) neurónios.
• Tipo de ligações
8-29
Reconhecimento automático de caracteres
Córtex visual artificial
8-30
Estas ligações serão feitas de forma a que cada neurónio desta última camada tenha uma saída do neurónio
respectivo de todos os planos da camada hiper-complexa. Assim, cada neurónio irá ter 5x6=30 ligações à camada
anterior. No fundo, trata-se dum afunilamento.
Fig. Error! No text of
specified style in document.21 - Outra forma de olhar para
a estrutura de ligações entre as
duas
camadas:
amontoando
todos os planos da camada
hip+er-complexa,
cada
neurónio de saída irá ligar a
todos os neurónios na vertical.
O valor destas ligações deve ser tal, que estes neurónios de saída
façam apenas uma soma das actividades dos neurónios hiper-complexos
planos hiper-complexos, para um único plano de saída. respectivos.
Fig. Error! No text of specified style in
document.-20 - Ilustração do afunilamento dos 5x6
Cada neurónio de saída liga a todos os seus
• Tipo de neurónios
Os neurónios desta camada não terão qualquer capacidade de
Aqui apenas se mostram algumas dessas ligações para
um neurónio de saída. É como se estivessemos a aprendizagem, sendo os seus pesos pré-definidos e congelados. A sua
sobrepôr todos os planos hiper-complexos num só de função de transferência será do tipo Linear com limiar nulo, pelo que
não se utilizará aqui o peso de Bias. A função de entrada será, como
saída.
sempre, a média pesada das entradas.
equiposicionais hiper-complexos de todos os planos.
8.4.1.4.2 Dados do NeuroCAD
Tal como aconteceu para a camada simples, tamb]em aqui vamos ter de modificar a função de transferência da
camada hiper-complexa, para um tipo em degrau. E para simular uma espécie de contrast enhacement das actividades
daquela camada, adicionamos um limiar de 0.22 áquela função em degrau. Foi com esse valor que se conseguiram os
melhores resultados posteriores. Além disso, congelámos aquela camada, para evitar que os pesos se modifiquem
durante a inicialização da camada de saída.
As dados a introduzir ao NeuroCAD, para se conseguir a estrutura desejada para esta camada, são os seguintes:
• Camada hiper-complexa:
• Output function:
Step (threshold=0.22)
• Frozen state:
Frozen
• Camada de saída
•
•
•
•
•
•
•
•
Input data type: Bitmap
Output data type:
Weights type:
Input function:
Output function:
Layer size:
Plane size:
Bias usage:
Class
48 bit / 6 byte
Weighted
Linear
1x1 planes
4x4 neurons
Not used
•
•
•
•
•
•
•
Learning rule:
Normalize weights:
Frozen state:
Receptive field size:
Interfield offset:
Starting neuron index:
Multi-plane fields:
None
Enabled
Frozen
30x1x1
1
(0,0)
Enabled
8-30
Reconhecimento automático de caracteres
Córtex visual artificial
8-31
Deste arranjo resultaram os seguintes resultados numéricos para esta camada:
• Link count:
480 {Active:480 Null:0}
• Weights memory:
2.5 Kb
• Weight count:
480 {Active:480 Null:0}
• Layer count:
5
• Forward possible links:76808
• Neuron count: 16
• Forward connectivity: 6.25%9
Os pesos foram todos inicializados a 1.0 e automáticamente normalizados para 1/3010 pelo NeuroCAD.
8.4.1.4.3 Resultados experimentais
Vamos agora aqui apresentar resultados referentes ao conjunto de treino.
Fig. Error! No text of specified style in document.-22 - Mapas de actividade para o conjunto de treino com os cruzamentos. Aqui nota-se
perfeitamente que a invariância fornecida pela camada complexa está a originar uma espécie de espalhamento dos ângulos. Este efeito é mais forte na
direcção dos contornos rectilíneos que também ajudam na actividade.
Os estranhos efeitos que observámos nos mapas de actividade de padrões com porções de rectas, devem-se do
facto de que os neurónios hiper-complexos ficam activos com um certo número de actividades de entrada,
independentemente da sua origem. Assim, desde que hajam actividades complexas suficientes, existirão também
actividades hiper-complexas, mesmo que tudo isto tenha sido despelotado por simples segmentos de recta (isto será
visto e expandido mais tarde).
8
(Nº neurónios de saída) X (Nº neurónios hiper-complexos) = 16 x 480 = 7680.
9
(Nº ligações activas) / (Nº ligações possíveis) = 480 / 7680 = 0.0625 = 6.25%.
10
30x1x1=30 ligações (pesos).
8-31
Reconhecimento automático de caracteres
Córtex visual artificial
8-31
8.4.2 Aspecto final
Com o objectivo de fornecer uma visão geral sobre toda esta hiper-coluna protótipo, vamos aqui apresentar a
versão final de toda a implementação desta.
8.4.2.1 Estrutura
A estrutura desta rede é em forma de várias camadas, cada uma com uma função bem definida.
• Camada simples
Esta camada vai detectar diferentes orientações de segmentos de recta contidos nos padrões de entrada. Cada
plano será sensível a uma só orientação. Esses segmentos terão de ter um comprimento mínimo para serem detectados, e
podem estar ligeiramente desviados (a selectividade não é absoluta). Possui campos receptivos simples e sobrepostos.
• Camada complexa
Esta camada vai fornecer alguma invariância de translação, na medida em que vai reduzir o tamanho de cada
plano da camada simples. Aqui vai-se perder alguma informação de posição destes segmentos. Possui campos
receptivos simples e não sobrepostos.
• Camada hiper-complexa
Esta camada é a mais complexa e crítica, pois é ela que vai detectar os ângulos e cruzamentos que vão ser
posteriormente utilizados como informação de classificação/reconhecimento. Cada plano desta camada será sensível a
um só ângulo. Possui campos receptivos múltiplos e sobrepostos.
• Camada de saída
Esta camada vai proceder à sobreposição de todos os planos da camada hiper-complexa, reduzindo a saída a um
conjunto de linhas que indicam a presença ou não de contornos angulares. Estas saídas já não não distinguem os
diferentes ângulos, porque são uma espécie de OR dos planos hiper-complexos. Possui campos receptivos constituídos
pos linhas que ligam a todos os planos.
8-31
Reconhecimento automático de caracteres
Córtex visual artificial
8-32
Fig. Error! No text of specified style in document.-1 - Esquema
ilustrativo da estrutura completa da rede que implementa a hiper-coluna
protótipo. Possui um campo de entrada de tamanho 12x12=144, e uma saída de
tamanho 4x4=16.
Esta estrutura é parecida com a do Neocognitron
[Fukuhima,1991], distinguindo-se mais nas últimas camadas.
8.4.2.2 Dados do NeuroCAD
A informação fornecida pelo NeuroCAD no final desta rede toda, é como se segue:
•
•
•
•
Weights memory:
NeuroCAD memory:
Layer count:
Neuron count:
320256 byte (≈312 KByte)
2.2 MByte
51
2017
•
•
•
•
Link count: 51600 {Active: 37884; Null: 13716}
Weight count:53376 {Active: 39660; Null: 13716}
Possible forward links: 338304
Forward connectivity: 11.19%2
Esta rede possui um grau de ligação relativamente reduzido, além de não ocupar muita memória (qualquer
computador pessoal possui a quantidade necessária).
8.4.3 Testes e verificações finais
Aqui vamos a alguns testes e verificações simples, para termos uma ideia geral sobre o funcionamento global
desta hiper-coluna protótipo. Ao longo destes testes, vão-nos aparecer alguns problemas já mencionados anteriormente,
para os quais iremos apresentar futuras soluções a implementar.
Além de problemas que vão surgir expontâneamente, também iremos escolher alguns padrões especialmente
destinados a evidenciar outros problemas que estão directamente relacionados com a estrutura de toda a rede. A
diferença destes para os primeiros, é que estes não são graves e traduzem apenas as limitações provocadas pelo poder de
resolução da rede (tamanho do campo visual, invariância, etc.).
8.4.3.1 Padrões desconhecidos
1
Inclui a camada de entrada exigida pelo NeuroCAD, e que tem um papel de buffering.
2
37884 / 338304 = 0.1119 = 11.19%.
8-32
Reconhecimento automático de caracteres
Córtex visual artificial
8-33
Nesta fase, vamos proceder a um teste prórpiamente dito, da rede, tal como se fazia para redes supervisionadas
(conjuntos de padrões de teste). Vamos aplicar padrões não treinados na entrada da rede, e observar as muitas
actividades que vão surgir ao longo das várias camadas da rede.
Note-se que agora já todas as camadas possuem actividades lógicas (1.0 ou 0.0), já que estamos a simular a
situação de contraste que parece ser a uma palavra-chave do funcionamento do cérebro. As únicas diferenças estarão no
limiar (limiar de supressão segundo Grossberg) fixo, sem normalização automática da actividade total por camada.
Fig. Error! No text of specified style in document.-2 - Conjunto de teste que
serviu para evidenciar problemas e limitações desta hiper-coluna protótipo.
Alguns destes padrões foram escolhidos de propósito para se mostrarem alguns problemas e limitações desta rede
neuronal que simula uma hiper-coluna:
• Padrão 2 e 4
Estes padrões vão mostrar que a rede não detecta contornos abaixo dum comprimento mínimo. Padrões com
essas características, ou serão apenas parcialmente detectados, ou então não serão sequer detectados.
• Padrão 8
Este padrão vai mostrar que muitos contornos semelhantes (aqui segmentos horizontais) juntos, não serão
separados correctamente na fase da invariância.
• Padrões 3 e 6
Estes padrões darão origem a uma saída final muito semelhante (ou mesmo igual), devido a terem os seus
ângulos muito próximos uns dos outros e em lugares semelhantes.
Fig. Error! No text of specified
style in document.-3 - Nestes mapas de
actividade, referentes à camada simples,
evidencia-se logo uma limitação importante:
no padrão 2 não se detectaram os segmentos
horizontais, e no padrão 4 isso foi levado ao
extremo de nem sequer detectar a presença de
nenhum contorno. Como se pode observar,
duma forma geral esta camada está a
responder correctamente, detectando todos os
segmentos
apresentados
contidos
(desde
nos
que
contornos
tenham
um
comprimento mínimo).
8-33
Reconhecimento automático de caracteres
Córtex visual artificial
8-34
Fig. Error! No text of specified
style in document.-4 - Mapas de actividades
da camada hiper-complexa. Agora, cada
padrão activa os neurónios correspondentes
aos ângulos que aparecem nesses padrões.
Aqui,
o
problema
consiste
numa
selectividade demasiado baixa dos neurónios
hiper-complexos, o que origina uma vastidão
de
actividades
causadas
por
ângulos
parecidos ou que contenham pelo menos uma
das orientações necessárias ao disparo dos
neurónios. Este excesso de actividade não
pode ser corrigido modificando o limiar, tal
como será explicado mais tarde. Nem os
mecanismos de enriquecimento de contraste poderão ajudar.
8.4.3.2 Opaquicidade a contornos indesejados
Por contornos indesejados, queremos significar ontornos rectilíneos que não contribuam para a formação de
ângulos. Por outras palavras, referimo-nos a segmentos de recta únicos. Como não transportam informação
discriminável pela camada hiper-complexa, devem ser descartados por esta (não detectados). Interesse-nos pois saber se
esta rede reage excessivamente a este tipo de contornos.
Vamos então proceder a um teste simples que servirá para observar o comportamento de rejeição deste tipo de
contornos sem informação útil.
Fig. Error! No text of specified style in document.-5 - Conjunto de padrões de teste a
utilizar para a verificação do grau de opaquicidade da rede a contornos indesejados. Estes padrões
são segmentos de recta únicos, pelo que não transportam informação angular discriminável pelas
últimas camadas.
Como a camada simples e complexa reagem naturalmente a estes contornos, só nos interessa verificar as reacções
das camadas seguintes extractoras de ângulos e de saída.
8-34
Reconhecimento automático de caracteres
Córtex visual artificial
8-35
Fig. Error! No text of specified
style in document.-6 - Mapa de actividade
da camada hiper-complexa. Como se pode
ver, esta rede possui o grave problema da
excessiva sensibilidade a cada uma das
orientações dos ângulos para os quais ada
neurónio hiper-complexo é sensível. Isto já
tinha sido observado durante os testes
anteriores. Este problema é absolutamente
indesejado, e pode eventualmente originar
grandes
dificuldades
nos
mecanismos
posteriores de reconhecimento. Esta camada
devia ser completamente opaca a este tipo
de contornos.
8.4.3.3 Problemas observados
Como vimos, existem alguns problemas nesta rede:
8.4.3.3.1 Segmentos curtos que não sobrevivem na invariância da camada complexa
Contornos muito curtos (iguais ou perto do mínimo) tendem a perder-se durante a fase da invariância na camada
complexa, devido aos limiares de disparo destes neurónios. Se se diminuir este limiar, verificou-se um excesso de
informação onde ficava quase todo o mapa activo. Assim, com este limiar, há informação que se perde.
Este problema tem a ver directamente com a natureza fixa do limiar dos neurónios complexos. Se este limiar
fosse dinâmico e adaptável, e estivesse talvez aliado a um mecanismo de enriquecimento de contraste (contrast
enhacement) [Grossberg, 1989], talvez de conseguisse obter uma saída menos corrompida (por ter em conta os níveis de
actividade de entrada). É que todo o problema se centra na impossibilidade de fixar um limiar óptimo. Se este for
elevado, cortam-se as pequenas actividades. Se for reduzido, amplifica-se todo o lixo que aparece eventualmente à
entrada desta camada. Neste último caso, pelo facto de se tornar a saída uma versão a “grosso” das saídas simples, se
aparecerem saídas simples espúrias originadas por segmentos curtos que nem sequer interessam, então iríamos ter uma
confusão de actividade à saída da camada complexa. De facto, este problema não tem solução aparentemente fácil, e
poderá consistir apenas num compromisso, se deixássemos a função Step nestes neurónios.
8.4.3.3.2 Falta de selectividade na camada hiper-complexa
Os ângulos dum padrão activam uma nuvem de neurónios que possuam sensibilidades parecidas, além de activar
os neurónios exactos. Isto pode ser visto como uma falta de selectividade por parte destes neurónios, tal como já foi
mencionado aquando da apresentação das curvas de selectividade destes. Esta aparente falta de selectividade tem a sua
origem num problema muito mais subtil e chato: o que causa o disparo indesejado dos outros neurónios é a presença de
orientações que são iguais ou muito parecidas com uma das orientações necessárias ao disparo desses neurónios. Por
8-35
Reconhecimento automático de caracteres
Córtex visual artificial
8-36
outras palavras, esses neurónios disparam porque recebem excitação suficiente por parte dessa orientação, mesmo que a
outra não esteja presente de forma alguma. Após bastante tempo de investigação deste problema bicudo, além de
experiências de verificação, chegámos à conclusão que é mesmo isto que estava a acontecer. Isto reflecte-se também
num outro problema gravíssimo: esta camada não é opaca a orientações simples (segmentos únicos). Isto origina uma
elevada actividade mesmo que não hajam ângulos, desde que os segmentos possuam a orientação para a qual cada
neurónio hiper-complexo é sensível.
Fig. Error! No text of specified style in document.-7 - Três situações distintas
mas relacionadas, onde o neurónio tem respostas desejadas e uma não-desejada. As
primeiras duas situações representam as respostas desejadas: presença ou não dum certo
ângulo. Isto é conseguido mediante o uso dum limiar de disparo apropriado (neste caso
bastava ser 4.0). No entanto, na terceira situação pode acontecer que a actividade numa das
entradas baste para disparar o neurónio, apesar da outra entrada não estar activa de todo.
Estas ectividades provêm do neurónios simples, sensíveis às orientações de segmentos de
recta. è necessário pois introduzir um factor de influência entre sinapses, ou algo que evite
este efeito indesejado verificado.
Aumentar o limiar de disparo não é solução porque isso iria
originar falta de sensibilidade para ângulos de dimensões mais pequenas.
O que queríamos mesmo, era um mecanismo pelo qual os neurónios apenas disparavam se tivessem suficiente actividade
de entrada por parte de ambas as orientações que compôem os seus ângulos de sensibilidade. Se faltasse uma orientação,
os neuróniuos teriam de ser mais relutantes a actividades parciais, duma só orientação.
Note-se que há informação referente ao facto de que os neurónios conseguem distinguir a origem dos sinais que
provêm das diferentes sinapses. Isto poderá eventualmente significar que os neurónios hiper-complexos reais do córtex
visual, poderão empregar um método que assente nesse facto, de forma a conseguirem um limiar de disparo dependente
daquelas origens. Poder-se-ia imaginar um mecanismo interno ao neurónio, do género duma porta lógica AND. Foram
feitas experiências que confirmam a existência de fenómenos de facilitação hetero-sináptica [Eric R. Kandel e Tauc,
1970], isto é, uma sinapse activa facilita a passagem do sinal por uma outra adjacente. Sem essa ajuda, aquela não teria
quase transmissão, parecendo estar em aberto.
Isto seria uma solução possível de implementar nesta rede. Nessa implementação, em vez de apenas uma soma,
dá-se especial peso a um factor de multiplicação sináptica, semelhante ao que parece acontecer na facilitação sináptica.
Com este processo, conseguir-se-iam curvas de selectividade muito melhores, o que é absolutamente indispensável para
o correcto funcionamento da camada hiper-complexa.
Fig. Error! No text of specified style in
document.-8 - Curva de selectividade para uma entrada
multiplicativa pura das entradas sinápticas. Neste caso dos
neurónios hiper-complexos, interessa-nos uma facilitação
bilateral das duas3 orientações de entrada activas. Como
se pode ver pelas curvas (a cheio está a curva da
selectividade multiplicativa e a ponteado está a curva da
selectividade aditiva anteriormente determinada, para
comparação), esta entrada multiplicativa melhora bastante
a selectividade global entre cruzamento central e
cruzamentos laterais. E isto é para o caso dum dos
segmentos estar fixo, que era o pior caso. No entanto, estes neurónios continuam sem capacidade de discriminação entre ângulos pouco abertos e
próximos. O aumento do centro ON do campo receptivo poderia eventualmente minimizar esse problema (tal como já foi explicado para os neurónios
simples). Essa falta de capacidade poderá, eventualmente, ainda trazer alguns problemas de organização durante a fase de aprendizagem.
3
Idealmente, a aprendizagem dará origem a ligações activas, provenientes de apenas dois planos complexos, ou seja, de apenas duas
orientações diferentes.
8-36
Reconhecimento automático de caracteres
Córtex visual artificial
8-37
Desde que as curvas de selectividade dos neurónios hiper-complexos já apresente uma boa selectividade para
ângulos próximos do ângulo de resposta máxima, e associando à camada um comportamento do tipo STM (Short Term
Memory), então poder-se-á conseguir um conjunto de actividades apropriado à aprendizagem desta rede. Assim, não
será absolutamente necessário que a banda de paragem da curva de selectividade atenue a 100%, desde que haja
suficiente contraste entre essa e a banda de passagem. Aliás, no córtex visual biológico, os neurónios também não
possuem uma selectividade óptima.
8.4.3.3.3 Saturação da camada de saída
Pelo facto de se estar a juntar todos os planos da camada hiper-complexa num único de saída, procedendo a uma
soma das actividades dos primeiros, origina uma possível saturação desta camada de saída. Isto deriva essenialmente do
problema da falta de selectividade da camada hiper-complexa, que possui actividade espúrias por todo o lado. Assim,
facilmente se compreenderá que este Oring dos vários planos originará a potencialidade de activar muitos neurónios de
saída, populando esta com um excesso de actividades espúrias que já advêm daquele problema anterior.
Tentámos arranjar um valor do limiar de disparo que minorasse este problema, mas isto só funcionará
(razoavelmente mal, desde já) para os padrões testados. Outros padrões já poderiam requerer um limiar diferente, além
de que não podemos escolher um limiar diferente para cada padrão. De qualquer forma, esta solução provisória não
poderá ser definitiva, tal como aconteceria com a implementação desnecessária de limiares dinâmicos e adaptativos só
para resolver esta questão.
Quando se resolver o problema que originou este, então poder-se-á proceder a novos testes desta camada, para
verificar se finalmente funciona da forma desejada.
No entanto, se realmente associarmos o comportamento das memórias STM às camadas simples e hipercomplexa, tal como mencionaremos mais à frente nas melhorias, então este problema deixa automáticamente de existir
já que teremos uma actividade global de saída normalizada.
4
8.4.3.3.4 Aprendizagem real defeituosa
Por esta aprendizagem, referimo-nos à utilização dum conjunto de treino com padrões reais a reconhecer. Por
outras palavras, em vez de treinar toda a rede com padrões especiais para cada camada, utilizar os próprios padrões que
queremos classificar (dígitos, caracteres, etc). A ideia-base desta aprendizagem, é a de permitir que a rede faça as suas
próprias escolhas das orientações e ângulos importantes a aprender, de forma a se adaptar da melhor forma possvíel ao
problema de classificação em questão. Além de não necessitar duma árdua escolha daqueles padrões especiais, isso
permite um funcionamento totalmente autónomo tal como acontece no cérebro. O cérebro é conhecido pela sua
espantosa capacidade de adaptação/plasticidade aos problemas reais que lhe surgem através dios sentidos. Assim, seria
demasiado artificial, estar a forçar o treino da rede.
Por exemplo, no caso do reconhecimento de caracteres, não sabemos se é necessário treinar todos os ângulos
possíveis. Contudo, fizemos isso mesmo, para evitar eventuais “buracos” na aprendizagem desta rede. Treinando a rede
com dados reais, esta veria exactamente quais os ângulos importantes, bem como quais os desprezáveis ou mesmo
inexistentes.
O problema essencial deste tipo autónomo de aprendizagem consiste nos constrangimentos necessários a cada
camada, tal como já se referiu durante a implementação das camadas simples e hiper-complexa. Fizemos algumas
experiências que falharam por completo, pois a rede não se conseguia organizar bem. De qualquer forma, não tinhamos
incluido todos os constrangimentos nem tinhamos utilizado padrões de treino totalmente correctos (usámos dígitos em
tamanho 8x8, o que se revelou estar já em cima da limitação deacuidade desta rede, além de não termos dado pela
presença do problema da falta de selectividade sináptica dos neurónios hiper-complexos no início desta implementação).
4
Esta soma de actividades resultará, em última análise, numa espécie de OR das respectivas entradas.
8-37
Reconhecimento automático de caracteres
Córtex visual artificial
8-38
Experiências eventualmente futuras, melhoradas, poderão dar mais algumas pistas no sentido de efectuar uma
aprendizagem totalmente autónoma.
8.4.3.4 Limitações observadas
Também existem algumas limitações inerentes à própria estrutura desta rede. Queremos deixar aqui bem claro
que estas limitações não constituem problemas sob o ponto de vista estritamente negativo. Estas limitações referem-se à
gama de operação válida desta rede, tal como acontece para qualquer tipo de detector real.
8.4.3.4.1 Segmentos mínimos detectáveis na camada simples
Existe um tamanho mínimo dos segmentos, para os quais a rede possui ainda alguma actividade na saída da cama
simples. Para segmentos mais pequenos, a rede deixa simplemsmente de os detectar, podendo até todo o contorno não
ser detectado.
Esta limitação deve-se ao facto dos neurónios simples possuirem um limiar de saída, apenas identificando um
segmento de recta se este tiver mais do que um comprimento mínimo. Se não existir esse comprimento mínimo, isso
poderá significar que é um segmento de orientação diferente em que apenas parte dele caíu dentro do campo receptivo
do neurónio simples em causa. Nesse caso o neurónio não ativará, como se deseja. Se, por outro lado, o segmento tiver a
orientação correcta mas for curto demais, o neurónio também não responde por falta de entrada.
Esta limitação é uma característica inerente a qualquer sistema de detecção, além de evitar que qualquer “lixo”
seja logo detectado como sendo alguma orientação. Também no cérebro os neurónios só disparam mais a partir dum
certo ponto.
Esta limitação implica logo um tamanho mínimo para os padrões a discriminar e reconhecer. Tal como acontece
no sistema visual biológico, também aqui se pode falar da acuidade visual, e que consiste na capacidade de discriminar
a presença de certos contornos mínimos.
8.4.3.4.2 Contornos semelhantes e juntos são aglomerados pela camada complexa
Um padrão que possua vários contornos semelhantes muito juntos, originará actividades simples que serão
posteriormente agrupadas numa só na camada complexa. Isto significa que não se será capaz de distinguir entre
contornos que estejam demasiadamente juntos, ou seja, distanciados de menos de 5 pontos (já que o campo receptivo
complexo possui 4x4 pontos). Contornos mais juntos do que isso, poderão ser agrupados na mesma actividade
complexa. Só se cairem em campos receptivos complexos diferentes, é que ainda se preservará a informação da
separação. No entanto, não podemos confiar na sorte e temos de considerar sempre o pior caso.
Esta limitação também está relacionada com o conceito de acuidade visual, só que desta vez refere-se à
capacidade de discriminação de separação entre contornos.
8.4.4 Melhoramentos
Vamos agora expôr alguns extras e também melhoramentos que se podem introduzir na rede, de forma a resolver
os problemas surgidos e a melhorar a resposta da mesma. Alguns destes foram mesmo implementados numa versão final
deste córtex visual artificial.
8-38
Reconhecimento automático de caracteres
Córtex visual artificial
8-39
8.4.4.1 Limiar adaptativo melhorado
Nós implementámos um limiar dinâmico em neurónios de certas camadas, para lhes conferir a capacidade
biológica de estes serem relativamente imunes a sinais de ruído mais baixos e indesejáveis, e também para conseguirem
aprender a discriminar entre padrões durante a fase de treino (foi assim que resolvemos o problema das misturas de
padrões naquela fase). O único senão disto, é que isso foi feito um pouco pela “ força bruta”, em que este limiar apenas
desce e sobe segundo regras muito simples (demasiado simples). Na realidade biológica, um neurónio adapta o seu
limiar de disparo de uma forma mais complexa, com mais condições, além do facto de que nem sempre dispara mesmo
que os sinais sejam superiores a esse limiar.
Um estudo mais detalhado dum neurónio, levaria à implementação de mecanismos de adaptação interna bastante
mais complexos. No nosso caso, como o problema da mistura de sensibilidades ficou resolvido logo à primeira tentativa,
não procedemos a qualquer melhoria posterior deste mecanismo. Este mecanismo foi, essencialmente mantido igual,
apenas com uma ligeira diferença: agora o valor do Bias possui uma “constante de crescimento” positiva e um termo
negativo proporcional à saída do neurónio, tudo numa única equação:
Wbias = Wbias − ( O ⋅ 0.05) + 0.001 .
8.4.4.2 Mecanismos de enriquecimento de contraste e auto-normalização
Estes mecanismos referem-se às propriedades das redes STM (Short Term Memory) descritas e estudadas por
[Grossberg, 1989]. A propriedade que nos interessaria, seria a do contraste adaptativo entre actividades duma dada
camada, através de realimentações ccom campos receptivos do tipo particular de ON-center, OFF-surround.
Matemáticamente falando, estas realimentações laterais iriam originar o chamado limiar de supressão, que teria
como resultado uma normalização das actividades de saída, bem como uma supressão de ruídos e actividades espúrias.
As ligações necessárias seriam as próprias ligações laterais que implementam o efeito da viizinhança durante a
aprendizagem dos neurónios respectivos. Assim, não seria necessário desligar estas ligações durante o chamamento da
camada em questão, sendo essas mesmas utilizadas para o enriquecimento do contraste entre as actividades. Afinal, o
cérebro não vai agora ter um conjunto ligações especializadas na função de vizinhança durante a aprendizagem, e outro
conjunto especializado no enriquecimento do contraste durante a fase de chamamento. Isso seria completamente
inconsistente com a ideia geral de que o cérebro aprende e chama simultâneamente, sem estar e distinguir uma fase da
outra. São duas coisas biológicamente simultâneas.
Para que este mecanismo funcionasse correctamente, teríamos de alterar as ligações globais de vizinhança, para
ligações locais com campos receptivos de alcance restrito. A partir daí, novos treinos e testes seriam necessários, para
verificar se a rede ainda conseguia aprender da forma desejada (com ordem e distribuição). A vizinhança seria agora
mais localizada, permitindo até vários vencedores que conseguissem aprender. Note-se que aqui já não seria necessário
o inconveniente processo artificial de escolher o vencedor que vai aprender em cada iteração. Por outras palavras, o
processo de aprendizagem tornar-se-ia quase 100% autónomo de influências exteriores artificiais (excepto a expansão e
compressão da função de vizinhança)
Estes mecanismos seriam óbviamente implementados apenas nas camadas possuidoras de vizinhança, ou seja, as
camadas simples e hiper-complexa.
Ficaria assim resolvido de forma elegante, altamente eficiente, autónoma, e biológicamente plausível, o problema
dos níveis de actividade produzidos pelas camadas simples e hiper-complexa que deixam de depender tanto do nível de
contraste das features5 presentes nos padrões retinianos. Saliente-se o mais o facto de que este mecanismo STM implica
5
Aqui referimo-nos ao nível de presença de um ângulo ou mesmo orientação: um padrão de entrada pode ter os seus ângulos muito
arredondados, o que originaria uma falta de actividade dos neurónios hiper-complexos e até dos simples que não estão preparados para detectar
curvas. Com um funcionamento destas camadas do tipo STM, as camadas seguintes receberiam a versão contrastada dessas actividade de saída
iniciais.
8-39
Reconhecimento automático de caracteres
Córtex visual artificial
8-40
que se tem de executar alguns ciclos de realimentação até que as actividades fiquem estacionários. Isso leva tempo extra
para a tarefa de reconhecimento de todo o sistema. Além disto, uma implementação destas implica algum tempo de
estudo e experimentação, até que se consigam obter resultados favoráveis.
Fig. Error! No text of
specified style in document.-9 Exemplo teórico da vantagem do
enriquecimento
do
featural
contrast enhacement e adaptive
quenching threshold que pode ser
fornecido
pelas
redes
com
topologia STM. À esquerda está
um padrão que não tira qualquer
vantagem desse enriquecimento de
contraste, visto possuir todos os
ângulos duma forma perfeitamente
distinguível e detectável pelos
neurónios
hiper-complexos.
O
resultado final não terá grandes
diferenças. Já para o padrão do
meio,
notam-se
zonas
de
actividades mal definidas para as
regiões de ângulos curvos. O resultado final mostra que se o limiar de supressão ficar bem colocado, as actividades ficam bem definidas,
sobrevivendo apenas as mais fortes e importantes. À direita temos um caso mais ou menos extremo, onde as acitivades são mais reduzidas porque os
ângulos são muito arredondados e distribuídos. Assim, o limiar de supressão situa-se automáticamente mais abaixo, dando origem um conjunto de
actividades final qwue correspondem às maiores iniciais. Se não fosse este tipo de funcionamento e se os neurónios possuissem limiares de disparo
fixos durante esta fase de chamamento da rede global, então haveria padrões que nunca excitava, suficientemente esses neurónios, e podia acontecer
também o contrário: havia uma saturação de actividades das camadas. Esta STM garante sempre ma normalização da actividade de saída para
qualquer entrada, reduzida ou elevada, pontual ou distribuída. Nota: os primeiros padrões vistos de cima, são os padrões reais apresentados ao
sistema (à retina); os padrões que se seguem são as saídas de contornos dessa mesma retina; a seguir mostram-se as maiores actividades provocadas
por cada padrão na camada hiper-complexa (não se mostra o restante manancial de actividades menores; logo abaixo mostra-se cortes dessa mesma
camada, onde se podem ver as actividades correspondentes a essas linhas de neurónios hiper-complexos; por fim, mostram-se as actividades desse
mesmo corte, após o tempo necessário para se processar o contrast enhacement através da realimentação.
Apenas para acabar esta parte, poderíamos afirmar que é mesmo indispensável implementar um mecanismo do
tipo STM, antes de seguirmos para os centros superiores de pós-processamento e classificação. Sem que este córtex
visual artificial esteja a operar a 100% das suas capacidades teóricas, então não se podem esperar grandes resultados do
sistema global de reconheimento. Limiares fixos não são solução flexível, enquanto que um mecanismo externo de CAG
- Controlo Automático de Ganho [Fukushima, 1988] não é tão eficiente, elegante, autónomo e biológicamente plausível.
Além do mais, quanto mais localizados forem os diversos mecanismos intervenientes nas redes neuronais, mais simples
será a sua eventual implementação em chip.
De facto, após algum tempo de experimentação e testes, conseguimos implementar a capacidade de
enriquecimento automático de contraste no nosso córtex visual. Para isso, limitámo-nos a adicionar as ligações laterais
entre neurónios da mesma camada, tal como já foi explicado anteriormente. Estas ligações compreendiam uma autoligação excitatória e as restantes inibitórias. Ao princípio, os pesos destas ligações eram fixos, mas passaram a ser
chapéus mexicanos variáveis para permitir o treino correcto. Cada chapéu apenas afecta neurónios na mesma posição
dentro dos planos. Ainda por cima, cada neurónio “emite” um desses chapéus. Assim, como temos 9 planos simples,
cada um com 144 neurónios simples, vamos ter 144 chapéus mexicanos, cada um com 9 ligações, o que resulta em
144x9=1296 ligações extra para esta camada.
8-40
Reconhecimento automático de caracteres
Córtex visual artificial
8-41
Fig. Error! No text of specified style in document.-10 - Ilustração das ligações dum único chapéu
mexicano, onde um neurónio liga aos respectivos de cada plano. Só para os 9 neurónios que se vêem aqui, seriam
necessários mais 8 chapéus semelhantes, cada um centrado num plano diferente.
O propósito evidente deste arranjo, é o de forçar uma competição entre neurónios de diferentes
planos, para se obter na saída apenas as orientações mais significativas presentes num padrão.
Isto vai logo resolver alguns dos problemas anteriormente apontados:
- Os contornos mais curtos que dantes não eram detectados, passam a ter a oportunidade de serem convenientemente
amplificados, isto se forem a única feature naquele ponto. Se existir outra feature sobreposta e maior, o contorno mais
curto perde interesse e será automáticamente anulado pela competição desta camada simples.
- Para o caso de curvas, o mesmo processo de competição vai evidenciar a orientação preferida desta, em vez de ficarem
muitos planos fracamente activos.
Haverá, portanto, um controlo automático de ganho, logo no início do córtex, que coloca as actividades
provocadas pelo padrão a um nível normalizado e tratável pelas camadas seguintes. Note-se que a função de
transferência destes neurónios simples passou a ser uma sigmóide positiva. Os valores para as diversas constantes não
são críticos e foram os seguintes: A=0.5, B=1, C=0.5. O valor da auto-ligação era de 0.5, enquanto que as restantes
ligações inibitórias tomavam o valor negativo de -0.1. A forma de chapéu mexicano apenas se mostrou indispensável
durante o treino, mas aqui o processo funcionava bem com estes valores fixos. Após alguns testes, o tempo de recall foi
estabelecido em 5 iterações. Quantas mais iterações melhor, mas demora também mais tempo e tende para assimptotas
que são rapidamente atingidas ao fim de algumas iterações.
Aqui surgiu um problema com as actividades de neurónios cujos campos receptivos adjacentes aos do neurónio
mais activo ainda apanhavam alguns pontos do contorno. É que os chapéus mexicanos apenas inibem neurónios na
mesma posição dentro dos diferentes planos, enquanto que neurónios adjacentes podiam ver o seu “ruído de entrada”
muito amplificado pois não havia nenhum deles a inibir os restantes.
Fig. Error! No text of specified style in document.-11 - Ilustração do problema provocado
pelos neurónios que ainda recebem alguma entrada parcial. Estes não encontram nenhum entrave à
amplificação das suas actividades já que não existe nenhum neurónio muito activo no mesmo chapéu
mexicano, pelo que aparecem actividades elevadas à volta do(s) neurónio(s) “legítimamente” activos,
ainda por cima em planos diferentes.
Fig. Error! No text of specified style in document.-12 - Os 3 neurónios que acertaram em cheio na feature
para a qual são sensíveis, inibe todos os outros grupos de 3 neurónios que estejam na mesma posição mas em planos
diferentes. Até aqui, tudo bem, mas os neurónios adjacentes dos outros planos, que ainda apanham parte da feature,
não sofrem essa inibição, pelo que também activam bastante mas pouco menos.
Uma solução para este problema é a adição de mais ligações inibidoras que desta vez
partem dum neurónio dum plano, para os 8 imediatamente adjacentes dos restantes planos.
Desta forma, consegue-se atenuar a actividade destes para valores muito mais abaixos. De facto, isso funcionou, com a
adição de mais 144x9x8x8=82944 ligações inibitórias de peso -0.2. No fim, esta camada simples ficou com mais de 120
mil ligações, mais de 6000 das quais eram nulas. Apesar da complexidade e tempo que isso acarreta, não quisémos
poupar melhoramentos nesta camada, porque ela é a que mais determina o bom funcionamento de todo o sistema (tal
como o pré-amplificador num amplificador).
8-41
Reconhecimento automático de caracteres
Córtex visual artificial
8-42
Fig. Error! No text of specified style in document.-13 - Ligações inibitórias extra para atenuar actividades
adjacentes parasitas. Para não sobrecarregar o desenho, mostramos apenas três dessas ligações.
A camada complexa não necessita de mecanismos de enriquecimento de contraste, já
que a sua única função é a duma sub-amostragem. No entanto, os seus pesos passam a ser de
0.25 e a função de transferência também é uma sigmóide. Isto garante sempre uma saída, desde
que haja actividade de entrada, e satura o neurónio em caso de excesso de actividade. Um
sistema mais complexo poderia possuir também aqui enriquecimento de contraste, para se conseguir uma normalização
das actividades desta camada. No entanto, e por questões de simplicidade, isso não se mostrou indispensável para o
nosso córtex.
No que respeita aos neurónios hiper-complexos, também incluimos enriquecimento de contraste, já que aqui se
vai decidir tipos diferentes de features (tal como na camada simples) para as posições do padrão. Para isso, também
adicionámos “chapéus mexicanos” com uma topologia de ligações e respectivos valores, semelhantes aos anteriores.
Agora, há competição entre ângulos diferentes.
Finalmente, na camada de saída que vai reunir todos os planos hiper-complexos, também optámos por adicionar
o enriquecimento de contraste, já que existe a potencialidade de haver desnormalizações devido à soma de várias
actividades hiper-complexas no mesmo neurónio de saída. Estas saídas estarão finalmente prontas a serem classificadas.
8.4.4.3 Vizinhança automática
Não nos parece que os mecanismos de enriquecimento de contraste [Grossberg, 1989] consigam, só por si,
implementar uma vizinhança apropriada para uma boa organização das diversas camadas envolvidas. Ou se continuaria
a expandir (organização) e comprimir (especialização) uma função de vizinhança, de forma artificial exterior, ou então
implementar-se-ia um mecanismo automático que fosse capaz de seleccionar duma forma suave, a fase de aprendizagem
que a rede devia adoptar em cada instante.
Como parece muito pouco plausível que as diversas zonas do cérebro consigam distinguir entre fases de
organização e especialização, pensamos que essas fases funcionarão de forma suave a variável conforme a actividade
geral do conjunto de neurónios que afecta. É bem possível que todas as actividades que vão surgindo e desaparecendo
ao longo do tempo, nas complexas redes de ligações laterais, originem automáticamente uma modificação dos pesos
destas de forma a variar convenientemente a largura da vizinhança. Tudo isto pode ser, no entanto, mais complicado que
isso.
Assim, a nossa ideia seria a de implementar um mecanismo se auto-modificação dos pesos das ligações laterais
de vizinhança (que também servem para o enriquecimento de contraste), de forma a adaptar essa vizinhança à actividade
geral da camada em questão. Por outras palavras, poder-se-ia aplicar a regra de Hebb também a estas ligações laterais,
com a esperança de que isso se traduza depois no comportamento pretendido:
- Se aparecessem padrões que não activassem suficientemente a rede, isso significaria que elel ainda não estava
incluído nas suas sensibilidades, pelo que a vizinhança se alargava para permitir a intergração dos contornos
respectivos. Isso permitiria uma re-organização de forma a contemplar neurónios que ficassem sensíveis a esses padrões.
- Se os padrões originassem muita actividade, então significaria que os seus contornos já estavam bem
representados, pelo que a vizinhança se encolhia para evitar estragar a organização.
Esta questão não é nada simples, e teria de ser muito bem estudada antes de ser implementado qualquer
mecanismo extra. Ter-se-ia de verificar se tudo iria funcionar como desejado, o que pode ser muito complicado devido à
vastidão de influências entre neurónios e grupos de neurónios. Eventualmente, isto apenas funcionaria com camadas
muito maiores do que as utilizadas.
Com mais este melhoramento, teríamos finalmente um sistema que aprendia duma forma 100% autónoma e
independente de influências artificiais exteriores. Teríamos uma rede neuronal biológicamente plausível, tanto em
estrutura como na aprendizagem.
8-42
Reconhecimento automático de caracteres
Córtex visual artificial
8-43
Este mecanismo foi tentado através da modificação dos pesos das ligações laterais, de acordo com o próprio
Bias. Assim, se o Bias subisse o chapéu mexicano do respectivo neurónio expandia já que isto significa que o neurónio
não estava a responder. Isto possibilita a captura deste neurónio por outros vizinhos activos, com cada vez maior
facilidade. No caso do Bias descer, isso significa que o neurónio está activo, pelo que o chapéu comprime de modo a
permitir uma especialização deste neurónio. A idéia disto surgiu como consequência da tentativa de imitar a capacidade
plástica do cérebro, em que zonas neuronais inactivas são “recrutadas” para se juntarem a outras já activas.
Treinos de teste efectuados com esta implementação mostraram que a fase de compressão se processava de forma
semelhante aos casos artificiais (onde o chapéu é gradualmente comprimido). Apenas houve problemas para maior
número de padrões com neurónios com campos receptivos, bem como para a tentativa de re-treino duma rede onde se
retiram padrões. No primeiro caso, a organização era defeituosa e no segundo não havia uma re-organização total.
Mesmo assim, os resultados obtidos são bastante encorajadores, no sentido de se conseguir uma rede que treine duma
forma 100% autónoma e adaptativa.
Fig. Error! No text of specified style in document.-14 - Ilustração dum treino em que
uma das classes “recruta” os neurónios da classe que foi removida (padrão removido). Neste caso,
é o padrão “9” que é removido, e o padrão “3” que vai alargar a sua área sensível, após mais
algumas distorções nas zonas vizinhas.
8.4.4.4 Distinção sináptica
Por esta distinção, entende-se a capacidade do neurónio responder de formas diferentes a iguais níveis dos sinais
de entrada, conforme este provêm dumas ou de outras sinapses. Isto resolveria o problema gravíssimo dos neurónios
hiper-complexos responderem mesmo na presença duma só orientação. Mesmo não sabendo como é que esta distinção
se processa na realidade, poderíamos implementar uma distinção que exigisse que todas as sinapses estivessem activas
para que o neurónios pudesse disparar. Se estivessem apenas algumas activas (apenas uma orientação) o neurónio não
disparava. Para isso, bastava que todas as sinapses influissem a soma final através de factores multiplicativos. Assim,
uma sinapse inactiva (nula) tenderia a diminuir drásticamente o valor dessa soma.
Não seria biológicamente plausível implementar estes factores multiplicativos internamente ao neurónio, já que
este apenas soma as actividades que lhe chegam. Talvez essa distinção sináptica nem altere substancialmente o
funcionamento daquele. Em vez disso, poder-se-ia realizar algumas sinapses dendrite-dendrite que cumprissem funções
de activação dumas pelas outras. Por outras palavras, uma sinapse activava o caminho das outras e vice-versa, de forma
a bloquear a activação do neurónio em caso da presença de apenas uma orientação.
Dados conseguidos a partir da literatura, poderão-nos ajudar a conceber um mecanismo biológicamente
plausível, que implemente este comportamento selectivo sobre as dendrites. Um desses mecanismos até já foi observado
nos neurónios motores do caracol Aplysia [Eric R. Kandel, 1970] e descrito anteriormente. Nesse mecanismo, mostrouse a existência dum efeito de facilitação por parte duma dendrite cobre outra. De qualquer forma, parece-nos
absolutamente imperativa a implementação dum mecanismo deste género, para evitar o excesso de transparência dos
neurónios hiper-complexos (extractores de ângulos) a simples segmentos orientados. É necessário melhorar a
selectividade destes aos ângulos.
Para isto, o que fizémos foi simplesmente substituir a soma por uma multiplicação entre ligações. Não fizémos
nenhum treino da camada hiper-complexa para testar a hipótese de uma melhoria franca da organização desta, mas
concerteza que isto vai influenciar o treino, para melhor. Em vez disto, fixámos as ligações para a camada hipercomplexa da forma desejada, ou seja, apenas duas ligações não-nulas para cada neurónio hiper-complexo.
8.4.4.5 Aprendizagem contínua
8-43
Reconhecimento automático de caracteres
Córtex visual artificial
8-44
Seria interessante mas perigoso, permitir à rede uma aprendizagem contínua, enquanto vai classificando os
padrões que lhe apareçam. Isto permitiria possívelmente uma adaptação contínua da rede ao tipo de padrões que iam
surgindo ao longo do seu período de funcionamento, o que poderia eliminar o problema de não se terem certos padrões
mais desviados no conjunto de treino inicial. Sempre que aparecessem padrões com ângulos de tal forma estranhos que
não activassem nenhum neurónio, haveria essa possibilidade de pelo menos se adaptar de alguma forma à existência
desses ângulos.
O problema mais limitativos que se pôe nesta altura, é o do controlo automático da função de vizinhança. Como
se sabe, para que possa haver uma boa organização, esta função tem de expandir e depois comprimir. Ou se
implementaria algum mecanismo automático que fizesse isso, ou então este processo não funcionaria correctamente.
Esse mecanismo automático de vizinhança seria como se descreveu anteriormente.
8.4.5 Resultados finais
Vamos agora apenas apresentar alguns resultados mais importantes:
Fig. Error! No text of specified style in document.-15 - Actividades de saída da camada de saída, para posições diferentes dum mesmo
ângulo. As actividades maiores estão representadas com cor mais escura. Como se pode ver, o posicionamento duma feature dentro dum hipercampo receptivo origina posições diferentes para as actividades de saída.
8-44
Reconhecimento automático de caracteres
Córtex visual artificial
8-45
Fig. Error! No text of specified style in document.-16 - Actividades de saída para pedaços 12x12 de dígitos 32x32.
Fig. Error! No text of specified
style in document.-17 - Actividades de
saída da camada simples, após o processo de
enriquecimento de contraste. Além das
actividades normais para segmentos e
ângulos, também se pode ver que segmentos
curtos originam actividade abundante. As
actividades da camada complexa serão
apenas uma sub-amostragem das actividades
desta simples, pelo que nos escusamos a
mostrá-las. Note-se que o 3º padrão de teste
possui muitas features, o que originou a
chamada
featural
noise
supression
[Grossberg] onde as actividades iniciam
próximas umas das outras, ficando bastante atenuadas no fim do processo de enriquecimento de contraste.
Fig. Error! No text of specified
style in document.-18 - Actividades de
saída da camada hiper-complexa. Como se
vê, esta camada deixou de ser transparente
para os segmentos simples, detectando
correctamente os diferentes ângulos em
diferentes planos. As actividades da camada
de saída serão apenas pouco diferentes da
soma das actividades destes planos.
8-45
Reconhecimento automático de caracteres
Córtex visual artificial
8-46
8.4.6 Comentários e conclusões
Com a implementação desta hiper-coluna protótipo, pensamos ter atingido o principal objectivo, que era o de
implementar esta rede à imagem das redes biológicas e de verificar o seu funcionamento. No fundo, queriamos construir
uma rede que se assemelhasse o mais possível à real, e que também tivesse um funcionamento próximo do real. Note-se
como foi importante a implementação dum mecanismo de enriquecimento de contraste, para a resolução da maior parte
dos problemas observados no nosso córtex anteriormente “estático”. De facto, tem de se conferir uma certa capacidade
de auto-adaptação e dinamismo a estas redes neuronais extractoras de features.
No que se refere ao seu funcionamento, podemos distinguir o treino do chamamento simples. No que respeita à
plasticidade e à performance da regra de aprendizagem de Hebb, pensamos que os resultados foram muito bons.
Também ficamos muito satisfeitos pelo facto de se ter conseguido implementar um modelo com elevada plausibilidade
biológica e semelhança às hiper-colunas do córtex visual real. Não surgiram contradições que não se resolvessem
imediatamente, nem surgiram mecanismos aparentemente impossíveis de co-existirem (Ex: mecanismo de vizinhança e
de enriquecimento de contraste de actividade, são na realidade um só).
O passo seguinte consistirá na “filtragem” dos dígitos através da retina e deste nosso córtex visual, com a ajuda
do NetFlow do NeuroCAD , de forma a poder posteriormente classificar estes dados.
8.4.2 Aspecto final .............................................................................................................................................31
8.4.2.1 Estrutura............................................................................................................................................................... 31
8.4.2.2 Dados do NeuroCAD ........................................................................................................................................... 32
8.4.3 Testes e verificações finais........................................................................................................................32
8.4.3.1 Padrões desconhecidos......................................................................................................................................... 32
8.4.3.2 Opaquicidade a contornos indesejados ................................................................................................................ 34
8.4.3.3 Problemas observados.......................................................................................................................................... 34
8.4.3.3.1 Segmentos curtos que não sobrevivem na invariância da camada complexa................................................ 34
8.4.3.3.2 Falta de selectividade na camada hiper-complexa ........................................................................................ 35
8.4.3.3.3 Saturação da camada de saída....................................................................................................................... 36
8.4.3.3.4 Aprendizagem real defeituosa....................................................................................................................... 36
8.4.3.4 Limitações observadas ......................................................................................................................................... 37
8.4.3.4.1 Segmentos mínimos detectáveis na camada simples..................................................................................... 37
8.4.3.4.2 Contornos semelhantes e juntos são aglomerados pela camada complexa ................................................... 37
8.4.4 Melhoramentos .........................................................................................................................................38
8.4.4.1 Limiar adaptativo melhorado ............................................................................................................................... 38
8.4.4.2 Mecanismos de enriquecimento de contraste e auto-normalização ...................................................................... 38
8.4.4.3 Vizinhança automática......................................................................................................................................... 41
8.4.4.4 Distinção sináptica ............................................................................................................................................... 42
8.4.4.5 Aprendizagem contínua ....................................................................................................................................... 43
8.4.5 Resultados finais.......................................................................................................................................43
8.4.6 Comentários e conclusões ........................................................................................................................45
8-46
Reconhecimento automático de caracteres
Córtex visual artificial
8-45
8.5 Múltiplas hiper-colunas no NetFlow
Como já foi dito anteriormente, a hiper-coluna protótipo vai agora ser replicada de forma a se cobrir todo o
campo visual de 32x32 pontos, que é exactamente o tamanho dos caracteres a reconhecer. Tal como no caso biológico,
haverá um certo grau de sobreposição entre hiper-campos receptivos adjacentes. As razões já foram expostas aquando
do estudo do sistema visual.
No NeuroCAD, esta replicação será feita através de cópias virtuais da hiper-coluna protótipo já treinada, de
forma a cobrir todo o campo receptivo. O NeuroCAD vai-se limitar a manter uma cópia da hiper-coluna em memória,
colocando o seu hiper-campo receptivo nas várias zonas da retina, de forma dinâmica durante cada chamamento
(recall). Assim poupa-se memória que iria suportar informação neuronal redundante, além de ocupar quase toda a
memória disponível num PC médio.
8.5.1 Parâmetros arquitecturais
Para cobrir o campo visual de 32x32, resta saber quantas hiper-colunas serão necessárias. Para isso, temos duas
hipóteses potencialmente implementáveis:
• 4x4 hiper-colunas, o que prefaz um total de 16 hiper-colunas distribuídas pelo campo visual, com um grau
de sobreposição igual ao encontrado no sistema visual biológico de mamíferos: 50% de sobreposição. Por outras
palavras, cada hiper-coluna sobrepunha-se em metade das adjacentes.
• 3x3 hiper-colunas, o que prefaz um total de 9 hiper-colunas distribuídas pelo campo visual, com
sobreposição já menor e igual a 2 pontos apenas (16.7%). Esta hipótese peca pela razão de não cobrir espaços
intermédios, o que dificulta ou mesmo impossibilita a detecção de certos ângulos. Este problema foi exposto durante o
estudo da visão biológica.
As exigências de memória para estas hipóteses seriam as seguintes:
Cópias reais
Cópias virtuais
Nº de cópias
1
3x3
4x4
Qualquer número
Memória de
Pesos
Memória do
NeuroCAD
312
KByte
2.2 MByte
2.7 MByte
4.9 MByte
312 KByte
Tab. 8.5-1 - Quantidades de memória
necessárias à implementação das réplicas da
hipe-coluna protótipo. O mecanismo de cópias
virtuais oferecido pelo NeuroCAD é óbviamente
19.8 MByte
35.2
MByte
2.2 MByte +
Control table1
o escolhido, mesmo que isso implique uma maior
complexidade interna do NeuroCAD durante a
fase de concepção deste. Estes dados são
referentes ao córtex visual sem mecanismos STM. Com esses mecanismos, o nosso córtex (hiper-coluna) ocupava cerca de 7 MByte.
Devido ao problema da segunda hipótese, e por estar fora de causa utilizar mais do que uma sobreposição de
50% (o que originaria hiper-colunas redundantes), vamos implementar a primeira hipótese que utiliza 4x4 hiper-colunas.
1
Para saber onde serão colocados os campos receptivos de cada hiper-coluna, o NeuroCAD tem de guardar uma tabela com as coordenadas
dessas posições, além de outros dados internos ao NeuroCAD. Esta tabela não ocupa espaço, quando comparada com a memória já ocupada pela
rede.
8-45
Reconhecimento automático de caracteres
Córtex visual artificial
8-46
Em princípio, esta implementação vai ocupar 312 Kbytes para pesos, mais os 2.2 Mbyte para a gestão dos objectos no
NeuroCAD.
Fig. 8.5-1 - Em cima mostram-se ampliações de dois e três hiper-campos
receptivos, para os casos de 3x3 e 4x4 campos, respectivamente. Isto é para tornar
clara a extensão da sobreposição em cada caso. Em baixo mostram-se as disposições
finais dos hiper-campos pelo campo visual de 32x32 de entrada. No caso de 3x3
nota-se perfeitamente a insuficiência da cobertura para certos ângulos, enquabto que
no caso de 4x4 já se consegue uma cobertura adequada.
Esta estrutura de 4x4 hiper-colunas vai resultar num número
total de saidas igual a:
(Nº de saídas por hiper-coluna) X (Nº de hiper-colunas) =
16 x 16 = 256.
Estas saídas seguirão, finalmente, para as instâncias superiores que farão pós-processamentos e a classificação
própriamente dita. Posto de outra forma, a imagem de entrada com 32x32=1024 pontos, foi reduzida para um nível de
abstração com apenas 16x16=256 pontos. Esse nível de abstracção representa o espaço de features ângulares.
Fig. 8.5-2 - Desenho esquemático da estrutura das 16 hiper-colunas e
suas respectivas saídas ordenadas num mapa de 16x16. Esta estrutura de 4x4
hiper-colunas é mantida e manuseada pelo NetFlow do NeuroCAD. Note-se, mais
uma vez, que apenas existe uma cópia duma hiper-coluna em memória, sendo as
entradas posicionadas no sítio certo duma forma dinâmica e totalmente
transparente ao utilizador. Durante um chamamento da rede total constituída por
esta hiper-colunas virtuais, o NetFlow faz chamamentos desta hiper-coluna com o
seu hiper-campo receptivo posicionado de forma sequencial sobre todo o campo
visual de 32x32, armazenando os sucessivos mapas de saída (4x4 saídas de
neurónios hiper-complexos) num mapa global de 16x16 saídas. Estas 256 saídas
serão agora usadas para treinar uma rede do tipo backpropagation. Note-se que as
saídas que correspondem a hiper-campos receptivos 50% sobrepostos, possuem
redundância e poderia-se pensar num esquema de sobreposição destas.
8-46
Reconhecimento automático de caracteres
Córtex visual artificial
8-47
8-47
Reconhecimento automático de caracteres
Pós-processamento e classificação
9-1
9. Pós-processamento e classificação
Esta será a parte final do sistema de classificação, bem como objectivo final de todo o trabalho. Até
aqui, construímos redes que tinham funções de tratamento primário dos estímulos de entrada do sistema.
Agora vamos detalhar uma parte não mais nem menos importante, e que terá a função da análise e
classificação daqueles dados já apropriadamente codificados.
9.1 Introdução
A implementação dum classificador, bem como dum eventual bloco de pré-processamento, é um
trabalho muito exigente e complexo, se estivermos interessados em obter um sistema global bastante
eficiente. Nesta eficiência, poderíamos englobar a parcela da optimização e adaptação desse classificador
aos andares que o precedem (córtex visual), e a potencialidade em termos de resolver invariâncias de
rotação, translação e deformação. Em princípio, poderíamos pensar em realizar um simples classificador do
tipo perceptrão multi-camada, treinado pelo algoritmo da retropropagação do erro. Mas isso iria significar um
aproveitamento pouco eficaz dos dados postos à disposição do classificador, já que sabemos que este tipo
de classificador olha duma forma estritamente vectorial para as suas entradas. Assim, estar-se-ia a subaproveitar a informação espacial fornecida pelo córtex visual.
Em vez do tipo de classificador clássico como o anteriormente proposto, estavamos a pensar mais
numa rede com uma topologia semelhante às memórias STM e LTM (incluídas na teoria ART) explicadas
por Grossberg [1989]. Estas redes possuem algumas características que nos fazem imaginar alguns
mecanismos que, associados a propriedades de outros modelos de redes, podem originar uma
implementação biológicamente plausível para o classificador, além de possuirem características altamente
eficientes. Interessa-nos talvez mais as propriedades das redes LTM, já que as das STM pode ser
directamente incluída no córtex visual, tal como já foi explicado aquando da exposição deste.
9.2 Ideias e teorias
A este nível avançado da tentativa de modelizar as partes mais complexas do cérebro, que se situam
nas zonas da memórias associativa ou LTM, não temos informação suficiente para poder dizer qual o
funcionamento exacto dessas zonas. Actualmente, apenas temos informação sobre o funcionamento global
(psicologia) e local (neurofisiologia) dessas zonas. As primeiras, são informações psicológicas de “alto nível”
em que apenas se sabe descrever os comportamentos do cérebro aos diversos estímulos, através de
experiências como aquelas que tentavam descobrir a forma de armazenamento dos dados visuais no
cérebro [David Noton e Lawrence Stark, 1975]. As segundas, referem-se a funcionamentos a nível do
neurónio, onde já se conseguiu contruir teorias bastante complexas e completas [Grossberg e Kuperstein,
1989].
A dificuldade reside na relação daquelas duas fontes de informação, na medida em que não se sabe
ao certo como é que a primeira origina a segunda. Assim, vamos aqui proceder à exposição de algumas
ideias nossas, algumas aparentemente irrealizáveis de imediato mas que contêm pontos-chave necessários
a um sistema biológicamente/psicológicamente plausível e eficiente. Os aspectos da plausibilidade biológica
9-1
Reconhecimento automático de caracteres
Pós-processamento e classificação
9-2
centram-se no nível do neurónio e suas ligações, enquanto que a plausibilidade psicológica se refere ao “alto
nível” dos comportamentos globais do cérebro.
As nossas ideias vão centrar-se na resolução dos problemas da invariância de translação, rotação,
deformação e tamanho. O problema da invariância de rotação será provavelmente o mais complexo de
todos, enquanto que o da translação será talvez o mais simples.
As várias ideias-chave que se seguem, serão mais ou menos específicas para a resolução eficiente
de cada problema, sendo todas elas eventualmente integradas na mesma rede final de classificação. Mais
uma vez chamamos a atenção para o facto de que nos vamos basear em informações psicológicas e
biológicas [Grossberg], durante o desenvolvimento dessas ideias.
9.2.1 Exemplo de capacidade de auto-procura
A ideia que surgiu para a implementação duma rede destas, baseia-se nas memórias associativas
temporais (TAM - Associative Temporal Memory). Estas possuem a propriedade de produzirem uma saída
que depende da entrada e das sequências a que foram submetidas durante a fase de aprendizagem. No
fundo, trata-se dum funcionamento semelhante às LTM (memórias associativas), que são capazes de
executar processos de reconhecimento através do despelotar dum acompanhamento temporal das
informações que lhe vão chegando. Ou seja, estas redes possuem uma sequência temporal de saída que é
determinada pela sequência da sua própria aprendizagem. Tudo isto já foi explicado anteriormente, e está
documentado por Grossberg [1982] e Grossberg & Kuperstein [1989].
Uma rede destas, com algumas modifiações e constrangimentos, poderia ter um funcionamento tal
que a apresentação dum padrão deformado, transladado e até rodado poderia gerar uma auto-procura que
fosse parar num padrão correcto. Este funcionamento implicaria uma aprendizagem especial.
Para que uma rede destas pudesse possuir um funcionamento como o descrito, teriamos de proceder
a uma aprendizagem que tivesse isso em conta. Por outras palavras, teríamos de apresentar sequências
temporais de padrões que permitissem à rede funcionar de modo semelhante durante a fase de
chamamento (recall).
Fig. 9-1 - Exemplos de sequências
de
treino
capacitar
que
uma
poderão
rede
eventualmente
associativa
de
reconhecer padrões deformados, através
de actividades sucessivas que levem a um
estado final armazenado e conheido.
No fundo, o que pensamos que aconteceria durante a fase de aprendizagem, seria que as ligações
forward e de realimentação ficariam com valores tais que originam esta procura automática por parte da
rede, em que esta tenderia para um certo padrão de actividade de saída já aprendido, após a apresentação
dum padrão de entrada. Este fenómeno interessante é profundamente analisado em Grossberg [1982] e
Grossberg & Kuperstein [1989], sendo implementado um processo semelhante nas redes ART (Adaptive
Resonance Theory) onde há uma convergência de padrões em duas camadas até que se estabeleça uma
espécie de ressonância entre elas, fixando o padrão reconhecido a partir dos já aprendidos.
Isto é só um exemplo das capacidades que se poderiam eventualmente conferir a uma rede.
9-2
Reconhecimento automático de caracteres
Pós-processamento e classificação
9-3
9.2.2 Exemplo de associação a um gerador de saccades
Associando o sistema classificador a um gerador saccádico, cria-se um sistema global muito mais
poderoso já que seria capaz de procurar os pontos importantes no padrão de entrada, numa caixa ainda
maior. Desta forma ser-se-ia capaz de reconhecer padrões que possuem features muito pequenas e
grandes simultâneamente. Além disso, também resolveria o problema de na fóvea não existirem hipercampos receptivos grandes, criando um sistema capaz de detectar qualquer ângulo em qualquer sítio do
campo visual. Além disto tudo, também se poderiam incluir circuitos neuronais extra, que permitissem já um
reconhecimento totalmente automático duma linha de caracteres, separando-os internamente com a ajuda
do gerador sacádico que posicionaria a fóvea nas zonas conveniente.
A leitura dum texto multi-linha já seria lago mais complicado, já que o gerador de saccades devia
saber que tem de terminar uma linha antes de passar à seguinte. Ainda por cima, neta passagem, ter-se-ia
de começar sempre do início duma frase. Um sistema destes já exige circuitos neuronais muito mais
complexos e autónomos.
Fig. 9-2 - Ilustração das capacidades dum sistema contendo um
gerador de saccades, na leitura dum texto completo. Em cima mostram-se as
possíveis primeiras posições em cada linha. No meio mostram-se as
possíveis primeiras posições para cada caracter. Em baixo mostram-se a
possível sequência gerada pelo gerador sacádico, para um caracter.
Teriamos assim três níveis de geração saccádica, cada um com uma
complexidade resultante maior. Para que tudo isto funcionasse, ter-se-ia de
implementar mecanismos cada vez mais complexos, que fossem capazes de
1
gerir níveis de abstracção saccádica também crescentes.
9.3 Resultados prácticos
Como já foi dito no capítulo anterior, vamos apenas implementar o classificador, que será uma rede
perceptrão multi-camada treinada com a retropropagação do erro. Esta rede será ainda do tipo OCON, tal
como no estudo feito num capítulo anterior, apenas com 4 neurónios na camada escondida. O aumento do
nº de neurónios ou de camadas não se mostrou minimamente proveitoso. Desta forma, o treino é rápido e
pouco complicado. Mas para o classificador final funcionar, tem de se usar uma MAXNET à saída das 10
redes OCON, para se determinar a saída maior que será tomada como a classificação final do dígito
presente na retina.
Ao todo, serão 140 padrões filtrados pelo nosso córtex visual, 70 a servirem para treino e outros 70
para teste, tirados de 9 pessoas diferentes. Num processador 486-33Mhz, o tempo de filtragem de um dígito
era de cerca de 8min. Um classificador eficiente teria de ser, por isso mesmo, implementado em hardware.
1
Com este termo, queremos dizer que uma linha é mais abstracta do que um caracter, em termos saccádicos. Por outras
palavras, o gerador saccádico tem de poder distinguir níveis diferentes de abstracção.
9-3
Reconhecimento automático de caracteres
Pós-processamento e classificação
9-4
Na fase de treino, chegava-se sempre aos 100% de aprendizagem. Na fase de teste é que havia
muitos dígitos mal classificados. o “7” confundia-se com o “1” e vice-versa, o “4” com o “9”, etc. Havia dígitos
que chegavam aos 62.5% (5 em 8) de classificação correcta (Ex: “0”), enquanto que outros apenas
chegavam, aos 25% ou nem tanto.
O resultados obtidos por este classificador não são bons, possuíndo a particularidade de serem maus
quase sempre para as mesmas pessoas, isto é, o classificador falhava duma forma bastante determinística.
Aumentando o nº de padrões e incluíndo rotações destes, estamos convencidos de que se obterão
melhorias consideráveis. De qualquer forma, pensamos que com a implementação dos mecanismos de
reconhecimento propostos no início deste capítulo e com algumas correcções no nosso córtex visual, este
sistema poderia tornar-se bastante eficiente. Esta eficiência podia-se traduzir tanto em nº de padrões
necessários ao treino, bem como na capacidade de generalização. No fim, o backpropagation foi um “teste
rápido” às saídas do nosso sistema que, por falta de tempo não chegou a possuir um classificador como nós
queríamos implementar. Pensamos que o backpropagation será, mais uma vez, algo incompatível com a
natureza dos dados de saída deste sistema (estímulos posicionais relacionados vs. vectores).
9.4 Fontes para trabalho futuro
Como o tempo não nos permitiu a implementação dum sistema de classificação, vamos aqui apenas
deixar as fontes que consideramos importantes e de leitura indispensável (algumas). Algumas destas fontes
até discutem sistemas de associação mais complexa e até aspectos de reconhecimento de formas mais
completas (palavras e sons).
• [Carpenter & Grossberg, 1988] - “ART2: Self-organization of stable category recognition codes for
analog input patterns”, Applied Optics 26:4919-4930.
• [Carpenter & Grossberg, 1988] - “The ART of adaptive pattern recognition by self-organizaing
neural network”, Computer 21:77-88.
• [Changeux, J.P.; Heidmann, T.; Patte, P., 1984] - “Learning by selection”, The Biology of Learning,
P.Marler and H.S.Terrace (Eds.), Berlin: Springer-Verlag, pp.115-133.
• [Edelman, G.M.; Finkel, L.H., 1984] - “Neuronal group selection in the cerebral cortex”, Dynamic
aspects of neocortical function, New York: Wiley-Interscience, pp.653-695.
• [Fukushima, 1983] - “Neocognitron: a neural network model for a mechanism of visual pattern
recognition”, IEEE Transactions on Systems, Man and Cybernetics SMC-13:826-834.
• [Fukushima, 1988] - “A neural network for visual pattern recognition”, IEEE Computer, March.
• [Grossberg, 1976] - “Adaptive pattern classification and universal recoding: I. Parallel development
and coding of neural feature detectors”, Biological Cybernetics 23:121-134.
• [Grossberg, 1980] - “How does the brain build a ognitive code?”, Psycholog. Review 87:1-51.
• [Grossberg, 1982] - “Studies of mind and brain - neural principles of learning, perception,
development, cognition and motor control”; BSPS - Boston Studies in the Philosophy of Science vol.70,
D.Reidel Publishing Company.
• [Grossberg & Kuperstein, 1989] - “Neural dynamics of adaptive sensory-motor control”, Pergamon
Press.
• [Kosko, B., 1988] - “Bidireccional associative memories”, IEEE Trans. on Systems, Man and
Cybernetics 18:49-60.
• [McClelland & Rumelhart, 1981] - “An interactive activation model of context effects in letter
perception: part 1. An account of basic fundings”, Psychological Review 88:375-407.
• [Nakano, K., 1972] - “Associatron - a model of associative memory, IEEE Trans. on Systems, Man,
and Cybernetics SMC-12:380-388.
9-4
Reconhecimento automático de caracteres
Pós-processamento e classificação
9-5
• [Pearson, J.C.; Finkel, L.H.; Edelman, G.M., 1987] - “Plasticity in the organization of adult cerebral
cortical maps: a computer simulation based on neuronal group selection”, The Journal of Neuroscience
7:4209-4223.
• [Skarda, C.A.; Freeman, W., 1987] - “How brains make chaos in order to make sense of the world”,
Behavioral and Brain Sciences 10:161-195.
• [Srinivasa, 1993] - "An Invariant Pattern Recognition Machine Using a Modified ART Architecture";
IEEE Transactions On Systems, Man, and Cybernetics, Vol.23, nº5, September/October.
Destas fontes, aquelas cuja leitura cuidadosa consideramos absolutamente indispensáveis, são todas
as fontes que mencionem o nome de Grossberg ou que mencionem a rede ART - Adaptive Resonance
Theory. Estes serão os nossos pilares para o eventual trabalho futuro. Note-se que as possibilidades e
hipóteses de implementações são muito extensas, exigindo um estudo detalhado e cuidadoso. Isto exige
também bastante tempo, o qual já não deu para passar à implementação práctica.
9-5
Reconhecimento automático de caracteres
Pós-processamento e classificação
9-6
9-6
APÊNDICES
Reconhecimento automático de caracteres
Base de dados dos caracteres
A-1
A. NIST Base de dados dos caracteres
A.1 Base de dados fl3
A distribuição de caracteres isolados chamada "fl3" contém no total 3,471 de 49 escritores diferentes. Esta
distribuição requere aproximadamente 4.5 Megabyte de armazenamento de massa. Estes caracteres foram normalizados
espacialmente para ser 32X 32 pixels. Há 49 sub-directorias num directório "data" desta distribuição, correspondendo a
cada um dos 49 escritores. Estes nomes das directorias e portanto estes escritores, foram retirados directamente da
"NIST Special Database 1". Nenhuma das files distribuida em "fl3" foi comprimida.
Em cada sub-directório de cada escritor, há dez directórios de dígitos "30 até 39". Estes valores correspondem
aos valores hexadecimais ASCII associados a cada classe de dígitos. Por exemplo, todos os caracteres isolados do
dígito "4", contribuidos pelo escritor "0001", são encontrados no directório "./data/f0001_41/34. As imagens dos
caracteres têm como nome 99_888.pct, onde 99 refere o tipo de classe da imagem e 888 refere a um índice de
ocorrência, identificando cada imagem na directoria da classe.
Cada ficheiro de caracter, tem um header em ASCII que contém informação incluindo o tipo de classe
encontrado no campo de "ID" delimitado por aspas, a resolução resultante da imagem após normalização espacial, e de
que formulário e caixa o caracter foi extraido da "NIST Special Database 1".
A.1.1 Características
Foi usada, a base de dados "fl3", extraída da "NIST Special Database 1" com pequenas modificações.
As imagens dos caracteres, foram covertidas do formato *.pct (32x32 monocromático) para *.bmp (32x32
monocromático).
Os ficheiros dos caracteres passaram a ter como nome, xx99_888.bmp, onde xx representa o número do escritor
(entre 1 a 49), 99 representa o tipo de classe da imagem (valor em ASCII hex) e 888 refere a um índice de ocorrência do
caracter. Esta mudança de nome, teve como propósito, conceder uma identificação única a cada ficheiro, o que não
ocorria anteriormente.
A-1
Reconhecimento automático de caracteres
Hardware, programas e bibliotecas
B-1
B. Hardware, Programas e bibliotecas
B.1 Hardware
Este Hardware foi utilizado para a implementação do simulador de redes neuronais artificiais NeuroCAD, bem
como para as respectivas simulações e realizações dos relatórios, em ambos os computadores.
PC-AT 486-33MHz com monitor Super-VGA 800x600x256 cores e 16MB de RAM.
PC-AT 286-12MHz com monitor VGA 640x480x16 cores e com 2MB de RAM.
B.2 Programas e bibliotecas
Estes programas foram utilizados para a contrução do simulador NeuroCAD e para as diversas rotinas necessárias
esporádicamente para operações de pré-processamento e conversão de imagens. Também foram utilizadas algumas
bibliotecas que continham implementações de várias estruturas de objectos, donde tirámos ideias e aplicações.
ARD CORPORATION
[1993] - “Propagator 1.0”, folheto de publicidade.
BORLAND INTERNATIONAL
[1993] - “Turbo Pascal 7.0 for DOS”.
[1993] - “OWL - Object Windows Library 1.0 for Turbo Pascal”.
[1993] - “Turbo Pascal 1.5 for Windows”.
[1994] - “Borland C++ 4.0”.
[1994] - “OWL - Object Windows Library 2.0 for C++”.
EXPERT INFORMATIK
[1990] - “Netzwerk - Simulator”, (incluído no livro de SHÖNEBURG, E., 1990).
KULZER, P. & BRANCO, A.
[1994] - “NeuroCAD - Neural Network CAD-Workshop for Windows”, Universidade de Aveiro.
MICROSOFT
[1993] - “Microsoft Windows 3.1”.
B-1
Reconhecimento automático de caracteres
Bibliografia e Referências
C-1
C. Bibliografia e Referências
C.1 Bibliografia
Esta bibliografia foi extensivamente utilizada para a elaboração de todos os aspectos do nosso trabalho. Alguns
livros constituíram as bases, enquanto que outros eram apenas tidos como referências para problemas ou casos pontuais.
BAIRD, B. [1990] - "Associative Memory in a simple model of oscillating Cortex", NIPS - Neural Information
Processing Systems vol2.
GRAY, P.R.; MEYER, R.G. [1993] - “Analysis and design of Analog Integrated Circuits”, John Wiley & Sons,
Inc., third edition.
GROSSBERG, S. [1982] - “Studies of mind and brain - neural principles of learning, perception, development,
cognition and motor control”, BSPS - Boston Studies in the Philosophy of Science vol.70, D.Reidel Publishing
Company.
GROSSBERG, S. e KUPERSTEIN, M. [1989] - “Neural dynamics of adaptive sensory-motor control”,
Pergamon Press.
HOGAN, T. [1991] - “The programmer’s PC sourcebook”, Microsoft Press.
KANDEL, E. e SCHWARZ, J. [1985] - “Principles of neural science”, New York, Elsevier publishing.
KUNG, S.Y. [1992] - “Digital Neural Networks”, PTR Prentice Hall.
KOCK, D. ; HOLMES, P. [1990] - "Collective Oscilations in the Visual Cortex", NIPS - Neural Information
Processing Systems vol2.
KÖHLE, M. [1990] - “Neuronale Netze”, Springer-Verlag - Wien / New York.
LAWRENCE, J. [1992] - “Neuronale netze, computersimulation biologischer intelligenz”, Systhema Verlag.
MC CLELLAND, J. e RUMELHART, D. - " Parallel Distributed Processing", Vol 2, Mit Press.
METZLER, J. [1977] - “Systems neuroscience”, Academic press, New York.
MICROSOFT [1991] - “Microsoft Windows 3.1 - Guide to programming”, Microsoft Press.
[1991] - “Microsoft Windows 3.1 - Programming tools”, Microsoft Press.
[1991] - “Microsoft Windows 3.1 - Programmer’s reference vol. 1,2,3,4”, Microsoft Press.
MURATA, T. ; SHIMIZU, H. [1993] - "Oscillatory binocular system an temporal segmentation os stereoscopic
depth surfaces", Biological Cybernetics 68:381-391.
PALMER, S.D. [1992] - “Programmer’s introduction to Turbo Pascal for Windows”, Sybex.
PORTER, A. [1993] - “C++ Programming for Windows,” Osborne, McGraw Hill
RUBENKING, N.J. [1991] - “Turbo Pascal 6.0, techniques and utilities”, Ziff-Davis Press.
[1992] - “Turbo Pascal for Windows, tehniques and utilities”, Ziff-Davis Press.
SOMERS,D. [1993] - "Rapid Synchronization through fast threshold modulation", Biological Cybernetics
68:393-407.
SHÖNEBURG, E.; HANSEN, N.; GAWELCZYK, A. [1990] - “Neuronale netzwerke, einführung, überblick
und anwendungsmöglichkeiten”, Markt&Technik.
THOMPSON, R. - "Psicologia Fisiológica", Scientific America.
TOURETZKY, D.; REDISH, A.; WAN, H. [1993] - "Neural Representation of Space using Sinusoidal
Arrays", Neural Computation, Vol. 5, Number 6, November.
WILSON, C.; GARRIS, M. - "Handprinted Character Database", National Institute of Standards and
Technology; Advanced Systems Division
C-1
Reconhecimento automático de caracteres
Bibliografia e Referências
C-2
C.2 Referências
Estas referências constituíram uma valiosa ajuda para os casos pontuais que iam surgindo ao longo de todo o
trabalho, no que se refere à implementação do córtex visual artificial e dos seus acessórios. Algumas destas referências
podem ser também encontradas em livros dos respectivos autores, bem como em compilações como as Neurocomputing
1 e 2.
ADRIAN, E.D.; CATTEL, M.; HOAGLAND, H. [1931] - “Sensory discharges in single cutaneous nerve
fibres”, J. Physiol. 72:25, London.
ALBRIGHT, T.D. [1984] - “Direction and orientation selectivity of neurons in visual area MT of the macaque”,
J. Neurophysiol. 52:1106-30.
ALBRIGHT, T.D; DESIMONE, R.; GROSS, C.G. [1984] - “Columnar organization of directionally selective
cells in visual area MT of the macaque”, J. Neurophysiol. 51:16-31.
ALSPECTOR, J.; GUPTA, B.; ALLEN, R.B. [1989] - “Performance of a stochastic learning microchip”,
NIPS - Neural Information Processing Systems vol.1, Morgan Kaufmann Publ.
ANDERSON, J., PELLIONISZ, A. e ROSENFELD, E. [1988] - “Neurocomputing - Foundations of
research”, MIT Press
[1990] - "Neurocomputing 2, directions for research", The MIT Press.
ARBIB, M. e ROBINSON, J. - "Natural and artificial parallel computation", The Mit Press.
BALDI, P.; CHAUVIN, Y. [1993] - “Neural networks for fingerprint recognition”, Neural Computation 5:402418, Massachusetts Institute of Technology.
BALLARD, D.H. [1989] - “Behavioural constrains on animate vision”, Image and Vision Computing, vol.7,
no.1.
BARLOW, H.B. [1960] - “The coding of sensory messages”, in Current Problems in Animal Behaviour, Eds.
W.H.Thorpe, O.L.Zangwill (Cambridge University Press, Cambridge), pp.331-360.
[1972] - “Single units and sensation: a neuron doctrine for perceptual psychology?”, Perception 1:371-394.
BARRANCO, L.B.; SINENCIO, E.S.; VÁZQUEZ, A.R. [1993] - “A CMOS analog adaptive BAM with onchip learning and weight refreshing”, IEEE Transactions on Neural Networks, Vol.4, N.3, May.
BELL, C.; SIERRA, G.; BUENDIA, N.; SEGUNDO, J.P. [1964] - “Sensory properties of units in
mesencephalic reticular formation”, J. Neurophysiol. 27:961.
BELL, T. [1988] - “Learning in higher-order ‘artificial dendritic trees’”, NIPS - Neural Information Processing
Systems vol.1, Morgan Kaufmann Publ.
BIENENSTOCK, E.L.; COOPER, L.N.; MUNRO, P.W. [1982] - “Theory of the development of neuron
selectivity: orientation specificity and binocular interaction in visual cortex”, J. Neuroscience 2:32-48.
BIZZI, E. [1968] - “Discharge of frontal eye field neurons during saccadic and following eye movements in
unanesthetized monkeys”, in Brain Res., VI:69.
BIZZI, E. e P.H.SCHILLER [1970] - “Single unit activity in the frontal eye fields of unanesthetized monkeys
during eye and head movementes”, in Exp. Brain. Res., X:151.
BLAKEMORE, C.; MITCHELL, D.E. [1973] - “Enviromental modification of the visual cortex and the neural
basis of learning and memory”, Nature, 241:467-468.
BRAS, H., GOGAN, P. e TYC-DUMONT, S. [1987 ]- “The mammalian central neuron is a complex
computing device”, In IEE Neural Network Conference, July 1987, Vol.4-123, Piscataway, New Jersey.
BRAULT,J;PLAMONDON,R. [1993] - "Segmenting Handwritteen Signatures at Their Perceptually Important
Points", IEEE Transactions of Pattern Analysis and Machine Inteligence, Vol. 15, nº9, September.
BROMLEY,J;DENKER,J [1993] - "Improving Rejection Performance on Handwritten Digits by Training
with ‘Rubbish’", Neural Computation 5.
BROWN,K.T. [1947] - “Physiology of the retina”, in V.B.Moutcastle, Medical Physiology, 13ªed., St.Louis,
Mosby, I:458-96.
C-2
Reconhecimento automático de caracteres
Bibliografia e Referências
C-3
BROWN, T.H.; CHAPMAN, P.F; KAIRISS, E.W.; KEENAN, C.L. [1988] - “Long-term synaptic
potentiation”, Science 242:724-728.
BROWNLOW, M.; TARASSENKO, L.; MURRAY, A.F.; HAMILTON, A.; REEKIE, H.M. [1990] “Pulse-firing neural chips for hundreds of neurons”, NIPS - Neural Information Processing Systems vol.2, Morgan
Kaufmann Publ.
CARPENTER, G.A.; GROSSBERG, S. [1988] - “The ART of adaptive pattern recognition by self-organizaing
neural network”, Computer 21:77-88.
CARREIRA, J.P.A. [1993] - “Circuitos com processamento de corrente para conversão analógico-digital e
digital-analógico de sinais de alta frequência”, Tese de Mestrado, Instituto Superior Técnico da Universidade Técnica
de Lisboa.
CHIUEH, T.D.; GOODMAN, R.M. [1990] - “VLSI implementation of a high-capacity neural network
associative memory”, NIPS - Neural Information Processing Systems vol.2, Morgan Kaufmann Publ.
CHOI, J.; BANG, S.H.; SHEU, B. [1993] - “A programmable analog VLSI neural network processor for
communication receivers”, IEEE Transactions on Neural Networks, Vol.4, N.3, May.
COLLET [1986] - "Landmark learning and visuospatial memories in gerbils", J.Comp.Physiol.A 158, 853-851.
DELBRÜCK, T.; MEAD, C.A. [1989] - “An electronic phototreceptor sensitive to small changesin intensity”,
NIPS - Neural Information Processing Systems vol.1, Morgan Kaufmann Publ.
DEWEERTH, S.P.; MEAD, C.A. [1990] - “An analog VLSI model of adaptation in the vestibulo-ocular
reflex”, NIPS - Neural Information Processing Systems vol.2, Morgan Kaufmann Publ.
DI ZENSO,S; DEL BUONO,M; MEUCI,M.; SPIRITO,A. [1992] - "Optical recognition of hand-printed
characters of any size, position, and orientation", IBM J. Res. Development, vol. 36 nº3, May.
DOW, B.M.; DUBNER, R. [1969] - “Visual receptive fields and responses to movement in as association area
of cat cerebral cortex”, J. Neurophysiol. 32:773.
ENGEL [1986] - "Direct physiological evidence for scene segmentation by temporal coding", Proc. Natl. Acad
Sci. USA 88:9136-9140.
ERICKSON, R.P. [1974] - “Parallel ‘population’ neural coding in feature extraction”, in F.O. Schmitt and F.G.
Worden (eds.), The Neurosciences, Third Study Program, p.155. MIT Press, Cambridge, Mass.
ESBÉRARD, CHARLES A. [1980] - “Neurofisiologia”, Editora Campus - Rio de Janeiro.
FORT, J.C. [1988] - "Solving a Combinatorial Problem via Sel-Organizing Process: An aplication of the
Kohonen Algorithm to the Traveling Salesman Problem", Biol.Cybern. 59, 33-40.
FUKUSHIMA, K. [1988] - “A neural network for visual pattern recognition”, IEEE Computer, March.
FUKUSHIMA, K.; MIYAKE, S.; ITO, T. [1983] - “Neocognitron: a neural network model for a mechanism of
visual pattern recognition”, IEEE Transactions on Systems, Man and Cybernetics SMC-13:826-834.
FUKUSHIMA, K.; WAKE, N. [1991] - “Handwritten alphanumeric character recognition by the
neocognitron”, IEEE Transactions on Neural Networks, Vol.2, Nº3, May.
GARRIS, M.D.; WILKINSON, R.A; WILSON, C.L. [1991] - “Analysis of a biologically motivated neural
network for character recognition”, Proceedings: Analysis of Neural Network Applications, ACM Press, George Mason
University, May.
GORDON, B. [1973] - Receptive fields in deep layers of ccat superior colliculuis”, J. Neurophysiol. 36:157.
GRAF, H.P.; JACKEL, L.D. [1989] - “Analog electronic neural network circuits”, IEEE Circuits and Devices,
pp.44-55.
GROSS, C.G.; BENDER, D.B.; ROCHA-MIRANDA, C.E. [1969] - “Visual receptive fields of neurons in
infero-temporal cortex of the monkey”, in Science, CLXVI:1303.
[1972] - “Visual properties of neurons in inferotemporal cortex of the macaque”, J. Neurophysiol. 35:96.
GROSSBERG, S. [1976] - “Adaptive pattern classification and universal recoding: I. Parallel development and
coding of neural feature detectors”, Biological Cybernetics 23:121-134.
[1980] - “How does the brain build a ognitive code?”, Psycholog. Review 87:1-51.
HAAS, H.L.; JEFFREYS, J.G.R. [1984] - “Low calcium field burst discharge of CA1 pyramidal neurons in rat
hippocampal slices”, J. Physiol. 354:185-201.
C-3
Reconhecimento automático de caracteres
Bibliografia e Referências
C-4
HARRIS, J.G. [1989] - “An analog VLSI chip for thin-plate surface interpolation”, NIPS - Neural Information
Processing Systems vol.1, Morgan Kaufmann Publ.
HARTSTEIN, A.; KOCH, R.H. [1989] - “A self-learning neural network”, NIPS - Neural Information
Processing Systems vol.1, Morgan Kaufmann Publ.
HECHT, S.; SHLAER, S.; PIRENNE, M. [1942] - “Energy, quanta, and vision”, J. Cen. Physiol. 25:819-840.
HELD, R. [1968] - “Dissociation of visual functions by deprivation and rearrangemente”, in Psychol. Forschung,
XXXI:338.
HIRSCH, H.V.B.; SPINELLI, D.N. [1970] - “Visual experience modifies distribution of horizontally and
vertically oriented receptive fields in cats”, Science, 168:869-871.
[1971] - “Modification of the distribution of receptive field orientation in
cats by selective visual exposure during development”, Exp. Brain Res. 13:509-527.
HOFFMANN, K.P. [1970] - “Retinotopische Beziehungen und Strukture rezeptiver Felder im Tectum opticum
und Praetectum der Katze”, Z. Vergl. Physiol. 67:26.
HSIEH, K; CHEN,W. [1993] - "A Neural Network Model Wich Combines Unsupervised and Supervised
Learning", IEEE Transactions on Neural Networks, Vol.4, Nº2, March.
HUBEL D.H.; T.N.WIESEL
[1959] - “Receptive fields os fingle neurons in the cat’s striate cortex”, in J.Physiol., London, CXLVIII.
[1961] - “Integrative action in the cat’s lateral geniculate body”, in J.Physiol., London, CLV:385-98.
[1962] - “Receptive fields, binocular interaction and functional architecture in the cat’s visual cortex”, J.Physiol.,
London, CLX:106-54.
[1963] - “Shape and arrangements of columns in cat’s striate cortex”; J. Physiol. 165:559-68, London.
[1965] - “Receptive fields and functional architecture in two non-striate visual areas (18 and 19) of the cat”, in
J.Neurophysiol., XXVIII:229-89.
[1968] - “Receptive fields and functional architecture of monkey striate cortex”, J.Phisiol., London, CXCV:21543.
[1970] - “The period of susceptibility to the physiological effects of unilateral eye closure in kittens”; J.Physiol.
906:419-436.
[1972] - “Laminar and colimnar distribution of geniculocortical fibers in the macaque monkey”, J.Comp.Neurol.,
CXLVI:421.
[1974] - “Sequence regularity and geometry of orientation columns in the monkey striate cortex”,
J.Comp.Neurol., CLVIII: 267-94.
[1974b] - “Uniformity of monkey striate cortex: a paralell relationship between field size, scatter and
magnification factor”, J. Comp. Neurol. 158:295.
[1977] - “Functional architecture of macaque monkey visual cortex”, Proc. R. Soc. London Ser.B 198:1-59.
HUMPHREY, N.K. [1968] - “Responses to visual stimuli of units in the superior colliculus of rats and
monkeys”, Exp. Neurol. 20:312.
IEEE [1992] - "Special Issue on Optical Character Recognition", Proceedings of the IEEE, July.
KIDDER,J.;SELIGSON,D. [1993] - "Fast Recognition of Noisy Digits", Neural Computation 5.
KNERR,S.;PERSONNAZ,L.;DREYFUS,G. [1992] - "Handwritten Digit Recognition by Neural Networks
with Single-Layer Training", IEEE Transactions on Neural Networks, Vol 3, nº6, November.
- "Single-Layer Learning Revisited: A stepwise procedure for building and training a neural network",
Neurocomputing Algorithms, Architectures and Aplications NATO ASI Series(Springer)";
KNUDSEN, E.I. [1985] - “Experience alters the spatial tuning of auditory units in the optic tectum during a
sensitive period in the barn owl”, J. Neurosci. 5:3094-3109.
KNUDSEN, E.I.; SASCHA DU LAC; ESTERLY, S.D. [1987] - “Computacional maps in the brain”, Annual
review of Neuroscience 10:41-65.
KOCH, C.; POGGIO, T. [1987] - “Biophysics of computacional systems: Neurons, synapses and membranes”,
in Synaptic Function, G.Edelman et al (eds), John Wiley.
C-4
Reconhecimento automático de caracteres
Bibliografia e Referências
C-5
KOHONEN,T. [1982] - "Self-Organized Formation of Topologically Correct Feature Maps", Biol.Cybern. 43,
59-69.
[1982b] - "Clustering, Taxonomy, and Topological Maps of Patterns", Proceedings of the 6th international
conference on pattern recognition, October.
[1987] - "Adaptive, associative, and self-organizing functions in neural computing", Applied Optics, Vol. 26,
nº23, 1 December.
[1988] - "The Neural phonetic typrwriter", Computer, March.
LECUN,Y.;BOSER,B.;DENKER,J.;HENDERSON,D.;HOWARD,R.;HUBBARD,W.;JACKEL,L.
[1989] - "Backpropagation Applied to Handwritten Zip Code Recognition", Neural Computation 1.
[1990] - "Handwritten Digit Recognition with a Back-Propagation Network", Advances in Neural Information
Systems 2, Morgan Kaufman.
LEFEBVRE, C.W.; PRÍNCIPE, J.C. - “ Object oriented artificial neural network implementations”.
LEGENDY, C.R. [1975] - “Can the data of Campbell and Robson be explained without assuming Fourier
Analysis?”, Biol. Cybernet. 17:157.
LIPPMAN, R. [1987] - “An Introduction to Computing with Neural Nets", IEEE ASSP Magazine, April.
[1993] - "Neural Networks for Fingerprint Recognition", Neural Computation 5.
MACLEOD, I.D.G; ROSENFELD, A. [1974] - “The visibility of gratings: spatial frequency channels of bardetecting units”, Vision Res. 14:909.
MANN, J.R.; GILBERT, S. [1989] - “An analog self-organizing neural network chip”, NIPS - Neural
Information Processing Systems vol.1, Morgan Kaufmann Publ.
MARTIN,G.; PITTMAN,J. [1990] - "Recognizing Hand-Printed Letters and Digits", Advances in Neural
Information Systems 2, Morgan Kaufman.
MARR, D. [1982] - “Vision”, San Francisco: W.H.Freeman, pp. 19-38, 54-61.
MCILWAIN, J.T. [1976] - “Large receptive fields and spatial transformations in the visual system”,
Neurophysiology II, Robert Porter (Ed.), 10:223-248.
MC CLELLAND, J. e RUMELHART, D. [1981] - “An interactive activation model of context effects in letter
perception: part 1. An account of basic fundings”, Psychological Review 88:375-407.
MEADOR, J.L.; COLE, C.S. [1989] - “A low-power CMOS circuit which emulates temporal electrical
properties of neurons”, NIPS - Neural Information Processing Systems vol.1, Morgan Kaufmann Publ.
MOOPENN, A.; DUONG, T.; THAKOOR, A.P. [1990] - “Digital-Analog hybrid synapse chips for electronic
neural networks”, NIPS - Neural Information Processing Systems vol.2, Morgan Kaufmann Publ.
MORI,Y.; JOE,K. [1990] - "A Large-Scale Neural Network Which Recognizes Hanwritten Kanji Characters",
Advances in Neural Information Systems 2, Morgan Kaufman.
MUELLER, P.; SPIEGEL, J,V,; BLACKMAN, D.; CHIU, T.; CLARE, T.; DAO, J.; DONHAM, C.;
HSIEH, T. LOINAZ, M. [1989] - “A programmable analog neural computer and simulator”, NIPS - Neural
Information Processing Systems vol.1, Morgan Kaufmann Publ.
MURRAY, A.F.; HAMILTON, A.; TARASSENKO, L. [1989] - “Programmable analog pulse-firing”, NIPS Neural Information Processing Systems vol.1, Morgan Kaufmann Publ.
NABET, B.; DARLING, R.B.; PINTER, R.B. [1989] - “Analog implementation of shunting neural networks”,
NIPS - Neural Information Processing Systems vol.1, Morgan Kaufmann Publ.
NAKANO, K.; NIIZUMA, M.; OMORI, T. [1989] - “Model of neural visual system with self-organizing
cells”, Biolog. Cybern., vol.60.
NEVEN, H.; AERTSEN, A. [1992] - “Rate coherence and event coherence in the visual cortex: a neuronal
model of object recognition”, Biol. Cybern. 67:309-322.
O'KEEFE, J. [1991] - "An allocentric spatial model for the hippocampal cognitive map". Hippocampus 1(3),
230-235.
PEARSON, K.G. [1979] - “Local neurons and local interactions in the nervous system of invertebrates”, in The
Neuroscience Fourth Study Program, ed. F.O.Schmitt, F.G.Worden, Cambridge: MIT Press.
PETERS, A. e JONES, E.G. [1985] - “Cerebral cortex”, Vol 3:Visual cortex, New York:Plenum.
C-5
Reconhecimento automático de caracteres
Bibliografia e Referências
C-6
PETTIGREW, J.D.; NIKARA, T.; BISHOP, P.O. [1968] - “Responses to moving slits by single units in cat
striate cortex”, Exp. Brain Res. 6:373.
POGGIO, G.F. [1974] - “Central neural mechanisms in vision”, in V.B.Mountcastle, Medical Physiology,
13ªed., St.Louis, Mosby, I:497-535.
POLLEN, D.A.; RONNER, S.F. [1975] - “Periodic exitability changes across the receptive fields of complex
cells in the striate and parastriate cortex of the cat”, J. Physiol. 245:667, London.
RALL, W.; SEGEV, I. [1988] - "Excitable dendritic spine clusters: non-linear synaptic processing”, Computer
Simulation in Brain Science, R.Cotterill (ed), Camb.U.P.
RITTER, H.; SCHULTEN, K. [1988] - "Convergence Properties of Kohonen´s Topology Conserving Maps:
Fluctuations, Stability, and Dimension Selection", Biol.Cybern. 60, 59-71.
RITTER, H.; KOHONEN, T. [1989] - "Self-Organizing Semantic Maps", Biol.Cybern. 61, 241-254.
ROBINSON, D.A. [1972] - “Eye movements evoked by collicular stimulation in the alert monkey”, Vision Res.
12:1795-1808.
ROUCOUX, A.; GUITTON, D.; CROMMELINCK, M. [1980] - “Stimulation of the superior colliculus in the
alert cat. II. Eye and head movements evoked when the head is unrestricted”, Exp. Brain Res. 39:75-85.
RYCKEBUSCH, S.; BOWER, J.M.; MEAD, C. 1989] - “Modeling small oscillating biological networks in
analog VLSI”, NIPS - Neural Information Processing Systems vol.1, Morgan Kaufmann Publ.
RYCKEBUSCH, J.L.; MAHOWALD, M.A.; MEAD, C.A. [1989] - “Winner-take-all networks of O(N)
complexity”, NIPS - Neural Information Processing Systems vol.1, Morgan Kaufmann Publ.
SATYANARAYANA, S.; TSIVIDIS, Y. [1990] - “A reconfigurable analog VLSI neural network chip”, NIPS Neural Information Processing Systems vol.2, Morgan Kaufmann Publ.
SCHILLER, P.H.; FINLAY, B.L.; VOLMAN, S.F. [1976] - “Quantitative studies of single-cell properties in
monkey striate cortex. II. Orientation specificity and ocular dominance”, J. Neurophysiol. 39:1320-33.
SCHNEIDER, G.E. [1969] - “Two visual systems”, in Science, CLXIII:895-902.
SCHWARTZ, D.B.; HOWARD, R.E.; HUBBARD, W.E. 1989] - “Adaptive neural networks using MOS
charge storage”, NIPS - Neural Information Processing Systems vol.1, Morgan Kaufmann Publ.
SEGEV, I.; FLESHMAN, J. [1989] - "Compartmental models of complex neurons”, Methods in Neuronal
Modelling.
SENIOR,A.W. [1992] - "Off-line Handwriting Recognition: A review and experiments", Cambridge University
Engineering Department, December.
SHEPHERD, G.; BRAYTON, R. [1987] - "Logic operations are properties of computer simulated interactions
between excitable dendritic spines”, Neuroscience, vol.21, no.1.
SHIMIZU, H. - "The self-organizing o neuronal representations of semantic information of vision", Holden Av,
Kyukov VI(ed), Neurocomputers and atention,Manchester University Press.
SOFTKY, W.R.; KAMMEN, D.M. [1988] - “Can simple cells learn curves? A Hebbian model in a structured
environment”, NIPS - Advances in Neural Information Processing Systems 1.
SPARKS, D.L.; HOLLAND, R.; GUTHRIE, B.L. 1976] - “Size and distribution of movement fields in the
monkey superior colliculus”, Brain Res. 113:21-34.
SRINIVASA,N.;JOUANEH,M. [1992] - "A Neural Network Model for Invariant Pattern Recognition", IEEE
Transactions on Signal Processing, Vol.40, nº6, June.
[1993] - "An Invariant Pattern Recognition Machine Using a Modified ART
Architecture", IEEE Transactions On Systems, Man, and Cybernetics, Vol.23, nº5, September/October.
STEIN, B.E.; CLAMANN, H.P. [1981] - “Control of pinna movements and sensorymotor register in cat
superior colliculus”, Brain Behav. Evol. 19:180-92.
STRASCHILL, M.; HOFFMANN, K.P. [1969] - “Response characteristics of movement detecting neurons in
pretectal region of the cat”, Exp. Neurol. 25:165.
STRYKER, M.P.; SCHILLER, P.M. [1975] - “Eye and head movements evoked by electrical stimulation of
monkey superior colliculus”, Brain Res. 23:103-12.
C-6
Reconhecimento automático de caracteres
Bibliografia e Referências
C-7
STRYKER, M.P.; SHERK, H.; LEVENTHAL, A.G.; HIRSCH, H.V.B. [1978] - “Physiological
consequences for the cat’s visual cortex of effectively restricting early visual experience with oriented contours”, J.
Neurophysiol. 41:896-909.
TREVARTHEN, C. [1968] - “Two mechanisms os vision in primates”, Psychol. Forschung, XXXI:299-337.
VAPNIK, V.; BOTTOU, L.. [1993] - “Local algorithms for pattern recognition and dependencies estimation”,
Neural Computation 5, Massachusets Institute of Technology.
VON DE MALSBURG [1973] - “Self-organization of orientation sensitive cells in the striata cortex”,
Kybernetik 14:85-100.
[1985] - " Nervous structures with dynamical links", Ber Bunseges Phys Chem, 89:703710.
WASHIZAWA, T. [1993] - “Application of Hopfield network to saccades”, IEEE Trans. on Neural Networks,
vol 4, No.6, November.
WATANABE, A.; BULLOCK, T.H [1960] - “Modulation of activity of one neuron by sub-threshold slow
potencial in another in lobster cardiac ganglion”, J. Gen. Physiol. 43:1031-45
WIDROW,B; WINTER,R; BAXTER,R [1988] - "Layered Neural Nets for Pattern Recognition", IEEE
Transactions on Acoustics, Speech, and Signal Processing, Vol.36, nº7, July.
WRIGHT, M.J. [1971] - “Responsiveness to visual stimuli of single neurons in the pulvinar and lateral posterior
nuclei of the cat’s thalamus”, J. Physiol. 219:32P, London.
WURTZ, R.H; ALBANO, J.E. [1981] - “Visual motor function of the primate superior colliculus”, Ann. Rev.
Neurosci. 3:189-226.
ZEKI, S.M. [1974] - “Functional organization of a visual area in the posterior bank of the superior temporal
sulcus of the rhesus monkey”, J. Physiol. 236:549, London.
[1974b] - “Cells responding to changing image size and disparity in the cortex of the rhesus monkey”,
J. Physiol. 242:827, London.
[1980] - “The representation of colours in the cerebral cortex”, Nature 284:412-18.
C-7

Documentos relacionados