Efficient Neural Network Inference for Resource Constrained Devices

Author

Borrego Carazo, Juan

Director

Carrabina Bordoll, Jordi

Castells Rufas, David

Date of defense

2022-11-21

Pages

242 p.



Doctorate programs

Universitat Autònoma de Barcelona. Programa de Doctorat en Enginyeria Electrònica i de Telecomunicació

Abstract

Els avenços de la darrera dècada en l’aprenentatge profund han suposat un gran salt en els resultats d’última generació pel que fa a tasques com la classificació d’imatges, la traducció d’idiomes i moltes altres. Tanmateix, amb aquest èxit, hi ha hagut un augment relacionat en la complexitat i la mida del model, que ha incrementat els requisits de maquinari tant per a la formació com per a la inferència (tant generalment com inicialment limitats a les GPU). A més, les capacitats del maquinari (rendiment OPS, memòria, rendiment, latència, energia) han suposat una limitació inicial per desplegar aplicacions en plataformes i aplicacions amb recursos limitats, com ara plataformes mòbils o incrustades. Hi ha hagut moltes iniciatives per reduir el temps de formació i els costos energètics, i millorar l’eficiència de les dades durant la fase de desenvolupament. Igualment, també hi ha hagut una investigació profunda per optimitzar els models d’aprenentatge profund amb un enfocament en la inferència i el desplegament: disminució de la complexitat del model, la mida, la latència i el consum de memòria. En aquesta direcció, hi ha cinc mètodes d’optimització que han destacat: poda, quantificació, cerca d’arquitectura neuronal, operacions eficients i destil·lació. Paral·lelament, per tal de permetre el desplegament d’inferència en plataformes de maquinari especialitzades, han aparegut nous frameworks (com ara CMSIS-NN o uTensor per a MCUS, i TF Lite per a plataformes mòbils). Aquests marcs inclouen diverses característiques per al desplegament de models, però el més important, el punt crucial és si admeten les operacions i optimitzacions específiques del model, assegurant el desplegament final de l’aplicació. Tot plegat, des dels procediments d’optimització fins als marcs de conversió i desplegament, el procediment per desenvolupar models eficients basats en NN i desplegar-los en maquinari restringit ha millorat sens dubte, encara que amb algunes limitacions. En aquest sentit, aquesta tesi s’emmarca en aquestes millores i limitacions: en primer lloc, amb el desenvolupament i millora de tècniques d’optimització de NN, i en segon lloc, amb l’ús i desenvolupament de programari per portar els models optimitzats. Tot amb un focus especial en tres casos industrials i pràctics que són els principals motors dels desenvolupaments: la interacció home-màquina d’automoció, ITM en dispositius mòbils i guia broncoscòpia. En el primer cas, mostrem el desplegament i l’optimització de RNN a les MCU, així com l’ús i la millora de l’optimització bayesiana i els mètodes NAS per oferir xarxes mínimes però de bon rendiment. En conjunt, oferim un marc per convertir i desplegar xarxes automàticament en MCU basades en Cortex-M. En el segon entorn, utilitzem operacions de quantificació i eficients per portar una xarxa ITM als dispositius mòbils per a una inferència eficient, proporcionant millores en la latència fins a 100 vegades amb només una pèrdua de precisió del 3%. Finalment, desenvolupem una xarxa de guia de broncoscòpia eficient amb poda estructurada i operacions eficients, que proporciona una reducció de x4 de mida NN i una millora del ~14% en la precisió per a la localització de la posició.


