Optimização de redes neuronais convolucionais

Date

2024

Journal Title

Journal ISSN

Volume Title

Publisher

IPCB. EST

Abstract

Este relatório foi elaborado no âmbito da disciplina da Unidade Curricular de Projeto I/II, do segundo semestre da Licenciatura de Engenharia Informática, curso este lecionado na Escola Superior de Tecnologia do Instituto Politécnico de Castelo Branco. O projeto visa explorar e entender algoritmos que permitam encontrar arquiteturas de redes neuronais convolucionais que executem no menor tempo possível e necessitem do mínimo de recursos, pois serão executados em hardware limitado. Para alcançar esses objetivos, fez-se uma review sistemática da literatura, para assim se obterem os artigos do estado da arte referentes a propostas de algoritmos que pretendem minimizar o tempo de execução, maximizando a qualidade das arquiteturas encontradas. Os algoritmos devem ser evolucionários, pois estes são populares para resolver problemas com vastos espaços de possibilidades. Após analisar, individualmente, cada algoritmo, é feita uma análise geral, de maneira a identificar quais as melhores metodologias e estratégias para se alcançar os objetivos propostos. É descrita a implementação de um caso de estudo que procura ajudar a definir o tipo de algoritmo e estratégia a serem utilizados na segunda fase deste projeto. Na conclusão do Projeto I, encontraram-se duas métricas que estimam a qualidade de uma arquitetura de rede neuronal convolucional sem fazer qualquer tipo de treino. Em continuação, na segunda fase do projeto, integraram-se estas métricas em algoritmos de programação genética que, ao contrário daqueles encontrados no estado da arte no Projeto I, utilizam representações complexas como gramáticas e grafos. Adaptou-se o código destes algoritmos para utilizarem estas duas métricas em Tensorflow. Posteriormente, obtiveram-se os resultados através de um treino intensivo das melhores arquiteturas encontradas. Constatou-se que o estado da arte foi superado ao nível de tempo de procura e obteve-se exatidões próximas do estado da arte e superiores aos algoritmos originais de programação genética. Concluiu-se também que a melhor combinação é a métrica gananciosa, NASWOT, com o algoritmo CGP-CNN
Abstract: This report was written as part of the Project I/II curricular unit of the second semester of the Computer Engineering degree, taught at Escola Superior de Tecnologia of Instituto Politécnico de Castelo Branco. The project aims to explore and understand algorithms that enable the discovery of convolutional neural network architectures that run in the shortest possible time and require the least resources, as they will run on limited hardware. To achieve these objectives, we conducted a systematic literature review to obtain up-to-date articles on proposed algorithms that aim to minimize execution time while maximizing the quality of the architectures found. The algorithms must be evolutionary, as they are popular for solving problems with vast spaces of possibilities. After analyzing each algorithm individually, a general analysis will be conducted to outline the best methodologies and strategies for achieving the proposed objectives. Then, is done the implementation of a case study to help define the type of algorithm and strategy to be used in the second phase of this project. In the conclusion of Project I, which found two metrics that estimate the quality of a convolutional neural network architecture without any training. In this second phase, these metrics were implemented in genetic programming algorithms, which, unlike the state of the art in Project I, have complex representations such as grammars and graphs. The code of these algorithms was adapted to use the implementation of these metrics in Tensorflow, and the results were then extracted through intensive training of the best architectures found. It was found that the search time was better than the state of the art and the accuracy was close to the state of the art and better than the original genetic programming algorithms. It was also concluded that the best combination is the greedy metric, NASWOT, with the CGP-CNN algorithm

Description

Keywords

Redes neuronais convolucionais, Procura de arquitetura de redes neuronais, Otimização de arquitetura de redes neuronais, Algoritmos evolutivos, Deep learning, Convolutional neural networks, Neural architecture search, Evolutionary algorithms, Artificial intelligence

Citation

MARTINS, Tiago João Amaral (2024) - Optimização de redes neuronais convolucionais. Castelo Branco : IPCB. EST. 128 p. Relatório do Trabalho de Fim de Curso de Engenharia Informática.