Mostrar el registro sencillo del ítem
Analysis and exploration of convolution and image recognition CNNs with approximate computing techniques
| dc.contributor.advisor | Bampi, Sergio | pt_BR |
| dc.contributor.author | Paiva, Pedro Koinaski de | pt_BR |
| dc.date.accessioned | 2026-01-16T08:02:24Z | pt_BR |
| dc.date.issued | 2024 | pt_BR |
| dc.identifier.uri | http://hdl.handle.net/10183/300256 | pt_BR |
| dc.description.abstract | Deep Neural Networks (DNNs) began rising in popularity in the last ten years thanks to excellent computing power and computing storage advances made by nanoelectron ics, which enable exponential increases in algorithm complexity. With this rise, custom hardware started to become a necessity to process large and complex models with effi cient power, area, and delay. Many hardware accelerators for DNNs utilize approximate computing techniques to further improve its efficiency, but not without tradeoffs in ac curacy. In order to find the best balance between savings and accuracy, design space exploration has become a major research field, with many frameworks aiming to reduce exploration time and find the hardware variation that produces the best results. This work proposes to explore design techniques to approximate convolution and image recognition convolution neural networks (CNNs) in hardware. To this end, we explore approximate computing techniques for designing arithmetic operators. By utilizing the MAxPy frame work to support multi-level design exploration, multiple approximate VLSI designs at the logic level can be systematically explored for an Eyeriss-based convolution accelerator regarding circuit area, power consumption, and delay savings while assessing the result ing impacts on computation accuracy and inference quality. The approximate designs are generated by substituting exact multipliers and adders with approximate ones described at the logic level, leveraging the AxArith library presented in MAxPy. The hardware de signs are verified and co-simulated under two testbenches: one that evaluates their error in a convolution operation and another that tests the approximate VLSI hardware in the context of an image recognition CNN executing inferences for an MNIST handwritten dataset. The design exploration method in multiple abstraction levels uses the PyTorch library combined with MAxPy to create an RTL-Python CNN with layers of integration from the RTL level to the algorithm execution level. Over 900 different HDL combina tions of hardware accelerators were generated in this automated design exploration by MAxPy, and a 12.28%- 23.19% circuit area reduction and 19.24%- 27.89% power con sumption reduction in the VLSI operators was achieved with only 0.64% to 9.46% mean percentual error (MAPE) for the convolution environment. In the CNN testbench, design exploration was able to maintain the same 98% detection accuracy as the exact model but with 38.13% circuit area savings and 39.65% power consumption savings. | en |
| dc.description.abstract | Redes Neurais Profundas (DNNs)começaram a ganhar popularidade nos últimos dez anos graças aos avanços significativos em poder computacional e armazenamento proporcionados pela nanoeletrônica, que permitem aumentos exponenciais na complexidade dos algoritmos. Com esse crescimento, o hardware especializado começou a se tornar uma necessidade para processar modelos grandes e complexos com eficiência em termos de potência, área e atraso. Muitos aceleradores de hardware para DNNs utilizam técnicas de computação aproximada para melhorar ainda mais sua eficiência, mas com o custo de redução da precisão. Para encontrar o melhor equilíbrio entre eficiência e precisão, a exploração do espaço de design tornou-se um campo de pesquisa importante, com muitos frameworks visando reduzir o tempo de exploração e encontrar a variação de hardware que produz os melhores resultados. Este trabalho propõe explorar técnicas de design para aproximar convolução e Redes Neurais Convolucionais (CNNs) de reconhecimento de imagem em hardware. Para isso, investigamos técnicas de computação aproximada para projetar operadores aritméticos. Utilizando o framework MAxPy para apoiar a explora ção de design multinível, diversos projetos VLSI aproximados realizados no nível lógico podem ser explorados sistematicamente para um acelerador de convolução baseado no Eyeriss, considerando a redução da área do circuito, do consumo de energia e do atraso, enquanto são avaliados os impactos resultantes na precisão da computação e na quali dade da inferência. Os projetos aproximados são gerados substituindo multiplicadores e somadores exatos por aproximados descritos no nível lógico, aproveitando a biblioteca AxArith presente no MAxPy. Os designs de hardware são verificados e co-simulados sob dois testbenches: um que avalia o erro em uma operação de convolução e outro que testa o hardware VLSI aproximado no contexto de uma CNN de reconhecimento de imagem executando inferências para um conjunto de dados MNIST. O método de exploração de design em múltiplos níveis de abstração utiliza a biblioteca PyTorch combinada com o MAxPy para criar uma CNN RTL-Python com camadas de integração do nível RTL ao nível de execução do algoritmo. Mais de 900 combinações diferentes de HDL de acelera dores de hardware foram geradas nesta exploração automatizada de design pelo MAxPy, e foi alcançada uma redução de área de circuito de 12,28% a 23,19% e uma redução no consumo de energia de 19,24% a 27,89% nos operadores VLSI, com apenas 0,64% a 9,46% de erro absoluto percentual médio (MAPE) para o ambiente de convolução. No testbench de CNN, a exploração de design conseguiu manter a mesma precisão de 98% do modelo exato, mas com reduççoes de 38,13% na área do circuito e 39,65% no consumo de energia. | pt_BR |
| dc.format.mimetype | application/pdf | pt_BR |
| dc.language.iso | por | pt_BR |
| dc.rights | Open Access | en |
| dc.subject | Redes neurais | pt_BR |
| dc.subject | VLSIH ardware acceleration | en |
| dc.subject | Aceleradores de hardware | pt_BR |
| dc.subject | Approximate computing | en |
| dc.subject | Computação aproximativa | pt_BR |
| dc.subject | Multi-level hardware simulation | en |
| dc.subject | Eyeriss | en |
| dc.subject | Convolução | pt_BR |
| dc.subject | MAxPy framework | en |
| dc.title | Analysis and exploration of convolution and image recognition CNNs with approximate computing techniques | pt_BR |
| dc.title.alternative | Análise e exploração de convolução e CNNs de reconhecimento de imagem com técnicas de computação aproximada | pt |
| dc.type | Trabalho de conclusão de graduação | pt_BR |
| dc.contributor.advisor-co | Pereira, Pedro Tauã Lopes | pt_BR |
| dc.identifier.nrb | 001210900 | pt_BR |
| dc.degree.grantor | Universidade Federal do Rio Grande do Sul | pt_BR |
| dc.degree.department | Instituto de Informática | pt_BR |
| dc.degree.local | Porto Alegre, BR-RS | pt_BR |
| dc.degree.date | 2024 | pt_BR |
| dc.degree.graduation | Ciência da Computação: Ênfase em Engenharia da Computação: Bacharelado | pt_BR |
| dc.degree.level | graduação | pt_BR |
Ficheros en el ítem
Este ítem está licenciado en la Creative Commons License
-
Tesinas de Curso de Grado (40536)