Los avances de la última década en el aprendizaje profundo han supuesto un gran salto en los resultados del estado del arte en tareas como la clasificación de imágenes, la traducción de idiomas y muchas otras. Sin embargo, con tal éxito, ha habido un aumento en la complejidad y el tamaño de los modelos, lo que ha incrementado los requisitos de hardware tanto para el entrenamiento como para la inferencia. Además, las capacidades del hardware (rendimiento OPS, memoria, rendimiento, latencia, energía) han supuesto una limitación inicial para implementar aplicaciones en plataformas y aplicaciones con recursos limitados, como plataformas móviles o integradas. Ha habido muchas iniciativas para reducir el tiempo de capacitación y los costos de energía, y mejorar la eficiencia de los datos durante la fase de desarrollo. Del mismo modo, también ha habido una investigación profunda para optimizar los modelos de aprendizaje profundo con un enfoque en la inferencia y el despliegue: la disminución de la complejidad, el tamaño, la latencia y el consumo de memoria del modelo. En esa dirección, se han destacado cinco métodos de optimización: poda, cuantización, búsqueda de arquitectura neuronal, operaciones eficientes y destilación. Paralelamente, con el fin de permitir el despliegue de la inferencia en plataformas de hardware especializadas, han aparecido nuevos marcos (como CMSIS-NN o uTensor para MCUS y TF Lite para plataformas móviles). Esos marcos incluyen varias características para la implementación de modelos, pero lo más importante es que el punto crucial es si admiten las operaciones y optimizaciones específicas del modelo, lo que garantiza la implementación final de la aplicación. En general, desde los procedimientos de optimización hasta los marcos de conversión e implementación, el procedimiento para desarrollar modelos eficientes basados en NN e implementarlos en hardware restringido sin duda ha mejorado, aunque todavía con algunas limitaciones. En tal sentido, esta tesis se enmarca en dichas mejoras y limitaciones: primero, con el desarrollo y mejora de técnicas de optimización de NN, y segundo, con el uso y desarrollo de software para portar los modelos optimizados. Todo ello con especial foco en tres casos industriales y prácticos que son los principales impulsores de los desarrollos: interacción hombre-máquina en automoción, ITM en dispositivos móviles y guía broncoscópica. En el primer caso, mostramos la implementación y optimización de RNN en MCU, así como el uso y la mejora de la optimización bayesiana y los métodos NAS para ofrecer redes mínimas pero de buen rendimiento. En total, ofrecemos un marco para convertir e implementar automáticamente redes en MCU basadas en Cortex-M. En el segundo entorno, empleamos la cuantificación y operaciones eficientes para llevar una red ITM a dispositivos móviles para una inferencia eficiente, proporcionando mejoras en la latencia de hasta 100x con solo una pérdida de precisión del 3 %. Finalmente, desarrollamos una red de guía de broncoscopia eficiente con poda estructurada y operaciones eficientes, que proporciona una reducción de x4 del tamaño de NN y una mejora de ~ 14% en la precisión para la localización de la posición.


Last decade advances in deep learning have supposed a great leap in state-of-the-art results with regard to tasks such as image classification, language translation, and many others. However, with such success, there has been a related increase in model complexity and size, which has incremented the hardware requirements both for training and inference (both generally and initially limited to GPUs). Moreover, the hardware capabilities (OPS performance, memory, throughput, latency, energy) have supposed an initial limitation to deploying applications in resource-constrained platforms and applications, such as mobile or embedded platforms. There have been many initiatives to reduce training time, and energy costs, and improve data efficiency during the development phase. Equally, there has also been profound research to optimize deep learning models with a focus on inference and deployment: decreasing model complexity, size, latency, and memory consumption. In such direction, there are five optimization methods that have stood out: pruning, quantization, neural architecture search, efficient operations, and distillation. In parallel, in order to enable inference deployment in specialized hardware platforms, new frameworks have appeared (such as CMSIS-NN or uTensor for MCUS, and TF Lite for mobile platforms). Those frameworks include several features for the deployment of models, but most importantly, the crucial point is if they support the specific model operations and optimizations, ensuring the final application deployment. All in all, from optimization procedures to conversion and deployment frameworks, the procedure of developing efficient NN-based models and deploying them to constrained hardware has certainly improved, albeit with still some limitations. In such a sense, this thesis is framed by such improvements and limitations: first, with the development and improvement of NN optimization techniques, and second, with the use and development of software for porting the optimized models. All with a special focus on three industrial and practical cases which are the main drivers of the developments: automotive human-machine interaction, ITM in mobile devices, and bronchoscopy guidance. In the first case, we show the deployment and optimization of RNNs in MCUs, as well as the usage and improvement of Bayesian optimization and NAS methods to deliver minimal but well-performing networks. Altogether we deliver a framework for automatically converting and deploying networks in Cortex-M-based MCUs. In the second environment, we employ quantization and efficient operations to bring an ITM network to mobile devices for efficient inference, providing improvements in latency up to 100x with only a 3% accuracy loss. Finally, we develop an efficient bronchoscopy guidance network with structured pruning and efficient operations, that provides a reduction of x4 of NN size and an improvement of ~14% in accuracy for position localization.

Keywords

Xarxes neuronals; Redes neuronales; Neural networks; Hardware recursos limitats; Hardware recursos limitados; Resource-constrained hardware; Optimització; Opimtización; Optimization

Subjects

004 - Computer science and technology. Computing. Data processing

Knowledge Area

Tecnologies

Documents

jbc1de1.pdf

26.93Mb

 

Rights

L'accés als continguts d'aquesta tesi queda condicionat a l'acceptació de les condicions d'ús establertes per la següent llicència Creative Commons: http://creativecommons.org/licenses/by-nc/4.0/
L'accés als continguts d'aquesta tesi queda condicionat a l'acceptació de les condicions d'ús establertes per la següent llicència Creative Commons: http://creativecommons.org/licenses/by-nc/4.0/

This item appears in the following Collection(s)