Implementação de um classificador de imagens baseado em redes neurais em sistemas embarcados

Detalhes bibliográficos
Autor(a) principal: Siqueira, Thiago Marques
Data de Publicação: 2016
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UnB
Texto Completo: http://repositorio.unb.br/handle/10482/22162
http://dx.doi.org/10.26512/2016.07.D.22162
Resumo: Dissertação (mestrado) — Universidade de Brasília, Faculdade de Tecnologia, Departamento de Engenharia Mecânica, 2016.
id UNB_9638f2ae2d7dab74f33c1282daaed686
oai_identifier_str oai:repositorio.unb.br:10482/22162
network_acronym_str UNB
network_name_str Repositório Institucional da UnB
repository_id_str
spelling Implementação de um classificador de imagens baseado em redes neurais em sistemas embarcadosRedes neuraisClassificação de imagensSistemas embarcados (Computadores)Dissertação (mestrado) — Universidade de Brasília, Faculdade de Tecnologia, Departamento de Engenharia Mecânica, 2016.Durante décadas, classificadores baseados em rede neural feedforward (FNN, do inglês, feedforward neural network) têm sido amplamente utilizados em muitos problemas de classificação, como imagem [1] e reconhecimento de fala [2]. Porém essa descoberta veio com algumas desvantagens, o grande número de multiplicações em ponto flutuante necessário em tempo de teste e a quantidade de memória necessária para armazenar os parâmetros treinados. Isso ocorre porque a maioria dos seus cálculos são produto de matrizes por vetores, onde as imagens de entrada dispostas como vetores são multiplicados por uma matriz de parâmetros aprendida para um conjunto específico de imagens. Quando implementados em hardware dedicado, a principal vantagem de um classificador FNN sobre os outros classificadores é a sua natureza inerente de paralelizar as operações de multiplicação. No entanto, quando o número de parâmetros de um classificador FNN é grande, surge o desafio na alta quantidade de recursos necessários para implementar operações de multiplicação seguida de acumulação (MAC, do inglês multiply-accumulate operations) e a dificuldade de transferir os dados da memória para a unidade de processamento com uma baixa latência. Houve uma extensa pesquisa na literatura sobre estratégias de quantização para resolver esses problemas. Entre essas estratégias de quantização, o xQuant [3] quantiza os parâmetros do classificador FNN primeiramente reescalonando para valores inteiros e, em seguida, aproximando-os a potência de 2 mais próximo. Quando um classificador quantizado com xQuant é utilizado para classificar imagens, cada multiplicação de ponto flutuante é substituída por uma única operação de deslocamento de bits. No entanto, xQuant ainda não foi implementado em um hardware dedicado. Portanto, nessa dissertação de mestrado é apresentado uma análise da implementação do xQuant em FPGA. Usando o algoritmo de aprendizagem classificador FNN LAST (Learning Algorithm for Soft-Thresholding), o classificador foi treinado para um problema de classificação de textura e utilizado este classificador como estudo de caso. Esse foi implementado como um co-processador (Hardware / Software), uma arquitetura usando o ponto flutuante de precisão simples (Fp) e uma versão quantizada do classificador usando xQuant (xQ). Ambos os projetos foram implementados em um Xilinx Zynq-7020 SoC, utilizando a ferramenta Xilinx Vivado HLS. Os resultados mostram que xQ executa 3 vezes mais rápida do que Fp e o uso de recursos da FPGA como se segue: FF de 52% para 7%; LUTs de 63% para 15%; LUTRAMs de 10% para 1%; dispositivo de DSP de 29% para 0. Com essa redução de recursos é uma alternativa bem vista, para sistemas embarcados críticos, onde a quantidade de recursos e de energia disponíveis são limitados.For decades, classifiers based on Feedforward Neural Network - FNN have been widely used in many classification problems, such as image [1] and recognition voice [2]. However this discovery came with some drawbacks, the number of multiplications necessary in floating point in test time and the amount of memory required to store the trained parameters. This it happens because the most of calculations are multiplications between matrices and vectors, where the input images arranged as vectors are multiplied by a parameter array learned for a specific set of images. When implemented in dedicated hardware, the main advantage of a FNN classifier on the other classifiers is their inherent nature to parallelize the multiplication operations. However, when the number of parameters of a FNN classifier is large, the challenge in high amount of resources needed to implement Multiply- Accumulate Operations - MAC and the difficulty of transferring data from memory to the processing unit with a low latency. There was an extensive literature search on quantization strategies to solve these problems. Among these quantization strategies, xQuant [3] first rescales them to integer values and then quantizes them by approaching each weight to its nearest power of two. When a quantized classifier xQuant is used to classify images, each floating- point multiplication is replaced by a single bit shift operation. However, xQuant has not yet been implemented in a dedicated hardware. Therefore, in this master thesis is presented an analysis of the implementation of xQuant on FPGA. Using the classifier Learning Algorithm for Soft-Thresholding - FNN LAST, the classifier was trained to a texture classification problem and used this classifier as a case study. This was implemented as a coprocessor (Hardware / Software), an architecture using the floating-point single precision (Fp) and a quantized version of the classifier using xQuant (xQ). Both projects were implemented on Xilinx Zynq- 7020 SoC, using the Xilinx Vivado HLS tool. The results show that performs xQ 3 times faster than Fp and use of FPGA resources as follows: FFs from 52% to 7%; LUTs from 63% to 15%; LUTRAMs from 10% to 1%; DSP slices from 29% to 0. With this reduction in resources is an alternative view and, for critical embedded systems where the amount of resources and energy are limited.Faculdade de Tecnologia (FT)Departamento de Engenharia Mecânica (FT ENM)Programa de Pós-Graduação em Sistemas MecatrônicosJacobi, Ricardo PezzuolSiqueira, Thiago Marques2017-01-11T18:06:23Z2017-01-11T18:06:23Z2017-01-112016-07-15info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfSIQUEIRA, Thiago Marques. Implementação de um classificador de imagens baseado em redes neurais em sistemas embarcados. 2016. vi, 76 f., il. Dissertação (Mestrado em Sistemas Mecatrônicos) — Universidade de Brasília, Brasília, 2016.http://repositorio.unb.br/handle/10482/22162http://dx.doi.org/10.26512/2016.07.D.22162A concessão da licença deste item refere-se ao termo de autorização impresso assinado pelo autor com as seguintes condições: Na qualidade de titular dos direitos de autor da publicação, autorizo a Universidade de Brasília e o IBICT a disponibilizar por meio dos sites www.bce.unb.br, www.ibict.br, http://hercules.vtls.com/cgi-bin/ndltd/chameleon?lng=pt&skin=ndltd sem ressarcimento dos direitos autorais, de acordo com a Lei nº 9610/98, o texto integral da obra disponibilizada, conforme permissões assinaladas, para fins de leitura, impressão e/ou download, a título de divulgação da produção científica brasileira, a partir desta data.info:eu-repo/semantics/openAccessporreponame:Repositório Institucional da UnBinstname:Universidade de Brasília (UnB)instacron:UNB2024-03-08T19:01:16Zoai:repositorio.unb.br:10482/22162Repositório InstitucionalPUBhttps://repositorio.unb.br/oai/requestrepositorio@unb.bropendoar:2024-03-08T19:01:16Repositório Institucional da UnB - Universidade de Brasília (UnB)false
dc.title.none.fl_str_mv Implementação de um classificador de imagens baseado em redes neurais em sistemas embarcados
title Implementação de um classificador de imagens baseado em redes neurais em sistemas embarcados
spellingShingle Implementação de um classificador de imagens baseado em redes neurais em sistemas embarcados
Siqueira, Thiago Marques
Redes neurais
Classificação de imagens
Sistemas embarcados (Computadores)
title_short Implementação de um classificador de imagens baseado em redes neurais em sistemas embarcados
title_full Implementação de um classificador de imagens baseado em redes neurais em sistemas embarcados
title_fullStr Implementação de um classificador de imagens baseado em redes neurais em sistemas embarcados
title_full_unstemmed Implementação de um classificador de imagens baseado em redes neurais em sistemas embarcados
title_sort Implementação de um classificador de imagens baseado em redes neurais em sistemas embarcados
author Siqueira, Thiago Marques
author_facet Siqueira, Thiago Marques
author_role author
dc.contributor.none.fl_str_mv Jacobi, Ricardo Pezzuol
dc.contributor.author.fl_str_mv Siqueira, Thiago Marques
dc.subject.por.fl_str_mv Redes neurais
Classificação de imagens
Sistemas embarcados (Computadores)
topic Redes neurais
Classificação de imagens
Sistemas embarcados (Computadores)
description Dissertação (mestrado) — Universidade de Brasília, Faculdade de Tecnologia, Departamento de Engenharia Mecânica, 2016.
publishDate 2016
dc.date.none.fl_str_mv 2016-07-15
2017-01-11T18:06:23Z
2017-01-11T18:06:23Z
2017-01-11
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv SIQUEIRA, Thiago Marques. Implementação de um classificador de imagens baseado em redes neurais em sistemas embarcados. 2016. vi, 76 f., il. Dissertação (Mestrado em Sistemas Mecatrônicos) — Universidade de Brasília, Brasília, 2016.
http://repositorio.unb.br/handle/10482/22162
http://dx.doi.org/10.26512/2016.07.D.22162
identifier_str_mv SIQUEIRA, Thiago Marques. Implementação de um classificador de imagens baseado em redes neurais em sistemas embarcados. 2016. vi, 76 f., il. Dissertação (Mestrado em Sistemas Mecatrônicos) — Universidade de Brasília, Brasília, 2016.
url http://repositorio.unb.br/handle/10482/22162
http://dx.doi.org/10.26512/2016.07.D.22162
dc.language.iso.fl_str_mv por
language por
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.source.none.fl_str_mv reponame:Repositório Institucional da UnB
instname:Universidade de Brasília (UnB)
instacron:UNB
instname_str Universidade de Brasília (UnB)
instacron_str UNB
institution UNB
reponame_str Repositório Institucional da UnB
collection Repositório Institucional da UnB
repository.name.fl_str_mv Repositório Institucional da UnB - Universidade de Brasília (UnB)
repository.mail.fl_str_mv repositorio@unb.br
_version_ 1810580707374792704