如果你关注最新进展,可能已经知道 Nordic Semiconductor 收购了 Neuton.AI。Neuton 是一家边缘 AI 公司,致力于使机器学习模型更易于访问。它创建的模型比竞争对手的框架小 10 倍,速度也快 10 倍,甚至可以在最先进的边缘设备上进行人工智能处理。在这篇博文中,我们将介绍这对开发人员意味着什么,以及使用 Neuton 模型如何改进您的开发和终端应用。
为什么选择 Neuton
作为开发人员,在产品中使用边缘人工智能的两个最大障碍是:
- ML 模型对于您所选微控制器的内存来说太大。
- 创建自定义 ML 模型本质上是一个手动过程,需要高度的数据科学知识才能做好。
现在,这些阻碍即将被解决。
Neuton 是一个自动生成 ML 模型的框架,其大小仅为 TensorFlow Lite 等传统框架的一小部分。对于开发人员来说,这意味着要训练一个高度优化、快速和准确的 ML 模型,你所需要的只是一个数据集。Neuton 模型可以在任何 Nordic SoC(如我们的旗舰产品 nRF54L15)上运行,而且非常高效,也非常适合空间最有限的 SoC(如 nRF52805),只占用几千字节的非易失性存储器(NVM)。这使得以前被认为不可能的应用也能增加 ML 功能。例如,您现在可以在广泛的传感器网络的每个节点上进行人工智能处理,而在这种网络中,传感器的尺寸和成本是关键,空间也非常宝贵。
Neuton 的与众不同
其他边缘人工智能框架比比皆是,而且存在已久。Neuton 与 LiteRT(又称微控制器 TensorFlow Lite)和类似框架的主要区别在于,其他框架仍然依赖于开发人员掌握如何手动组织神经网络、神经元和网络深度的知识,然后在事后对模型进行压缩和优化,使其适合所需的目标设备。这种方法导致模型在代码大小、执行速度和功耗方面效率较低。
而 Neuton 可以自动处理所有这些问题。Neuton 不会从一开始就静态定义网络参数,而是自动生成网络,并检查每一个新神经元是否能提高模型性能。不增加价值的神经元会被立即移除,以节省资源。这为开发者带来了多重好处:
- 无需手动选择神经网络结构、参数或架构
- 无需资源密集型的自动神经架构搜索 (NAS)
- 代码体积尽可能小,无需压缩或优化
- 执行速度更快,这意味着功耗更低
Neuton 模型以纯 C 代码形式从平台下载,没有外部依赖性或特殊运行要求。它们可随时集成到在任何 Arm Cortex-M 系列处理器上运行的任何应用中,如 nRF52、nRF53、nRF54L 和 nRF54H 系列 SoC 或 nRF91 系列 SiP 的应用内核。
这对开发人员意味着什么
使用 Neuton 框架创建 ML 模型已经可以通过 lab.neuton.ai 实现。如果您迫不及待,现在就可以尝试使用,但请注意,您需要自己将其集成到 nRF Connect SDK 应用程序中,因为目前还没有这方面的示例。如果您更喜欢 Nordic 众所周知的更简化的开发流程和开发体验,我们正计划适配我们的开发者生态的重大改进。因此,如果您不想自己完成所有的集成工作,您可以等待我们nRF Connect SDK 示例和必要开发工具,来构建与我们的解决方案无缝集成的模型。
工作原理
尽管通过专用示例固件与 nRF Connect SDK 的集成仍在进行中,但使用 Neuton 框架生成模型已经完全实现自动化,而且非常简单。
为您的应用生成一个完整、无依赖性的模型只需三个步骤。
- 收集数据并上传数据集;该平台接收带标签的 CSV 文件
- 选择数据集中的目标变量,并选择评估指标
- 然后,平台会在后台 “自动 ”生成神经网络,一旦算法准备就绪,平台就会通知您。
将 Neuton 模型下载为一个完整的 C 语言库,并使用仅由 3 个简单函数调用组成的应用程序接口将其集成到您的应用程序中:
- neuton_nn_setup - 设置 Neuton 的内部组件,应首先调用,且仅调用一次
- neuton_nn_feed_inputs - 为模型推理提供并准备实时输入特征
- neuton_nn_run_inference - 将实时输入特征输入 Neuton 模型,计算输出结果
使用案例
Neuton 释放了以前仅限于我们旗舰硬件的使用案例,使我们所有的 SoC 都能用于边缘人工智能。例子包括:
- 预测性维护和楼宇自动化系统
- 在每个节点上进行本地数据分析的智能传感器网络
- 遥控器和可穿戴设备的动作和手势识别
- 用于智能健康可穿戴设备的健康和活动监测
- 还有更多
对标测试
下表列出了在同一 nRF52840 SoC 上运行的 LiteRT 模型(以前称为微控制器 TensorFlow Lite)和 Neuton 模型之间的对标测试结果。该比较使用了众所周知的 "magic wand "动作识别用例,两个模型都在相同的数据集上进行了训练,并在相同的保留集上进行了验证。

有关比较的完整文章可在此处查阅(外部链接)。
下一步工作
在接下来的几个月里,我们将努力把 Neuton 集成到我们的开发生态系统中,增加工具、示例和支持,为开发人员提供便利,为他们的应用增值。如果您非常想亲自尝试构建和集成 Neuton 模型,现在就可以使用其传统的在线平台 lab.neuton.ai 进行测试。