STM32Cube.AI简化人工神经网络设计

根据百度百科的解释,人工神经网络(Artificial Neural Network,即ANN ),是20世纪80 年代以来人工智能领域兴起的研究热点。它从信息处理角度对人脑神经元网络进行抽象, 建立某种简单模型,按不同的连接方式组成不同的网络。在工程与学术界也常直接简称为神经网络或类神经网络。神经网络是一种运算模型,由大量的节点(或称神经元)之间相互联接构成。每个节点代表一种特定的输出函数,称为激励函数(activation function)。每两个节点间的连接都代表一个对于通过该连接信号的加权值,称之为权重,这相当于人工神经网络的记忆。网络的输出则依网络的连接方式,权重值和激励函数的不同而不同。而网络自身通常都是对自然界某种算法或者函数的逼近,也可能是对一种逻辑策略的表达。

人工智能(AI)已从概念逐渐变成了现实,成为了我们生活的一部分,如面部识别、语音识别、预防性维修、在线购物建议等。人工智能是使计算机模仿人类行为和智力的一种技术。人工智能收集数据进行学习,发现数据的规律,并根据深度学习算法,进行推理并给出一些建议。开发AI需要具有专门的工具和专业知识,这对缺乏机器和深度学习培训的嵌入式开发人员来说可能带来挑战。



STM32Cube.AI人工智能开发的好帮手

最近,ST发布了具有重要意义的STM32Cube.AI,给不熟悉神经网络的嵌入式开发者提供了人工智能应用开发的工具。STM32Cube.AI将神经网络带入到了嵌入式边缘开发领域,给广大的开发者提供了专业的工具。

一般,人工智能在云端进行计算,云端服务器具有强大的计算能力,大量的原始传感器数据发送到基于云的人工智能引擎,由人工智能引擎进行非常庞大的数据和计算;另一方面,前者的架构需要较高的网络带宽传送数据到云端,并且在云端的计算成本也比较昂贵。而且还可能存在数据延迟和隐私等风险。

分布式人工智能体系结构是一种更轻的、更敏捷的人工智能计算架构。其中在网络边缘的嵌入式处理器和微控制器可以对传感器数据进行预处理,做边缘计算,从而减小了发送到云端数据的数量,而无需任何数据都传输到云端。借助STM32Cube.AI 边缘IoT设备可以直接运行神经网络边缘计算,从而可以进行实时人工智能计算,保护隐私并减少网络带宽和云中心的计算功能。

STM32Cube.AI是如何工作的

STM32Cube.AI是可以作为STM32CubeMX代码生成器的扩展包,可以作为神经网络输入的转换工具,STM32Cube.AI支持快速,自动导入流行的框架(例如Keras,TensorFlow-Lite,Caffe,Lasagne和ConvnetJS)训练的神经网络,将神经网络转换为针对MCU的优化代码。然后,该工具将经过训练的神经网络映射到STM32 MCU上,并优化生成的库以减少内存占用。


得益于ST提供的一组新的人工智能(AI)解决方案,您现在可以在广泛的STM32微控制器产品组合上映射和运行预训练的人工神经网络(ANN)。

使用STM32Cube.AI部署神经网络的5个步骤:

  1. 采集数据 - 捕获有关正在建模的现象的足够的代表性数据。这通常涉及在要监视的对象上或附近放置传感器,以记录其状态和随时间的变化。物理参数的示例包括加速度,温度,声音和视觉效果,具体取决于您的应用程序。
  2. 清理、标记数据并构建ANN拓扑 - 创建人工神经网络需要从传感器和预处理中获取的标记数据。对于所谓的“监督学习”,必须对数据集进行特征化,以便可以对不同的输出进行正确分类。该分类集是将用于训练ANN然后对其进行验证的“地面真相”。
  3. 训练ANN模型 - 训练ANN涉及以迭代方式将数据集传递通过神经网络,以使网络的输出可以将所需的错误标准降至最低。ANN定义,培训和测试通常是使用现成的深度学习框架进行的。
  4. 将ANN转换为STM32 MCU的优化代码 - 将经过预训练的ANN嵌入到MCU中(优化的代码将复杂性和内存需求降至最低)。借助STM32Cube.AI软件工具,该部分非常简单直观。STM32Cube.AI作为广泛使用的STM32CubeMX工具的扩展,已完全集成到STM32软件开发生态系统中。
  5. 使用训练有素的人工神经网络处理和分析新数据 - 在您的应用程序的MCU中部署嵌入式ANN。由于集成了软件包-功能包,因此ST还可使设计人员更轻松地快速设计其创新应用的原型。


除STM32Cube.AI工具包外,ST还提供其他产品和技术来帮助缩小嵌入式系统和AI系统开发人员之间的距离。其中包括专门用于捕获和处理传感器数据的SensorTile开发套件以及STM32 IoT Node,它是一个集成了低功耗无线BLE,NFC,Sub GHz和Wi-Fi无线电的多传感器发现套件,可帮助用户开发与云服务器直接连接的应用程序。

意法半导体还提供了STM32功能包,这些功能包是将低级驱动程序、中间件库和示例应用程序组装成一个软件包。传感功能包 帮助快速入门应用程序示例的实现和开发,这些示例程序结合并处理了来自多个传感器的数据以提供高级检测和监视功能,例如运动识别,语音识别,环境监视,定位,跌倒检测,访问控制和入侵检测。

另外,ST还提供了一个专门针对神经网络主题的STM32社区,并提供了专门用于机器或深度学习工程服务的ST合作伙伴计划。


 

★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★文明上网,请理性发言。内容一周内被举报5次,发文人进小黑屋喔~

评论