Dentro do cenário de projeto de circuitos elétricos orientados para o processamento de redes neurais artificiais, este trabalho se concentra no estudo da implementação de Mapas Auto-organizáveis (SOM, do inglês, Self-Organizing Maps) em chips FPGA. A pesquisa aqui realizada busca, fundamentalmente, responder à seguinte pergunta: como devem ser projetadas as arquiteturas computacionais de cada etapa de processamento do SOM para serem adequadamente executadas em FPGA? De forma mais detalhada, o trabalho investiga as possibilidades que diferentes circuitos de computação do SOM oferecem em relação à velocidade de processamento, ao consumo de recursos do FPGA e à consistência com o formalismo teórico que fundamenta esse modelo de rede neural. Tal objetivo de pesquisa é motivado por possibilitar o desenvolvimento de sistemas de processamento neural que exibam as características positivas típicas de implementações diretas em hardware, como o processamento embarcado e a aceleração computacional. CONTRIBUIÇÕES PRINCIPAIS No decorrer da investigação de tais questões, o presente trabalho gerou contribuições com diferentes graus de impacto. A contribuição mais essencial do ponto de vista de estruturação do restante da pesquisa é a fundamentação teórica das propriedades de computação do SOM em hardware. Tal fundamentação é importante pois permitiu a construção dos alicerces necessários para o estudo das diferentes arquiteturas de circuitos exploradas neste trabalho, de forma que estas permanecessem consistentes com as premissas teóricas que certificam o modelo de computação neural estudado. Outra contribuição avaliada como de grande impacto, e que se consolida como um objeto gerado pela pesquisa, é a proposta de um circuito processador para SOM em FPGA que possui o estado-da-arte em velocidade de computação, medido em CUPS (Connections Updated Per Second). Tal processador permite atingir 52,67 GCUPS, durante a fase de treinamento do SOM, um ganho de aproximadamente 100% em relação aos trabalhos publicados na literatura. A aceleração possibilitada pela exploração de processamentos paralelos em FPGA, desenvolvida neste trabalho, é de três a quatro ordens de grandeza em relação a execuções em software do SOM com a mesma configuração. A última contribuição considerada como de grande impacto é a caracterização da execução do SOM em FPGA. Tal avaliação se faz necessária porque os processos de computação dos modelos neurais em hardware, embora semelhantes, não são necessariamente idênticos aos mesmos processos executados em software. Desta forma, a contribuição deste ponto de pesquisa pode ser entendida como a análise do impacto das mudanças implementadas na computação do SOM em FPGA em relação à execução tradicional do algoritmo, feita pela avaliação dos resultados produzidos pela rede neural por medidas de erros topográficos e de quantização. Este trabalho também gerou contribuições consideradas como de médio impacto, que podem ser divididas em dois grupos: aplicações práticas e aportes teóricos. A primeira contribuição de origem prática é a investigação de trabalhos publicados na literatura envolvendo SOM cujas aplicações podem ser viabilizadas por implementações em hardware. Os trabalhos localizados nesse levantamento foram organizados em diferentes categorias, conforme a área de pesquisa - como, por exemplo, Indústria, Robótica e Medicina - e, em geral, eles utilizam o SOM em aplicações que possuem requisitos de velocidade computacional ou embarque do processamento, portanto, a continuidade de seus desenvolvimentos é beneficiada pela execução direta em hardware. As outras duas contribuições de médio impacto de origem prática são as aplicações que serviram como plataforma de teste dos circuitos desenvolvidos para a implementação do SOM. A primeira aplicação pertence à área de telecomunicações e objetiva a identificação de símbolos transmitidos por 16-QAM ou 64-QAM. Estas duas técnicas de modulação são empregadas em diversas aplicações com requisitos de mobilidade - como telefonia celular, TV digital em dispositivos portáteis e Wi-Fi - e o SOM é utilizado para identificar sinais QAM recepcionados com ruídos e distorções. Esta aplicação gerou a publicação de um artigo na revista da Springer, Neural Computing and Applications: Sousa; Pires e Del-Moral-Hernandez (2017). A segunda aplicação pertence à área de processamento de imagem e visa reconhecer ações humanas capturadas por câmeras de vídeo. O processamento autônomo de imagens executado por chips FPGA junto às câmeras de vídeo pode ser empregado em diferentes utilizações, como, por exemplo, sistemas de vigilância automática ou assistência remota em locais públicos. Esta segunda aplicação também é caracterizada por demandar arquiteturas computacionais de alto desempenho. Todas as contribuições teóricas deste trabalho avaliadas como de médio impacto estão relacionadas ao estudo das características de arquiteturas de hardware para computação do modelo SOM. A primeira destas é a proposta de uma função de vizinhança do SOM baseada em FPGA. O objetivo de tal proposta é desenvolver uma expressão computacional para ser executada no chip que constitua uma alternativa eficiente tanto à função gaussiana, tradicionalmente empregada no processo de treinamento do SOM, quanto à função retangular, utilizada de forma rudimentar nas primeiras pesquisas publicadas sobre a implementação do SOM em FPGA. A segunda destas contribuições é a descrição detalhada dos componentes básicos e dos blocos computacionais utilizados nas diferentes etapas de execução do SOM em FPGA. A apresentação dos detalhes da arquitetura de processamento, incluindo seus circuitos internos e a função computada por cada um de seus blocos, permite que trabalhos futuros utilizem os desenvolvimentos realizados nesta pesquisa. Esta descrição detalhada e funcional foi aceita para publicação no IEEE World Congress on Computational Intelligence (WCCI 2018): Sousa et al. (2018). A terceira contribuição teórica de médio impacto é a elaboração de um modelo distribuído de execução do SOM em FPGA sem o uso de uma unidade central de controle. Tal modelo permite a execução das fases de aprendizado e operação da rede neural em hardware de forma distribuída, a qual alcança um comportamento global de auto-organização dos neurônios apenas pela troca local de dados entre elementos de processamento vizinhos. A descrição do modelo distribuído, em conjunto com sua caracterização, está publicada em um artigo no International Joint Conference on Neural Networks do IEEE (IJCNN 2017): Sousa e Del-Moral-Hernandez (2017a). A última contribuição deste grupo de aporte teórico é a comparação entre diferentes modelos de execução do SOM em FPGA. A comparação tem a função de avaliar e contrastar três diferentes possibilidades de implementação do SOM: o modelo distribuído, o modelo centralizado e o modelo híbrido. Os testes realizados e os resultados obtidos estão publicados em um trabalho no International Symposium on Circuits and Systems do IEEE (ISCAS 2017): Sousa e Del-Moral-Hernandez (2017b). Finalmente, apresentam-se a seguir as contribuições avaliadas como de menor impacto, em comparação com as contribuições já descritas, ou ainda incipientes (e que possibilitam continuidades da pesquisa em trabalhos futuros), sendo relacionadas a seguir como contribuições complementares: * Pesquisa de literatura científica sobre o estado-da-arte da área da Engenharia de Sistemas Neurais Artificiais. * Identificação de grupos internacionais de pesquisa de execução do SOM em hardware, os quais foram reconhecidos por publicarem regularmente seus estudos sobre diferentes tipos de implementações e categorias de circuitos computacionais. * Enumeração das justificativas e motivações mais frequentes na literatura para o processamento de sistemas neurais de computação em hardware. * Comparação e contraste das características de microprocessadores, GPUs, FPGAs e ASICs (tais como, custo médio do componente, paralelismo computacional oferecido e consumo típico de energia) para contextualização do tipo de aplicações que a escolha pela pesquisa com o dispositivo FPGA possibilita. * Levantamento das propriedades de computação do SOM em hardware mais frequentemente utilizadas nas pesquisas publicadas na literatura, tais como, quantidade de bits usados nos cálculos, tipo de representação de dados e arquitetura típica dos circuitos de execução das diferentes etapas de processamento do SOM. * Comparação do consumo de área do FPGA e da velocidade de processamento entre a execução da função de vizinhança tradicional gaussiana e a função de vizinhança proposta neste trabalho (com resultados obtidos de aproximadamente 4 vezes menos área do chip e 5 vezes mais velocidade de operação). * Caracterização do aumento dos recursos consumidos no chip e da velocidade de operação do sistema, em relação à implementação do SOM com diferentes complexidades (quantidade de estágios decrescentes do fator de aprendizado e da abertura da função de vizinhança) e comparação destas propriedades da arquitetura proposta em relação aos valores publicados na literatura. * Proposta de uma nova métrica para caracterização do erro topográfico na configuração final do SOM após o treinamento. / In the context of design electrical circuits for processing artificial neural networks, this work focuses on the study of Self-Organizing Maps (SOM) executed on FPGA chips. The work attempts to answer the following question: how should the computational architecture be designed to efficiently implement in FPGA each one of the SOM processing steps? More specifically, this thesis investigates the distinct possibilities that different SOM computing architectures offer, regarding the processing speed, the consumption of FPGA resources and the consistency to the theory that underlies this neural network model. The motivation of the present work is enabling the development of neural processing systems that exhibit the positive features typically associate to hardware implementations, such as, embedded processing and computational acceleration. MAIN CONTRIBUITIONS In the course of the investigation, the present work generated contributions with different degrees of impact. The most essential contribution from the point of view of structuring the research process is the theoretical basis of the hardware-oriented SOM properties. This is important because it allowed the construction of the foundations for the study of different circuit architectures, so that the developments remained consistent with the theory that underpins the neural computing model. Another major contribution is the proposal of a processor circuit for implementing SOM in FPGA, which is the state-of-the-art in computational speed measured in CUPS (Connections Updated Per Second). This processor allows achieving 52.67 GCUPS, during the training phase of the SOM, which means a gain of 100%, approximately, in relation to other published works. The acceleration enabled by the FPGA parallel processing developed in this work reaches three to four orders of magnitude compared with software implementations of the SOM with the same configuration. The highlights made in the text indicate pieces of writing that synthesize the idea presented. The last main contribution of the work is the characterization of the FPGA-based SOM. This evaluation is important because, although similar, the computing processes of neural models in hardware are not necessarily identical to the same processes implemented in software. Hence, this contribution can be described as the analysis of the impact of the implemented changes, regarding the FPGA-based SOM compared to traditional algorithms. The comparison was performed evaluating the measures of topographic and quantization errors for the outputs produced by both implementations. This work also generated medium impact contributions, which can be divided into two groups: empirical and theoretical. The first empirical contribution is the survey of SOM applications which can be made possible by hardware implementations. The papers presented in this survey are classified according to their research area - such as Industry, Robotics and Medicine - and, in general, they use SOM in applications that require computational speed or embedded processing. Therefore, the continuity of their developments is benefited by direct hardware implementations of the neural network. The other two empirical contributions are the applications employed for testing the circuits developed. The first application is related to the reception of telecommunications signals and aims to identify 16-QAM and 64-QAM symbols. These two modulation techniques are used in a variety of applications with mobility requirements, such as cell phones, digital TV on portable devices and Wi-Fi. The SOM is used to identify QAM distorted signals received with noise. This research work was published in the Springer Journal on Neural Computing and Applications: Sousa; Pires e Del-Moral-Hernandez (2017). The second is an image processing application and it aims to recognize human actions captured by video cameras. Autonomous image processing performed by FPGA chips inside video cameras can be used in different scenarios, such as automatic surveillance systems or remote assistance in public areas. This second application is also characterized by demanding high performance from the computing architectures. All the theoretical contributions with medium impact are related to the study of the properties of hardware circuits for implementing the SOM model. The first of these is the proposal of an FPGA-based neighborhood function. The aim of the proposal is to develop a computational function to be implemented on chip that enables an efficient alternative to both: the Gaussian function (traditionally employed in the SOM training process) and the rectangular function (used rudimentary in the first published works on hardware-based SOMs). The second of those contributions is the detailed description of the basic components and blocks used to compute the different steps of the SOM algorithm in hardware. The description of the processing architecture includes its internal circuits and computed functions, allowing the future works to use the architecture proposed. This detailed and functional description was accepted for publication in the IEEE World Congress on Computational Intelligence (WCCI 2018): Sousa et al. (2018). The development of an FPGA distributed implementation model for the SOM composes the third of those contributions. Such a model allows an execution of the neural network learning and operational phases without the use of a central control unit. The proposal achieves a global self-organizing behavior only by using local data exchanges among the neighboring processing elements. The description and characterization of the distributed model are published in a paper in the IEEE International Joint Conference on Neural Networks (IJCNN 2017): Sousa e Del-Moral-Hernandez (2017a). The last contribution of this group is the comparison between different FPGA architectures for implementing the SOM. This comparison has the function of evaluating and contrasting three different SOM architectures: the distributed model, the centralized model and the hybrid model. The tests performed and the results obtained are published in an article in the IEEE International Symposium on Circuits and Systems (ISCAS 2017): Sousa e Del-Moral-Hernandez (2017b). Finally, the contributions assessed as having a minor impact, compared to contributions already described, or still incipient (and which allow the continuity of the research in possible future works), are presented as complementary contributions: * Research in the scientific literature on the state-of-the-art works in the field of Artificial Neural Systems Engineering. * Identification of the international research groups on hardware-based SOM, which were recognized for regularly publishing their studies on different types of implementations and categories of computational circuits. * Enumeration of the justifications and motivations often mentioned in works on hardware developments of neural computing systems. * Comparison and contrast of the characteristics of microprocessors, GPUs, FPGAs and ASICs (such as, average cost, parallelism and typical power consumption) to contextualize the type of applications enabled by the choice of FPGA as the target device. * Survey of literature for the most commonly hardware properties used for computing the SOM, such as the number of bits used in the calculations, the type of data representation and the typical architectures of the FPGA circuits. * Comparison of the FPGA resources consumption and processing speed between the execution of the traditional Gaussian neighborhood function and the proposed alternative neighborhood function (with obtained results of approximately 4 times less chip area and 5 times more computational speed). * Characterization of the increase in chip resources consumptions and the decrease in system speeds, according to the implementations of the SOM with different complexities (such as, the number of stages in learning factor and the width of the neighborhood function). Comparison of these properties between the proposed architecture and the works published in the literature. * Proposal of a new metric for the characterization of the topographic error in the final configuration of the SOM after the training phase.
Identifer | oai:union.ndltd.org:usp.br/oai:teses.usp.br:tde-06092018-091449 |
Date | 21 May 2018 |
Creators | Sousa, Miguel Angelo de Abreu de |
Contributors | Hernandez, Emílio Del Moral |
Publisher | Biblioteca Digitais de Teses e Dissertações da USP |
Source Sets | Universidade de São Paulo |
Language | Portuguese |
Detected Language | Portuguese |
Type | Tese de Doutorado |
Format | application/pdf |
Rights | Liberar o conteúdo para acesso público. |
Page generated in 0.0239 seconds