Skip navigation
Use este identificador para citar ou linkar para este item: https://repositorio.ufpe.br/handle/123456789/36685

Compartilhe esta página

Título: InferenCNN: Uma biblioteca para Inferência de Redes Neurais Convolucionais Multiplataforma em OpenCL
Autor(es): ANJOS, Jefferson Ramos Lucas dos
Palavras-chave: Sistemas Embarcados; Inferência; Redes Neurais Convolucionais; Múltiplos Dispositivos
Data do documento: 14-Mar-2019
Editor: Universidade Federal de Pernambuco
Citação: ANJOS, Jefferson Ramos Lucas dos. InferenCNN: Uma biblioteca para Inferência de Redes Neurais Convolucionais Multiplataforma em OpenCL. 2019. Dissertação (Mestrado em Ciências da Computação) – Universidade Federal de Pernambuco, Recife, 2019.
Abstract: As Redes Neurais Convolucionais (Convolutional Neural Networks - CNN) têm se mostrado eficazes para problemas de Visão Computacional, como: classificação, detecção e reconhecimento de padrões. Assim, muitas bibliotecas, frameworks e soluções têm sido desenvolvidas para treinar e realizar a inferência dessas redes em dispositivos de computação. A inferência é a fase de uso de uma Rede Neural, em que novos dados são propagados pela rede, já treinada, a fim de se obter uma classificação, detecção ou reconhecimento de algum padrão. Nos últimos anos muitas arquiteturas de CNN’s foram desenvolvidas tendo como objetivo acelerar o treinamento e a inferência da rede neural, suprir a necessidade de problemas mais complexos e dar suporte à dispositivos de computação com limitação de memória e energia, como os dispositivos mobiles. Assim, com essa grande variedade de arquiteturas de CNN’s e dispositivos de computação, os atuais frameworks não dão suporte à alguns tipos de dispositivos ou se limitam à dispositivos de um fabricante específico. Neste trabalho apresentamos a InferenCNN, uma biblioteca multiplataforma capaz de realizar a inferência dos modelos de CNN’s, mapeando kernels OpenCL (Open Computing Language) em dispositivos de computação como CPU’s (Central Processing Unit), GPU’s (Graphics Processing Unit) e FPGA’s (Field Programmable Gate Array). A utilização do framework OpenCL, permite que a biblioteca independa do dispositivo ou fabricante do dispositivo, dando flexibilidade ao executar a inferência das arquiteturas de CNN’s. A InferenCNN apresenta um parser de pesos que permite a execução de arquiteturas de CNN’s que foram treinadas em diferentes frameworks, como Tensorflow, Caffe e Pytorch. Apresenta também um gráfico de fluxo que executa as camadas da CNN de forma modular, deixando espaço para que modificações e otimizações possam ser feitas, e que novas camadas e arquiteturas possam ser implementadas. Os experimentos realizados analisaram a InferenCNN em dispositivos diferentes e compararam as implementações com o framework Tensorflow e aceleradores em FPGA’s. Os resultados se mostraram promissores, apresentando melhoria de desempenho na inferência da arquitetura Inception quando comparada com o Tensorflow e desempenho próximo em outras arquiteturas. Quando comparada com aceleradores em FPGA a InferenCNN se mostrou com resultados inferiores em relação ao desempenho, mas com uma maior flexibilidade em realizar a inferência de várias arquiteturas de CNN.
URI: https://repositorio.ufpe.br/handle/123456789/36685
Aparece nas coleções:Dissertações de Mestrado - Ciência da Computação

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
DISSERTAÇÃO Jefferson Ramos Lucas dos Anjos.pdf6,51 MBAdobe PDFThumbnail
Visualizar/Abrir


Este arquivo é protegido por direitos autorais



Este item está licenciada sob uma Licença Creative Commons Creative Commons