ANÁLISE EXPERIMENTAL DE NOVOS VETORES ALVO NA MELHORIA DO DESEMPENHO DE MLP Shigueo Nomura, José Ricardo G. Manzan, Keiji Yamanaka [email protected], [email protected], [email protected] Universidade Federal de Uberlândia, Faculdade de Engenharia Elétrica, Uberlândia - MG Resumo – O presente trabalho faz uma análise experimental através da utilização de vetores bipolares ortogonais como vetores alvo em substituição aos vetores bipolares convencionais nas fases de treinamento e de aplicação de redes neurais multicamadas, comumente conhecidas como multilayer perceptrons (MLPs). Para a análise experimental utilizou-se um conjunto de 1593 amostras de padrões de manuscritos de diversas pessoas. Essas amostras se encontram armazenadas no banco internacional de dados conhecido como UCI Learning Machine Repository e têm sido acessadas por pesquisadores do mundo inteiro. Os resultados experimentais da comparação de desempenhos de MLPs têm mostrado que o desempenho melhora consideravelmente com a utilização dos novos vetores alvo. Palavras-Chave – reconhecimento de padrões, redes neurais multicamadas, vetores alvo, vetores bipolares ortogonais. AN EXPERIMENTAL ANALYSIS OF NEW TARGET VECTORS ON MLP PERFORMANCE IMPROVEMENT Abstract -–This work consists of an experimental analysis using orthogonal bipolar vectors instead of conventional bipolar vectors as target ones for training and test stages of multilayer feedforward neural networks commonly referred to as multilayer perceptrons (MLPs). A set of 1593 samples of manuscript patterns was used to perform the experimental analysis. Those samples are saved on the international database known as UCI Learning Machine Repository. They have been accessed by researchers from all the world. The experimental results from the performance comparison of MLPs have shown that the performance improves well due to the adoption of new target vectors. Keywords – pattern recognition, multilayer neural networks, target vectors, orthogonal bipolar vectors. * I. INTRODUÇÃO A aprendizagem [1] de Redes Neurais Artificiais (RNAs) tem sido um tema de especial atenção dos pesquisadores. Muitas iniciativas [2][3][4] no intuito de aperfeiçoar as técnicas de treinamento têm sido feitas e seus resultados contribuem de forma relevante para a melhoria do desempenho das redes em diversas aplicações, especialmente reconhecimento de padrões. Em alguns casos [5][6] os esforços se destinam a trabalhar com a organização dos padrões de entrada, em outros com a arquitetura da rede e também é possível encontrar estudos que tratam de melhorias no algoritmo de aprendizagem. Outra possibilidade se dá na obtenção de modelos de minimização do erro. Nessa direção se faz necessária a determinação de alguma técnica de otimização que consiga superar um problema bastante desafiador: realizar a modelagem onde há uma grande quantidade de variáveis, bem mais do que as situações convencionais. Esse problema não é fácil de ser superado. Analisando os estudos para a melhoria do desempenho de RNAs, não são encontradas pesquisas que se preocupem com os vetores alvo da rede. Nesse sentido, este trabalho propõe a análise experimental de uma nova abordagem no treinamento de redes perceptrons multicamadas (MLPs). Além da apropriada seleção dos padrões de entrada e da determinação do número de neurônios da camada intermediária, é preciso definir adequadamente os vetores alvo da rede. A proposta baseia-se no fato de que a escolha dos vetores alvo influencia significativamente na capacidade da RNA em reconhecer padrões. A abordagem [7][8] mostra que se os vetores alvo forem bipolares e ortogonais, é possível reduzir a similaridade entre eles, o que permitirá no caso específico de redes MLPs, distinguir com mais facilidade um padrão do outro. A não similaridade entre os padrões de saída é um fator que comprovadamente facilita a aprendizagem da memória humana. Esse fato reforça ainda mais a teoria defendida por essa nova abordagem. Nos trabalhos preliminares [7][8] encontram-se alguns estudos e resultados. No presente trabalho, o objetivo é analisar experimentalmente através do uso de uma base de dados que se encontra disponível aos pesquisadores do mundo todo e avaliar o aumento do desempenho de MLPs quando se adotam os vetores bipolares ortogonais como vetores alvo. Na Seção VI estão definidos os vetores utilizados nos experimentos para se avaliar os desempenhos de MLPs e os respectivos resultados experimentais encontram-se apresentados na Seção VII. O trabalho é concluído na Seção VIII. II. ANTECEDENTES O reconhecimento de padrões [6] como a ciência que envolve a descrição ou classificação de padrões, tem sido alvo de tema para muitas pesquisas dentro da área de processamento da informação. Historicamente, os maiores enfoques têm sido na abordagem estatística (ou decisão teórica) e na abordagem sintática (ou estrutural) [9]. Entretanto, as técnicas de redes neurais artificiais têm sido amplamente utilizadas como uma importante opção de abordagem no reconhecimento de padrões degradados devido à habilidade de “aprender” com os dados de treinamento supervisionado ou não supervisionado [6]. Diferentemente das técnicas de inteligência artificial clássica onde os símbolos são processados seqüencialmente pelos modelos, as técnicas de RNAs dão ênfase no desenvolvimento de modelos para processamento distribuído e paralelo de informações [10]. De acordo com Kohonen [11], o reconhecimento de padrões pode ser considerado como um caso de mapeamento associativo, em que as classes de padrões são diretamente mapeadas em um conjunto de elementos discretos. Os padrões a serem reconhecidos podem ser do mesmo tipo em termos de sentido (uma imagem visual pode ser associada a uma outra imagem visual) ou de diferentes tipos (a fragrância de uma flor pode ser associada a uma imagem dessa flor). O reconhecimento de um padrão ou grupo de padrões pode ser considerado como uma associação de padrões [10]. Os modelos são baseados na idéia de que as informações se processam através da interação de um grande número de neurônios onde cada um envia sinais inibitórios ou excitatórios a outros neurônios da rede [10]. Assim, as RNAs têm inspiração no comportamento dos neurônios biológicos [10] cuja principal característica é a habilidade de aprender através de exemplos, e têm sido aplicadas nas mais variadas áreas do conhecimento com sucesso. Uma dessas áreas é a técnica de visão por computador, mais especificamente o reconhecimento automático de padrões. III. MOTIVAÇÃO O trabalho se baseia no fato de que o modelamento de uma RNA e o seu modo de treinamento influi no seu desempenho para o reconhecimento de padrões degradados. Uma rede mais elástica (com maior capacidade de generalização) tende a ser melhor no reconhecimento daqueles padrões mais complexos. A rede treinada em excesso tende a ser mais específica que a outra, ou seja, menos elástica para conseguir reconhecer padrões similares que não apareceram durante o seu treinamento. Isto significa que quando o modelamento e o treinamento de uma RNA são realizados adequadamente, mesmo apresentando um padrão de teste bastante degradado, ou seja, com características diversas de todos aqueles exemplos que foram utilizados na fase de aprendizagem, ainda assim, o sistema poderá ser capaz de reconhecer esse padrão. Em trabalhos anteriores para otimização do treinamento das RNAs de múltiplas camadas, têm-se verificado que o foco esteve mais na mudança da representação dos vetores de entrada e na escolha das camadas intermediárias. Existem várias técnicas tradicionais que envolvem variações na representação dos vetores de entrada [12] para melhorar o desempenho de RNAs. No entanto, estudos envolvendo a utilização de vetores alvo de saída diferentes daqueles convencionais, como é a proposta deste trabalho, são bastante raros. A hipótese neste trabalho é a de que a adoção de vetores bipolares ortogonais como vetores alvo influenciará consideravelmente no treinamento otimizado de RNA para se obter uma rede com uma maior capacidade de generalização. Através da busca de uma melhor representação dos vetores alvo, a grande motivação é encontrar um modelamento algébrico para treinamento de RNA com maior capacidade de generalização e mais adequado ao reconhecimento de padrões degradados. Alguns resultados preliminares [7][8] adotando-se os vetores alvo não convencionais têm sido bastante promissores e motivadores para que sejam consolidados através da presente proposta de trabalho. IV. JUSTIFICATIVAS A estratégia é influenciar na superfície do erro multidimensional que é construída durante o treinamento supervisionado de MLPs. Como a classificação é baseada na distância euclidiana entre os vetores alvo para classificar os padrões de entrada desconhecidos, a idéia da proposta é adotar os vetores bipolares ortogonais como novos vetores alvo. Comparando-se com os vetores bipolares convencionais, tais vetores bipolares ortogonais têm a vantagem de proporcionar um maior número de neurônios ativos. Também eles aumentam a distância euclidiana entre si conforme se aumentam seus tamanhos. Além disso, a grande vantagem é que a similaridade medida pelo produto interno entre os vetores é nula. Um ponto relevante é que a ortogonalidade dos novos vetores alvo pode proporcionar um maior espaço de saída durante o treinamento da RNA. Conseqüentemente, o espaço de decisões mostrado na Figura 1 será maior, melhorando o desempenho da rede MLP. Com o mapeamento otimizado da entrada e saída, mesmo que essa entrada de teste seja degradada e consideravelmente diferente dos padrões de treinamento, haverá uma melhoria na capacidade de generalização da rede treinada. Fig. 1. Reconhecimento de padrões como um processo de extração de características seguida de classificação no espaço de decisões. V. RELEVÂNCIA DO TRABALHO As técnicas de visão por computador baseadas na aplicação das RNAs são especialmente úteis e encontram aplicações nos sistemas automáticos de reconhecimento de padrões, tais como, reconhecimento de caracteres manuscritos, reconhecimento de sinais biológicos, imagens de radiografia, tomografia, sinais sonoros, elétricos e outros. Um exemplo desses sistemas é o reconhecedor automático de códigos de placas de veículos das imagens reais captadas pelas câmeras de controle de tráfego. Neste trabalho, a utilização de vetores alvo distintos dos convencionais é experimentada no modelamento de MLPs e o modelo resultante é testado num reconhecedor automático de dígitos manuscritos. Os dados de teste se encontram armazenados no repositório internacional da UCI Learning Machine. A vantagem do modelamento proposto é aumentar a taxa de sucesso no reconhecimento automático dos dígitos manuscritos, ainda que as imagens captadas sejam bastante degradadas constituindo uma tarefa desafiadora e um verdadeiro teste para o sistema reconhecedor. seguintes passos: 1) Passo 1 – Inicialização de m e k – Os valores de m e k devem ser determinados de acordo com a necessidade da aplicação. 2) Passo 2 – Inicialização do vetor de sementes – O vetor de sementes é obtido através de (4). m 6474 8 T 0 Vm = (1,1,...,1) (4) 3) Passo 3 – Cálculo do número de componentes em um VBO – O cálculo do número de componentes do VBO é feito através da equação (3). V21m = fcc Vm0 , Vm0 ( vetores onde A. Vetores Bipolares Convencionais (VBCs) (1) O elemento 1 na posição de índice i do vetor corresponde ao dígito i do vetor Vi que representa esse dígito. Os demais elementos têm valor -1. O primeiro índice do vetor é zero. Ao longo do texto, esses vetores serão referenciados por VBCs. B. Vetores Bipolares Ortogonais (VBOs) Dois vetores são ditos ortogonais quando seu produto interno é nulo, ou seja, para dois vetores V e W pertencentes ao espaço Rn, o produto interno dado por (2) tem seu resultado igual a zero. ur uur V ⋅W = x1 y1 + x2 y2 + ... + xn yn 2 k m componentes. O algoritmo é realizado a partir dos 4) Passo 4 – Construção de vetores – São construídos os VI. DEFINIÇÃO DE VETORES ALVO DOS EXPERIMENTOS ur def Vi = ( −1, −1,...,1,..., −1) 2k VBOs é construído com Assim, um conjunto com (2) ) e V22m = fcc Vm0 , −Vm0 , ( ) fcc (V1 ,V2 ) é a função de concatenação dos vetores V1 e V2 . 5) Passo 5 – Construção de vetores – São construídos os vetores 3 4m V V41m = fcc V21m ,V21m , V42m = fcc V21m , −V21m , ( ( 2 2m 2 2m = fcc V ,V ) 4 4m ) eV ( ( 2 2m 2 2m = fcc V , −V ) ). 6) Passo 6 – Concatenações sucessivas – São realizadas concatenações até que se obtenha 1 2 2k vetores ortogonais com k n componentes: Vn ,..., Vn . Onde: ur def V = ( x1 , x2 ,..., xn ) uur def W = ( y1 , y2 ,..., yn ) VII. RESULTADOS EXPERIMENTAIS Os vetores usados nessa abordagem, além de terem produto interno nulo, são bipolares, ou seja, seus elementos assumem os valores 1 ou – 1. A partir desse momento, esses vetores serão tratados como VBOs. C. Geração de VBOs Esse método [10] usa um vetor de sementes na geração de VBOs. O número de componentes de cada VBO é calculado por: n = 2k m Onde: 2k - Número de vetores ortogonais para k > 0. m - Número de componentes em um vetor de sementes. (3) Nos experimentos foram utilizados os dados de dígitos manuscritos referentes a várias pessoas que se encontram armazenados no repositório internacional conhecido como UCI Learning Machine Repository. Na Figura 2 são apresentadas as amostras de dígitos manuscritos utilizadas como dados de treinamento das redes MLPs. Assim, se verificam que são imagens com variações acentuadas de padrões que dificultam consideravelmente as tarefas de reconhecimento ou classificação usando MLPs como modelos. A representação vetorial dos dados foi feita de forma que cada elemento do vetor corresponda a um pixel da imagem do dígito. Cada dígito é representado por uma matriz de 16 linhas por 16 colunas, compondo-se vetores de entrada da rede neural com 256 elementos. Cada um desses elementos tem valor 1 para o pixel do dígito e valor -1 para o do fundo. Fig. 2. Amostras de dígitos manuscritos utilizadas como dados de treinamento de redes MLPs nos experimentos para avaliação de seu desempenho com diferentes tipos de vetores alvo. A. Topologia de MLPs adotada nos experimentos Para se definir a topologia mais adequada de MLPs nos experimentos, foram realizados vários estudos e aplicadas várias estratégias. Assim, procurou-se garantir que os resultados de desempenho devido à adoção dos novos vetores alvo comparados com os resultados da utilização dos vetores alvo convencionais fossem os mais justos possíveis. Os experimentos foram realizados sempre com o objetivo de se obter a maior taxa de reconhecimento dos padrões de entrada pelas redes treinadas para os vetores alvo em análise (bipolares convencionais e bipolares ortogonais). Basicamente, a topologia final adotada no trabalho possui 256 neurônios na camada de entrada, 200 neurônios escondidos na camada intermediária e o número de neurônios na camada de saída definido pelo tamanho do vetor alvo analisado no experimento. B. Experimentos Os dados para os experimentos foram divididos em dois conjuntos conforme a seguir: 1) Treinamento: Para construir este conjunto, os dados foram tomados aleatoriamente do conjunto total de 1593 dados que pertencem ao repositório de dados da UCI Learning Machine Repository. Assim, foram separados 20 dados representando um dos dez dígitos. Portanto, foram formados 200 vetores de treinamento para representarem os dez dígitos manuscritos. Esses vetores foram utilizados como padrões de entrada para o treinamento da rede MLP em reconhecimento de dígitos manuscritos. 2) Teste: É um conjunto separado do de treinamento acima e é constituído de 1393 dados representados pelos vetores de características das imagens de dígitos manuscritos. Esses vetores foram utilizados como dados de teste para as redes neurais treinadas com diferentes vetores alvo a fim de se verificar a melhoria do seu desempenho. Com relação às tabelas que apresentam os resultados de desempenho para os diferentes vetores alvo, a primeira coluna refere-se ao número seqüencial das diversas simulações realizadas. A segunda coluna corresponde aos valores de tolerância ao erro, ou seja, corresponde ao valor da média atingida pelos erros quadráticos médios no último ciclo de treinamento da rede MLP. A terceira coluna apresenta o número de ciclos de treinamento que foram necessários para se atingir o valor da média obtida e mostrada na segunda coluna. A última coluna de cada tabela mostra a quantidade de dígitos reconhecidos pela rede MLP treinada e testada com os respectivos conjuntos de vetores de dados. No primeiro experimento foram utilizados os VBCs como alvo. São vetores constituídos de 10 elementos e obedecem à definição dada na Seção VI para representarem os respectivos dígitos. Os resultados desse experimento estão apresentados na Tabela I. TABELA I Desempenho de MLP no Treinamento e Teste Utilizando Vetores Bipolares Convencionais (VBCs) como Alvo No da simulação Tolerância No de ciclos 84 85 86 7×10ି 3×10ି 1×10ି 1741 4094 12547 Taxa de reconhecimento (%) 75,23 75,52 75,16 No segundo experimento foram gerados VBOs com 64 elementos de acordo com a definição apresentada na Seção VI. Esses VBOs foram utilizados como vetores alvo durante o treinamento e teste de MLPs com os dados de dígitos manuscritos. Os resultados referentes ao desempenho no treinamento e teste de MLPs devido aos novos vetores alvo estão apresentados na Tabela II. O valor destacado da taxa de reconhecimento nesta tabela mostra o aumento dessa taxa da ordem de 2 % ou mais em relação à taxa atingida (valor destacado na Tabela I) pelo modelo treinado e testado com vetores alvo convencionais. TABELA II Desempenho de MLP no Treinamento e Teste Utilizando Vetores Bipolares Ortogonais (VBOs) como Alvo No da simulação Tolerância No de ciclos 81 83 88 1×10ିହ 7×10ି 3×10ି 4780 6899 16755 Taxa de reconhecimento (%) 76,96 77,10 77,53 Vale ressaltar que os dois experimentos foram realizados mantendo-se constantes os parâmetros como a taxa de aprendizagem e os critérios de parada do treinamento para os dois casos, procurando assegurar os desempenhos máximos das redes neurais nas condições estabelecidas. A Tabela I mostra que o desempenho máximo de um MLP é atingido quando se adota a tolerância próxima ao valor de 3x10-6 e VBCs como vetores alvo. Ainda, a Tabela I mostra que o desempenho de MLP começa a diminuir quando a tolerância é reduzida para 1x10-6, significando que a partir desse valor, a rede passa a sofrer excesso de treinamento conhecido como “overtraining”. VIII. CONCLUSÕES Pela análise dos resultados experimentais, verificou-se que houve um aumento na taxa de reconhecimento dos dígitos manuscritos quando se adotou os vetores bipolares ortogonais (VBOs) como novos vetores alvo em substituição aos vetores bipolares convencionais (VBCs). Portanto, os resultados da análise experimental confirmam as hipóteses levantadas neste trabalho quanto à melhoria do desempenho de redes neurais MLPs se forem adotados VBOs como vetores alvo baseando-se nas seguintes justificativas: • Influência no aumento do número de neurônios ativos na camada de saída da rede MLP; • Influência no aumento da distância euclidiana entre os vetores alvo de saída pelo fato de serem ortogonais entre si, em comparação aos vetores bipolares convencionais; • Influência no aumento do espaço de saída para o treinamento e teste das redes MLPs, também pelo fato da ortogonalidade entre os vetores. Todas essas influências da ortogonalidade dos VBOs têm contribuído para a esperada melhoria na capacidade de generalização das redes de treinamento supervisionado em questão. Chega-se assim a uma conclusão de que a melhoria é conseqüência de um mapeamento otimizado da entrada e saída mesmo que os padrões de teste sejam consideravelmente diferentes dos padrões de treinamento como ocorrem com os dígitos manuscritos. AGRADECIMENTOS O projeto RECEM2010-0072 (edital 08/2010) do qual o presente trabalho faz parte, foi financiado pela PROPP-UFU. REFERÊNCIAS BIBLIOGRÁFICAS [1] A. Browne, “Neural Network Analysis, Architectures, and Applications”, Institute of Physics Pub., Bristol, 1997. [2] M. A. Costa, A. P. Braga, B. R. Menezes, “Improving Neural Networks Generalization With New Constructive and Pruning Methods”, Journal of Intelligent & Fuzzy Systems, vol. 13, no. 2, pp. 75-83, October 2003. [3] C. M. Lee, S. S. Yang, C. L. Ho, “Modified Backpropagation Algorithm Applied to Decision-feedback Equalisation”, IEE Proceedings – Vision, Image & Signal Processing, vol. 153, no. 6, pp.805-809, December 2006. [4] X. Wang, C. Chang, F. Du, “Achieving a More Robust Neural Network Model for Control of a MR Damper by Signal Sensitivity Analysis”, Neural Computing & Applications, vol. 4, no. 10, pp. 330-338, April 2002. [5] S. Narayan, G. A. Tagliarini, E. W. Page, “Enhancing MLP Networks Using a Distributed Data Representation”, IEEE Transactions on Systems, Man, and Cybernetics, Part B: Cybernetics, vol. 26, no. 1, pp. 143-149, 1996. [6] R. O. Duda, P. E. Hart, D. G. Stork, “Pattern Classification”, John Wiley & Sons, 2001. [7] S. Nomura, K. Yamanaka, O. Katai, H. Kawakami, T. Shiose, “Improving MLP Learning via Orthogonal Bipolar Target Vectors”, Journal of Advanced Computacional Intelligence and Intelligent Informatics, vol. 9, no. 6, pp. 580-589, June 2005. [8] S. Nomura, K. Yamanaka, O. Katai, H. Kawakami, T. Shiose, “Uma Nova Abordagem Matemática para Melhoria do Desempenho de Redes Neurais Artificiais”, VIII Simpósio Brasileiro de Redes Neurais, São Luís, 2004. [9] K.S. Fu, “Syntactic Methods in Pattern Recognition”, Academic Press, New York, 1974. [10]L. Fausset, “Fundamentals of Neural Networks: Architecture, Algorithms, and Applications”, PrenticeHall, 1ª ed., Englewood Cliffs, 1994. [11]T. Kohonen, “Associative Memory: a System-Theoretical Approach”, Springer-Verlag, New York, 1977. [12]R. O. Duda, P. E. Hart, “Pattern Classification and Scene Analysis”, Wiley, New York, 1973. DADOS BIOGRÁFICOS Shigueo Nomura, possui graduação em Engenharia Civil pela Escola Politécnica da Universidade de São Paulo (1992), graduação em Curso Superior de Tecnologia e Computação pelo Instituto Tecnológico de Aeronáutica (1988), mestrado em Engenharia Elétrica pela Universidade Federal de Uberlândia (2002), doutorado em Informática pela Kyoto University (2006) e pós-doutorado pela Kyoto University (2006-2008) como bolsista da Japan Society for the Promotion of Science (JSPS). Foi pesquisador (research fellow) na National University of Singapore (2009-2010). Atualmente é professor da Faculdade de Engenharia Elétrica da Universidade Federal de Uberlândia. Tem experiência na área de Ciência e Engenharia da Computação, com ênfase em Processamento de Imagens, Reconhecimento de Padrões, Metodologia e Técnicas da Neurocomputação, Interface Homem-Máquina, Sistemas Simbióticos e Princípios da Psicologia Ecológica. José Ricardo Gonçalves Manzan, nascido em 19/03/1984 em Uberaba-MG, é licenciado em matemática (2006), especialista em Matemática e Estatística (2008) pela Universidade Federal de Lavras e aluno do curso de Mestrado em Engenharia Elétrica da Universidade Federal de Uberlândia. De 2007 a 2009 foi professor dos cursos de engenharia e matemática da Universidade de Uberaba. Atualmente é professor do Instituto Federal do Triângulo Mineiro – campus Uberaba. Suas áreas de interesse são: Inteligência Artificial e Redes Neurais Artificiais. Keiji Yamanaka, obteve o título de doutor em Engenharia Elétrica e de Computação - Nagoya Institute of Technology, Japão (1999). Atualmente é professor associado da Universidade Federal de Uberlândia. Tem experiência na área de Engenharia Elétrica, com ênfase em Inteligência Computacional, atuando principalmente nos seguintes temas: redes neurais artificiais, algoritmos genéticos e reconhecimento de padrões.