Riccardo Berta;Ali Dabbous;Luca Lazzaroni;Danilo Pietro Pau;Francesco Bellotti
{"title":"一小时内开发出 TinyML 图像分类器","authors":"Riccardo Berta;Ali Dabbous;Luca Lazzaroni;Danilo Pietro Pau;Francesco Bellotti","doi":"10.1109/OJIES.2024.3451959","DOIUrl":null,"url":null,"abstract":"Tiny machine learning technologies are bringing intelligence ever closer to the sensor, thus enabling the key benefits of edge computing (e.g., reduced latency, improved data security, higher energy efficiency, and lower bandwidth consumption, also without the need for constant connectivity). This promises to significantly enhance industrial applications but requires suited development tools to deal with the complexity of the edge technologies and context. We propose an agile Jupyter Python notebook as a simple, manageable tool to efficiently and effectively develop microcontroller-based intelligent imaging classification sensors. The notebook implements a methodology involving hyperparameter tuning and comparison of different shallow and deep learning models, with quantization. It exports TensorFlow Lite models, deployable on several microcontroller families, and optionally exploits the STM32Cube.AI developer cloud service, which allows benchmarking the developed models on a set of real-world tiny hardware target platforms. Assessment concerns various types of metrics, both for machine learning (e.g., accuracy) and embedded systems (e.g., memory footprint, latency, and energy consumption). We have verified the support for development effectiveness and efficiency on four ultralow resolution image-classification datasets, with different levels of input and task complexity. In all cases, the tool was able to build microcontroller-deployment ready, beyond the state-of-the-art models, within 1 h on Google Colab CPUs.","PeriodicalId":52675,"journal":{"name":"IEEE Open Journal of the Industrial Electronics Society","volume":"5 ","pages":"946-960"},"PeriodicalIF":5.2000,"publicationDate":"2024-08-29","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=10659231","citationCount":"0","resultStr":"{\"title\":\"Developing a TinyML Image Classifier in an Hour\",\"authors\":\"Riccardo Berta;Ali Dabbous;Luca Lazzaroni;Danilo Pietro Pau;Francesco Bellotti\",\"doi\":\"10.1109/OJIES.2024.3451959\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Tiny machine learning technologies are bringing intelligence ever closer to the sensor, thus enabling the key benefits of edge computing (e.g., reduced latency, improved data security, higher energy efficiency, and lower bandwidth consumption, also without the need for constant connectivity). This promises to significantly enhance industrial applications but requires suited development tools to deal with the complexity of the edge technologies and context. We propose an agile Jupyter Python notebook as a simple, manageable tool to efficiently and effectively develop microcontroller-based intelligent imaging classification sensors. The notebook implements a methodology involving hyperparameter tuning and comparison of different shallow and deep learning models, with quantization. It exports TensorFlow Lite models, deployable on several microcontroller families, and optionally exploits the STM32Cube.AI developer cloud service, which allows benchmarking the developed models on a set of real-world tiny hardware target platforms. Assessment concerns various types of metrics, both for machine learning (e.g., accuracy) and embedded systems (e.g., memory footprint, latency, and energy consumption). We have verified the support for development effectiveness and efficiency on four ultralow resolution image-classification datasets, with different levels of input and task complexity. In all cases, the tool was able to build microcontroller-deployment ready, beyond the state-of-the-art models, within 1 h on Google Colab CPUs.\",\"PeriodicalId\":52675,\"journal\":{\"name\":\"IEEE Open Journal of the Industrial Electronics Society\",\"volume\":\"5 \",\"pages\":\"946-960\"},\"PeriodicalIF\":5.2000,\"publicationDate\":\"2024-08-29\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=10659231\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"IEEE Open Journal of the Industrial Electronics Society\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://ieeexplore.ieee.org/document/10659231/\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"Q1\",\"JCRName\":\"ENGINEERING, ELECTRICAL & ELECTRONIC\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"IEEE Open Journal of the Industrial Electronics Society","FirstCategoryId":"1085","ListUrlMain":"https://ieeexplore.ieee.org/document/10659231/","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q1","JCRName":"ENGINEERING, ELECTRICAL & ELECTRONIC","Score":null,"Total":0}
引用次数: 0
摘要
微小的机器学习技术使智能越来越接近传感器,从而实现了边缘计算的主要优势(例如,减少延迟、提高数据安全性、提高能效和降低带宽消耗,而且无需持续连接)。这有望大幅提升工业应用,但需要合适的开发工具来应对边缘技术和环境的复杂性。我们提出了一种灵活的 Jupyter Python 笔记本,作为一种简单、易于管理的工具,用于高效开发基于微控制器的智能成像分类传感器。该笔记本实现的方法涉及超参数调整、不同浅层和深度学习模型的比较以及量化。它输出 TensorFlow Lite 模型,可部署在多个微控制器系列上,并可选择利用 STM32Cube.AI 开发人员云服务,该服务允许在一组真实世界的微型硬件目标平台上对所开发的模型进行基准测试。评估涉及机器学习(如准确性)和嵌入式系统(如内存占用、延迟和能耗)的各类指标。我们在四个超低分辨率图像分类数据集上验证了该支持工具的开发效果和效率,这些数据集具有不同程度的输入和任务复杂性。在所有情况下,该工具都能在谷歌 Colab CPU 上在 1 小时内构建出微控制器部署就绪的、超越最先进模型的模型。
Tiny machine learning technologies are bringing intelligence ever closer to the sensor, thus enabling the key benefits of edge computing (e.g., reduced latency, improved data security, higher energy efficiency, and lower bandwidth consumption, also without the need for constant connectivity). This promises to significantly enhance industrial applications but requires suited development tools to deal with the complexity of the edge technologies and context. We propose an agile Jupyter Python notebook as a simple, manageable tool to efficiently and effectively develop microcontroller-based intelligent imaging classification sensors. The notebook implements a methodology involving hyperparameter tuning and comparison of different shallow and deep learning models, with quantization. It exports TensorFlow Lite models, deployable on several microcontroller families, and optionally exploits the STM32Cube.AI developer cloud service, which allows benchmarking the developed models on a set of real-world tiny hardware target platforms. Assessment concerns various types of metrics, both for machine learning (e.g., accuracy) and embedded systems (e.g., memory footprint, latency, and energy consumption). We have verified the support for development effectiveness and efficiency on four ultralow resolution image-classification datasets, with different levels of input and task complexity. In all cases, the tool was able to build microcontroller-deployment ready, beyond the state-of-the-art models, within 1 h on Google Colab CPUs.
期刊介绍:
The IEEE Open Journal of the Industrial Electronics Society is dedicated to advancing information-intensive, knowledge-based automation, and digitalization, aiming to enhance various industrial and infrastructural ecosystems including energy, mobility, health, and home/building infrastructure. Encompassing a range of techniques leveraging data and information acquisition, analysis, manipulation, and distribution, the journal strives to achieve greater flexibility, efficiency, effectiveness, reliability, and security within digitalized and networked environments.
Our scope provides a platform for discourse and dissemination of the latest developments in numerous research and innovation areas. These include electrical components and systems, smart grids, industrial cyber-physical systems, motion control, robotics and mechatronics, sensors and actuators, factory and building communication and automation, industrial digitalization, flexible and reconfigurable manufacturing, assistant systems, industrial applications of artificial intelligence and data science, as well as the implementation of machine learning, artificial neural networks, and fuzzy logic. Additionally, we explore human factors in digitalized and networked ecosystems. Join us in exploring and shaping the future of industrial electronics and digitalization.