Skip to main content
QUICK REVIEW

[论文解读] TinyML: Analysis of Xtensa LX6 microprocessor for Neural Network Applications by ESP32 SoC

Md Ziaul Haque Zim|arXiv (Cornell University)|Jun 20, 2021
CCD and CMOS Imaging Sensors参考文献 31被引用 13
一句话总结

本文评估了ESP32和ESP32-CAM设备中Xtensa LX6微处理器在tinyML应用中对前馈神经网络(输入尺寸从9到576不等,隐藏层为1至2层)的推理速度。研究结果表明,双核32位LX6处理器能够实现小型到中型模型的实时推理,证实其在低功耗嵌入式系统中实现边缘人工智能的可行性。

ABSTRACT

In recent decades, Machine Learning (ML) has become extremely important for many computing applications. The pervasiveness of ultra-low-power embedded devices such as ESP32 or ESP32 Cam with tiny Machine Learning (tinyML) applications will enable the mass proliferation of Artificial Intelligent powered Embedded IoT Devices. In the last few years, the microcontroller device (Espressif ESP32) became powerful enough to be used for small/tiny machine learning (tinyML) tasks. The ease of use of platforms like Arduino IDE, MicroPython and TensorFlow Lite (TF) with tinyML application make it an indispensable topic of research for mobile robotics, modern computer science and electrical engineering. The goal of this paper is to analyze the speed of the Xtensa dual core 32-bit LX6 microprocessor by running a neural network application. The different number of inputs (9, 36, 144 and 576) inputted through the different number of neurons in neural networks with one and two hidden layers. Xtensa LX6 microprocessor has been analyzed because it comes inside with Espressif ESP32 and ESP32 Cam which are very easy to use, plug and play IoT device. In this paper speed of the Xtensa LX6 microprocessor in feed-forward mode has been analyzed.

研究动机与目标

  • 评估在ESP32和ESP32-CAM平台中基于Xtensa LX6微处理器部署神经网络在tinyML工作负载中的可行性。
  • 评估LX6处理器在不同神经网络配置(包括输入维度和隐藏层数量变化)下的推理速度。
  • 确定在资源受限的嵌入式系统中,使用ESP32生态系统实现实时推理的实际极限。
  • 为针对低功耗物联网设备中边缘AI应用的研究人员和开发者提供实证性能数据。

提出的方法

  • 在ESP32上使用TensorFlow Lite for Microcontrollers(TFLite Micro)实现具有一个或两个隐藏层的前馈神经网络。
  • 系统性地改变输入尺寸(9、36、144、576个神经元),以评估对LX6处理器可扩展性和性能影响。
  • 使用ESP32内置的定时器函数测量推理时间,以毫秒为单位捕获执行延迟。
  • 使用Arduino IDE和MicroPython环境在实际硬件上部署并基准测试模型。
  • 选择Xtensa LX6双核32位处理器作为目标平台,因其广泛集成于ESP32和ESP32-CAM等物联网设备中。
  • 在多种网络架构上进行基准测试,以评估处理效率和实时处理能力。

实验结果

研究问题

  • RQ1在ESP32平台上运行小型神经网络时,Xtensa LX6微处理器的推理延迟是多少?
  • RQ2在LX6处理器上,输入尺寸如何影响不同神经网络架构的推理速度?
  • RQ3ESP32搭配LX6微处理器能否实现tinyML应用的实时推理?
  • RQ4从输入维度和模型复杂度的角度来看,LX6处理器在单隐藏层和双隐藏层神经网络上的性能上限是什么?

主要发现

  • Xtensa LX6微处理器在输入规模最多达576个神经元的神经网络中,推理时间低于100ms,证明其对小型到中型模型具备实时性能。
  • 推理延迟随输入尺寸线性增加,但仍在边缘AI应用可接受的阈值范围内。
  • LX6的双核32位架构可高效执行神经网络推理,尤其适用于参数量少于1000的模型。
  • 由LX6驱动的ESP32平台支持使用TensorFlow Lite Micro等高级框架实际部署tinyML模型。
  • 本研究证实,由于其低功耗特性和足够的推理处理能力,ESP32是边缘AI工作负载的可行平台。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。