Title: | Exploração de Espaço de Projeto Automatizado para Arquiteturas Aceleradoras de Redes Neurais |
Author: | Simon, Luis Antonio Spader |
Abstract: |
Redes Neurais estão em tendência crescente de uso devido à sua comprovada eficiência para resolver problemas complexos como reconhecimento facial e geração de texto em linguagem natural. No entanto, a execução destes algoritmos em processadores de propósito geral ou mesmo em GPUs exige um consumo considerável de energia, gerando custos financeiros e também ambientais. Diversos estudos demonstram que o uso de arquiteturas dedicadas fornecem um notável aumento de eficiência energética e elevado poder de processamento. Contudo, o projeto de arquiteturas dedicadas requer tempo para otimizar os diversos parâmetros de projeto (como área, potência e atraso), pois cada solução precisa ser descrita em HDL, sintetizada e verificada. Estes dois processos de otimização combinados resultam em um espaço de projeto multidimensional, portanto soluções que buscam acelerar a exploração deste espaço são de extrema importância. Logo, a proposta deste trabalho se baseia na construção de um framework para geração automática de descrição de hardware em linguagem VHDL com objetivo de acelerar o tempo de desenvolvimento destas arquiteturas. O framework proposto suporta a tradução de diferentes arquiteturas de Redes Neurais através de configurações parametrizáveis para largura de bits dos dados, número de camadas, quantidade de neurônios por camada e função de ativação. Uma implementação em Python foi desenvolvida para servir como referência e permitir uma análise inicial do erro obtido através da quantização (redução da largura de bits) das entradas e pesos da rede. Como estudo de caso, a solução proposta analisou arquiteturas de Redes Neurais para reconhecimento de dígitos na tecnologia 65nm da STMicroelectronics. Os resultados de síntese são comparados em termos de área, atraso e consumo de potência. Além disso, o efeito da quantização na acurácia dos modelos também é analisado e discutido. Após isto são apresentados os resultados de possíveis otimizações aritméticas à serem feitas nas arquiteturas geradas automaticamente pelo framework. O estudo revelou que a largura de bits é o fator que mais impacta na área e o consumo de energia. Modelos quantizados com 8 ou 10 bits se aproximam bastante da acurácia dos modelos originais, mas camadas extras apresentam um maior erro associado. Nas otimizações aritméticas, a substituição de multiplicadores por blocos de soma e deslocamentos otimiza a área, ao custo de maior atraso crítico e consumo de potência, sendo mais adequada em situações de restrição de área. Neural Networks are increasingly used due to their proven efficiency in solving complex problems such as facial recognition and natural language text generation. However, running these algorithms on general-purpose processors or even GPUs requires considerable energy consumption, generating financial and environmental costs. Several studies demonstrate that the use of dedicated architectures provides a notable increase in energy efficiency and high processing power. However, the design of dedicated architectures requires time to optimize the various design parameters (such as area, power, and delay), as each solution needs to be described in HDL, synthesized, and verified. These two optimization processes combined result in a multidimensional design space, therefore solutions that seek to accelerate the exploration of this space are extremely important. Therefore, the proposal of this work is based on the construction of a framework for automatic generation of hardware description in VHDL language with the aim of accelerating the development time of these architectures. The proposed framework supports the translation of different Neural Network architectures through parameterizable settings for data bit width, number of layers, number of neurons per layer, and activation function. An implementation in Python was developed to serve as a reference and allow an initial analysis of the error obtained through quantization (reducing the bit width) of the network inputs and weights. As a case study, the proposed solution analyzed Neural Network architectures for digit recognition in STMicroelectronics's 65nm technology. The synthesis results are compared in terms of area, delay, and power consumption. Furthermore, the effect of quantization on model accuracy is also analyzed and discussed. After this, the results of possible arithmetic optimizations to be made in the architectures automatically generated by framework are presented. The study revealed that bit width is the factor that most impacts area and energy consumption. Quantized models with 8 or 10 bits come very close to the accuracy of the original models, but extra layers have a greater associated error. In arithmetic optimizations, replacing multipliers with sum and shift blocks optimizes the area, at the cost of greater critical delay and power consumption, being more suitable in situations of area restrictions. |
Description: | TCC (graduação) - Universidade Federal de Santa Catarina, Centro Tecnológico, Engenharia Eletrônica. |
URI: | https://repositorio.ufsc.br/handle/123456789/252251 |
Date: | 2023-11-13 |
Files | Size | Format | View | Description |
---|---|---|---|---|
TCC_Luis_Spader_Simon_NN_MLP_framework.pdf | 5.615Mb |
View/ |
TCC |