Convolutional neural networks for efficient object detection on ultra low-power platforms

At the University of Bologna, the Microelectronics Research Group has been working on smart data analytics on ultra-low-power sensors for the past few years. This smart analysis is in many cases based on convolutional neural networks as the fundamental tool to extract features and information out of...

Descripción completa

Detalles Bibliográficos
Autor: Pereira Vieito, Pedro José
Tipo de recurso: tesis de maestría
Fecha de publicación:2017
País:España
Institución:Universitat Politècnica de Catalunya (UPC)
Repositorio:UPCommons. Portal del coneixement obert de la UPC
Idioma:inglés
OAI Identifier:oai:upcommons.upc.edu:2117/117083
Acceso en línea:https://hdl.handle.net/2117/117083
Access Level:acceso abierto
Palabra clave:Neural networks (Computer science)
convolutional neural network
quantization
low-power device
smart analysis
image classification
low-resolution convolutions
deep learning
Keras
Python
Xarxes neuronals (Informàtica)
Àrees temàtiques de la UPC::Enginyeria de la telecomunicació::Telemàtica i xarxes d'ordinadors
Descripción
Sumario:At the University of Bologna, the Microelectronics Research Group has been working on smart data analytics on ultra-low-power sensors for the past few years. This smart analysis is in many cases based on convolutional neural networks as the fundamental tool to extract features and information out of various raw data streams. Applying these techniques on the acquisition device itself can help reducing data transfer and storage but requires neural network models with small memory footprint and a really constrained computation workload. This work proposes a software architecture and advanced quantization techniques to obtain image classification models with high accuracy, small size and low memory footprint that can properly work on a low-power device. The design is specifically tailored to support the low-resolution environment available in the PULP platform, which includes a hardware convolution engine to efficiently compute convolution operations required by neural network models.