Efficient Neural Network Inference for Resource Constrained Devices

dc.contributor.author
Borrego Carazo, Juan
dc.date.accessioned
2023-05-19T08:43:03Z
dc.date.available
2023-05-19T08:43:03Z
dc.date.issued
2022-11-21
dc.identifier.uri
http://hdl.handle.net/10803/688291
dc.description.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ó.
ca
dc.description.abstract
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.
ca
dc.description.abstract
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.
ca
dc.format.extent
242 p.
ca
dc.language.iso
eng
ca
dc.publisher
Universitat Autònoma de Barcelona
dc.rights.license
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/
ca
dc.rights.uri
http://creativecommons.org/licenses/by-nc/4.0/
*
dc.source
TDX (Tesis Doctorals en Xarxa)
dc.subject
Xarxes neuronals
ca
dc.subject
Redes neuronales
ca
dc.subject
Neural networks
ca
dc.subject
Hardware recursos limitats
ca
dc.subject
Hardware recursos limitados
ca
dc.subject
Resource-constrained hardware
ca
dc.subject
Optimització
ca
dc.subject
Opimtización
ca
dc.subject
Optimization
ca
dc.subject.other
Tecnologies
ca
dc.title
Efficient Neural Network Inference for Resource Constrained Devices
ca
dc.type
info:eu-repo/semantics/doctoralThesis
dc.type
info:eu-repo/semantics/publishedVersion
dc.subject.udc
004
ca
dc.contributor.authoremail
bcjuan@protonmail.com
ca
dc.contributor.director
Carrabina Bordoll, Jordi
dc.contributor.director
Castells Rufas, David
dc.embargo.terms
cap
ca
dc.rights.accessLevel
info:eu-repo/semantics/openAccess
dc.description.degree
Universitat Autònoma de Barcelona. Programa de Doctorat en Enginyeria Electrònica i de Telecomunicació


Documents

jbc1de1.pdf

26.93Mb PDF

This item appears in the following Collection(s)