神经处理单元(NPU)的出现,对於机器学习领域产生了革命性的改变,它使得深度学习任务所需的复杂数学运算能够高效执行。透过最隹化矩阵乘法和卷积运算,NPU将AI 模型大幅扩展到各种领域,从高阶伺服器群到低阶电池供电装置皆适用。
微型机器学习(TinyML)专注於在资源受限的嵌入式装置上实现机器学习演算法,它的兴起进一步推展了AI 的界限。TinyML让数十亿的边缘装置具备 AI 能力,使它们能够在本地即时处理资料并做出决策,而且无需依赖云端连线或强大的运算资源。
![图一 : 神经处理单元(NPU)使得深度学习任务所需的复杂数学运算能够高效执行。](/art/2024/08/271543233940/p1S.JPG)
图一 : 神经处理单元(NPU)使得深度学习任务所需的复杂数学运算能够高效执行。 |
|
以 NPU 为基础并结合新兴的微型机器学习领域,Ceva 推出Ceva-NeuPro-Nano。这款精巧高效的 NPU IP 是专为微型机器学习应用而精心设计,它能够在效能与耗电效率之间取得完美的平衡。Ceva-NeuPro-Nano 经过最隹化的独特架构,能够从头到尾完整执行微型机器学习应用,涵盖资料撷取、特徵萃取到模型推论,使其成为资源受限、电池供电装置的嵌入式系统,提供理想的AI本地解决方案。
![图二 : Ceva-NeuPro-Nano 的设计愿景源自於微型机器学习的使用者需求, (source:Ceva)](/art/2024/08/271543233940/p2S.JPG)
图二 : Ceva-NeuPro-Nano 的设计愿景源自於微型机器学习的使用者需求, (source:Ceva) |
|
设计理念
Ceva-NeuPro-Nano 的设计愿景源自於微型机器学习的使用者需求,我们理解一个既强大又易用的解决方案,需要优先考虑软体的易用性。除了专注於神经网路层级之外,必须能够解决应用层面的挑战。这种方法确保 Ceva-NeuPro-Nano 能够高效且无缝地处理神经网路,同时应付控制任务与 DSP任务。
其目标是一个低耗电高效能处理嵌入式 AI 的最隹NPU。Ceva-NeuPro-Nano 尖端的硬体设计专为满足微型机器学习应用所需的低功耗、高效率要求而量身打造,使其成为资源受限边缘装置的理想解决方案。
软体优先
Ceva-NeuPro-Nano 全面的软体生态系统支援两大主要微型机器学习推论架构:
1.适用於微控制器的 TensorFlow Lite;2.MicroTVM。这确保了它能无缝整合到各种微型机器学习应用中。Ceva-NeuPro-Nano 与许多其他解决方案不同,它不是一个依赖主机微控制器(MCU)的AI加速器;它是一个完全可程式化的独立处理器,同时具备卓越的神经网路(NN)和数位讯号处理(DSP)能力,使其具有前瞻性并能支援未来的任何网路层或运算子。
除了支援主要的微型机器学习架构以外,Ceva-NeuPro-Nano还配备全面的NN函式库,适用於需要手动调整模型的情况,以及提供完整 DSP 功能的 DSP 函式库。这些全面的函式库提升Ceva-NeuPro-Nano 的适应性和多功能性,使得开发人员能够轻松地开发各种独特的应用需求。
![图三 : Ceva-NeuPro-Nano 全面的软体生态系统支援两大主要微型机器学习推论架构 (source:Ceva)](/art/2024/08/271543233940/p3S.JPG)
图三 : Ceva-NeuPro-Nano 全面的软体生态系统支援两大主要微型机器学习推论架构 (source:Ceva) |
|
创新架构
Ceva-NeuPro-Nano 的架构引入了几项创新特性,得以解决微型机器学习应用中的关键痛点。它能够直接处理压缩後的权重,无须对记忆体先进行权重解压缩,可节省记忆体储存权重的空间,使其成为记忆体受限微型机器学习装置的理想选择。先进的资料快取系统简化硬体管理,并且提高整体效率,消除了直接记忆体存取(DMA)排程的复杂性。
Ceva-NeuPro-Nano 的硬体架构设计能够处理非线性启动函数,使其能支援多样化的机器学习模型。它还整合了尖端的节能技术以确保高效率,使其非常适合对功耗敏感的边缘装置。透过硬体层级对称和非对称量化方案的支援,以及原生 4 位元资料类型的支援,Ceva-NeuPro-Nano 可以容纳各种 TensorFlow 模型,进一步扩展其适应性,并实现更高效的资料处理和储存。
MAC 大战
许多神经网路处理器(NPU)制造商夸耀其设计中不断增加的乘加(MAC)单元数量,暗示更多的 MAC 等同於更好的效能。然而,Ceva采取不同的方法来开发 Ceva-NeuPro-Nano,着重於 MAC 的使用效率,而非单纯追求数量。
我们认知到,如果无法有效利用大量的 MAC 单元,那麽拥有这些单元并不一定能够转化为更好的效能。事实上,更高的 MAC 数量常常导致功耗增加,却无法带来相应的效能提升。Ceva-NeuPro-Nano NPU 有两种变体:配备 32 个 8×8 MAC 的 Ceva-NPN32,以及配备 64 个 8×8 MAC 的 Ceva-NPN64。透过广泛的实验证明32-MAC 变体可以展现出与其他拥有 128 个 MAC 的解决方案相当的表现。这种卓越的效率是透过更高的 MAC 使用率达成的,而这得益於我们创新的设计和架构。
透过优先考虑 MAC 使用率而非单纯的数量,Ceva-NeuPro-Nano 在保持较低功耗的同时提供了高效能。这种方法完全符合 TinyML 应用的需求,在这类应用中,电源效率至关重要。我们对效率的专注,证明了智慧设计和最隹化比投入MAC大战更为重要。
横跨3V的TinyML实用案例
在严谨的测试和分析中,我们比较各种 TinyML 模型在 NeuPro-Nano 和其他替代解决方案上的执行情况。结果凸显了 NeuPro Nano 的惊人价值。它拥有 45% 更小的面积,提供 3 倍的能源效率,消耗高达 80% 更少的记忆体,并为 TinyML 网路提供高达 10 倍的改进。
我们透过专注於横跨三大主轴(3 个 V)的实际 TinyML 应用案例,达成出色的效能和效率指标:
· 视觉(Vision):对於视觉应用,我们认识到轻量级电脑视觉任务(例如人脸侦测、特徵点侦测、物体侦测和图像分类)在让穿戴式装置和物联网装置与环境互动和理解方面扮演重要的角色。我们考虑了一些强健、经产业验证的神经网路设计,例如 EfficientNet、MobileNet、Squeezenet 和 tiny YOLO,这些网路能处理主要的轻量级电脑视觉任务。这确保了 Ceva-NeuPro-Nano 能够优雅且高效地处理 CNN、深度可分离卷积和其他层。
· 振动(Vibration):对於振动应用,基於 Ceva 在 IMU 硬体、软体和应用开发方面的独特经验,专注於人类活动识别和异常侦测等任务,这些在穿戴科技和工业应用中分别扮演关键的角色。
· 语音(Voice):对於语音应用,这是人机互动的下一步,基於自身在语音感测应用开发(例如用於关键字辨识、降噪和语音识别)方面的丰富经验,以及我们对该领域的深入了解。考虑到从 RNN 和 CNN 到微型 Transformer 等多样化的网路设计,确保NeuPro Nano 的设计能够精通这些所有网路。
在整合这三个 V 时,我们认识到神经网路基础应用中一个经常被忽视的部分 - 特徵撷取的重要性,这促使我们将强大的控制和 DSP 功能整合到 Ceva-NeuPro-Nano 的设计中。
结论
Ceva-NeuPro-Nano独特的架构、高效的 MAC 利用率,以及全面支持的软体生态系统,使其成为多功能且强大的解决方案;其设计理念聚焦於实际案例和应用层级的挑战,确保它能高效且无缝地处理广泛的任务。凭藉其突破性的效能、效率和适应性,Ceva-NeuPro-Nano 将彻底改变 TinyML 领域,为数十亿资源受限的装置带来机器学习的力量。
Ceva-NeuPro-Nano 加入Ceva-NeuPro 系列神经网路处理器家族,并且扩展可以处理的边缘 AI 工作负载范围,从 TinyML 应用到大规模生成式 AI 模型。
(本文作者Ido Gus为CEVA感测器和音讯事业部深度学习资深团队领导)