Dissertação (mestrado)—Universidade de Brasília, Faculdade de Tecnologia, Departamento de Engenharia Mecânica, 2016. / Submitted by Fernanda Percia França (fernandafranca@bce.unb.br) on 2016-12-14T16:07:22Z
No. of bitstreams: 1
2016_ThiagoMarquesSiqueira.pdf: 2402062 bytes, checksum: b8c2b9d950b6e29fda7a40d8e0704173 (MD5) / Approved for entry into archive by Raquel Viana(raquelviana@bce.unb.br) on 2017-01-11T18:06:23Z (GMT) No. of bitstreams: 1
2016_ThiagoMarquesSiqueira.pdf: 2402062 bytes, checksum: b8c2b9d950b6e29fda7a40d8e0704173 (MD5) / Made available in DSpace on 2017-01-11T18:06:23Z (GMT). No. of bitstreams: 1
2016_ThiagoMarquesSiqueira.pdf: 2402062 bytes, checksum: b8c2b9d950b6e29fda7a40d8e0704173 (MD5) / 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. _________________________________________________________________________________________________ ABSTRACT / 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.
Identifer | oai:union.ndltd.org:IBICT/oai:repositorio.unb.br:10482/22162 |
Date | 15 July 2016 |
Creators | Siqueira, Thiago Marques |
Contributors | Jacobi, Ricardo Pezzuol |
Source Sets | IBICT Brazilian ETDs |
Language | Portuguese |
Detected Language | Portuguese |
Type | info:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/masterThesis |
Source | reponame:Repositório Institucional da UnB, instname:Universidade de Brasília, instacron:UNB |
Rights | A 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/openAccess |
Page generated in 0.0028 seconds