Utilize este link para identificar ou citar este item:
https://bdm.unb.br/handle/10483/22823
Título: | Projeto e treinamento de redes neurais em hardware FPGA usando computação estocástica |
Autor(es): | Carvalho, Lucas Neves |
Orientador(es): | Lamar, Marcus Vinicius |
Assunto: | Variáveis aleatórias Computação estocástica |
Data de apresentação: | 13-Jul-2016 |
Data de publicação: | 2-Dez-2019 |
Referência: | CARVALHO, Lucas Neves. Projeto e treinamento de redes neurais em hardware FPGA usando computação estocástica. 2016. 93 f., il. Trabalho de Conclusão de Curso (Bacharelado em Engenharia da Computação)—Universidade de Brasília, Brasília, 2016. |
Resumo: | A utilização de redes neurais na solução de problemas em aplicações em tempo real requer
o uso extensivo de circuitos paralelos e um bom equilíbrio entre alto desempenho e
eficiência energética. Estudos anteriores demonstram que dispositivos FPGA satisfazem
estes critérios, porém a capacidade lógica limitada dos mesmos impede a implementação
de grandes redes que se beneficiem dos conceitos de Deep Learning. A Computação Estocástica
permite que operações como adição e multiplicação sejam realizadas por portas
lógicas individuais, simplificando extremamente o circuito neural. Este trabalho propõe
a implementação de redes neurais baseadas em operações puramente estocásticas, viabilizando
grandes estruturas e mantendo a paralelização completa. Ademais, apresentamos
técnicas estocásticas que possibilitam o treinamento em hardware das redes implementadas
de forma eficiente. Operações booleanas simples, aproximações de funções 2D e
problemas de classificação são usados para verificar a eficácia da solução proposta. |
Abstract: | Solving real world problems with neural networks in real time applications requires extensive
use of parallel circuitry and a good balance between high performance and energy
efficiency. FPGA devices have beeen shown to meet the criteria, but their limited amount
of logic resources prohibits the implementation of large networks that take advantage of
deep learning techniques. Stochastic Computing allows operations like addition and multiplication
to be performed by single logic gates, extremely simplifying neural circuitry.
This work proposes the implementation of neural networks based on purely stochastic
operations, supporting large structures while maintaining full parallelization. Furthermore,
we also present stochastic techniques to enable high speed online training of these
networks. Simple boolean operations, 2D function approximations and classification problems
are used to verify the efficacy of the proposed solution. |
Informações adicionais: | Trabalho de Conclusão de Curso (graduação)—Universidade de Brasília, Instituto de Ciências Exatas, Departamento de Ciência da Computação, 2018. |
Aparece na Coleção: | Engenharia da Computação
|
Este item está licenciado na Licença Creative Commons