AI技术专题之一:意法半导体人工智能解决方案概述

本文主要是介绍AI技术专题之一:意法半导体人工智能解决方案概述,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

AI技术专题之一:意法半导体人工智能解决方案概述

AI(人工智能)起源于达特茅斯学院于1956年举办的夏季研讨会。在该会议上,“人工智能”一词首次被正式提出。计算能力的技术突破推动了人工智能一轮又一轮的发展。近年来,随着大数据的可用性提高,第三轮人工智能发展浪潮已经来临。2015年,基于深度学习的人工智能算法在ImageNet竞赛的图像识别精度方面首次超过人类,人工智能在发展道路上高歌猛进。随着计算机视觉技术研究取得突破,深度学习已经在语音识别、自然语言处理等不同研究领域都获得了巨大的成功。现在,人工智能已经在生活中的方方面面显示出巨大潜力。

结合人工智能技术的发展阶段,为大家解释一下AI的主要概念:

AI
能让计算机脑模拟人类行为的一切技术。

机器学习
人工智能(AI)的子集。通过从数据中学习而不断改进的算法和方法。

深度学习
机器学习(ML)的子集。通过使用模拟人类大脑神经网络的多层结构,从大量数据中获得有价值信息的学习算法。
在这里插入图片描述

人工智能新力量 意法半导体Deep Edge AI应运而生

目前,因为算力的需求,人工智能技术主要应用于云端场景。由于数据传输延迟等因素的限制,基于云的解决方案可能无法满足部分用户对数据安全性、系统响应能力、私密性、以及本地节点功耗的需求。在集中式人工智能解决方案中,嵌入式设备(智能音箱、可穿戴设备等)通常依赖云服务器实现人工智能能力,而在Deep Edge AI解决方案中,嵌入式设备本身即可在本地运行人工智能算法,实现实时环境感知、人机交互、决策控制等功能。
在这里插入图片描述
将推理过程移到深度边缘计算会带来一些优势,比如系统响应能力、更好的用户信息隐私保护(并非所有数据都需要通过多个系统传输到云端)、降低连接成本和功耗。
在这里插入图片描述
根据ABI的研究结果,到2030年,Deep Edge AI器件的全球出货量将达到25亿台。意法半导体注意到,围绕Deep Edge AI技术的社区和生态系统越来越多,专注于独立、低功耗且经济划算的嵌入式解决方案。作为该趋势的主要推动者,意法半导体已经在AI方面投入大量资源,旨在帮助开发人员在基于微控制器/微处理器(STM32系列)和传感器(MEMS、ToF…)的嵌入式系统上快速部署AI应用。意法半导体为STM32系列和集成了机器学习核心(MLC)的MEMS传感器提供了一套AI工具,可以加快开发周期,并且可以优化训练好的AI模型(STM32Cube.AI)。

作为通用技术,人工智能已经在多个领域取得了令人瞩目的成就。我们相信,越来越多的智能终端设备将会对人类生活产生更为直接的积极影响。

通过意法半导体的生态系统快速部署AI应用

意法半导体提供一个包含硬件和软件的生态系统,帮助快速、轻松地开发用于传感器和微控制器的多种Deep Edge AI算法。

MEMS传感器生态系统中的机器学习通过运行在名为机器学习核心(MLC)的传感器嵌入式引擎上的决策树分类器,帮助设计人员利用AI at the Edge实现手势、活动识别、异常检测等。
在这里插入图片描述
因此,物联网解决方案开发人员可以在快速原型制作环境中部署我们的任意(内嵌机器学习核心的)传感器,以便使用UNICO-GUI工具快速开发超低功耗应用。

借助内置的低功耗传感器设计、高级AI事件检测、唤醒逻辑和实时边缘计算功能,传感器中的MLC极大地减少了系统数据传输量,降低了网络处理负担。

如果开发人员决定开发一个基于传感器内机器学习核心的解决方案,则需要一套全新的方法来发布自己的应用。

如要创建任何机器学习算法,起点都是数据及其对类(用于描述待解决的复杂问题)的定义。用户可以遵循五个步骤,在传感器中创建并运行AI应用。UNICO-GUI是一种图形用户界面,能够支持包括决策树生成在内的所有五个步骤。

在这里插入图片描述
为了便于开发人员快速向STM32部署已训练的AI模型,意法半导体开发了一款使用简单易用且高效的工具 - STM32Cube.AI(也称X-CUBE-AI)。X-CUBE-AI可以分析并将已训练的神经网络转换为优化的C语言代码,并针对STM32目标进行自动测试。当然,X-CUBE-AI是一款非常强大的工具,后续文章中将介绍其更多功能。

为了展示几种不同的AI应用如何可以在STM32上直接运行,并加快STM32嵌入式开发人员的开发、验证和部署进程,意法半导体提供许多AI应用作为参考。

开发人员可以基于这些嵌入式AI应用软件包进行二次开发,快速实现自定义模型的部署。

更多细节将在后续文章中介绍。

AI开发工具和嵌入式应用软件包总结如下:

软件开发工具

产品编号说明
UNICO-GUIMEMS评估套件软件包
STM32CubeMXSTM32Cube初始化代码生成器
X-CUBE-AISTM32CubeMX的AI扩展包

嵌入式软件

产品编号说明
X-LINUX-AI用于AI计算机视觉应用的STM32 MPU OpenSTLinux扩展包
FP-AI-SENSING1STM32Cube功能包,用于超低功耗物联网节点,具有基于音频和运动传感的人工智能(AI)应用
FP-AI-VISION1STM32Cube功能包,用于高性能STM32,带有用于计算机视觉的人工智能(AI)应用
FP-AI-NANOEDG1STM32Cube的人工智能(AI)状态监测功能包
FP-AI-FACERECSTM32Cube的人工智能(AI)面部识别功能包
FP-AI-CTXAWARE1STM32Cube功能包,用于分布式人工智能(AI)的超低功耗情景感知

有STM32的地方就有Deep Edge AI。

STM32的所有MCU都支持AI模型的部署。对于计算能力较低的MCU,支持机器学习算法(ML)。对于计算能力较高的MCU,还支持神经网络模型(DL)。
在这里插入图片描述
可以运行应用示例的评估板列表总结如下:

产品评估工具

产品编号说明
B-L475E-IOT01ASTM32L4开发套件,包含IoT节点、低功耗无线解决方案、BLE、NFC、SubGHz、Wi-Fi
STEVAL-STLKT01V1SensorTile开发套件
STEVAL-MKSBOX1V1SensorTile.box无线多传感器开发套件
STEVAL-STWINKT1BSTWIN SensorTile无线工业节点开发套件和参考设计面向工业物联网应用
STM32L562E-DK开发套件,采用STM32L562QE MCU
STM32H747I-DISCO开发套件,采用STM32H747XI MCU
STM32MP157C-DK2开发套件,采用STM32MP157C MPU
STM32MP157F-DK2开发套件,采用STM32MP157F MPU
Avenger96基于STM32MP157A的Avenger96板源自96Boards
B-CAMS-OMV摄像头模块套装,用于STM32板

原文出处:
添加链接描述

这篇关于AI技术专题之一:意法半导体人工智能解决方案概述的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/789114

相关文章

javax.net.ssl.SSLHandshakeException:异常原因及解决方案

《javax.net.ssl.SSLHandshakeException:异常原因及解决方案》javax.net.ssl.SSLHandshakeException是一个SSL握手异常,通常在建立SS... 目录报错原因在程序中绕过服务器的安全验证注意点最后多说一句报错原因一般出现这种问题是因为目标服务器

C++高效内存池实现减少动态分配开销的解决方案

《C++高效内存池实现减少动态分配开销的解决方案》C++动态内存分配存在系统调用开销、碎片化和锁竞争等性能问题,内存池通过预分配、分块管理和缓存复用解决这些问题,下面就来了解一下... 目录一、C++内存分配的性能挑战二、内存池技术的核心原理三、主流内存池实现:TCMalloc与Jemalloc1. TCM

MyBatis Plus 中 update_time 字段自动填充失效的原因分析及解决方案(最新整理)

《MyBatisPlus中update_time字段自动填充失效的原因分析及解决方案(最新整理)》在使用MyBatisPlus时,通常我们会在数据库表中设置create_time和update... 目录前言一、问题现象二、原因分析三、总结:常见原因与解决方法对照表四、推荐写法前言在使用 MyBATis

Java死锁问题解决方案及示例详解

《Java死锁问题解决方案及示例详解》死锁是指两个或多个线程因争夺资源而相互等待,导致所有线程都无法继续执行的一种状态,本文给大家详细介绍了Java死锁问题解决方案详解及实践样例,需要的朋友可以参考下... 目录1、简述死锁的四个必要条件:2、死锁示例代码3、如何检测死锁?3.1 使用 jstack3.2

html 滚动条滚动过快会留下边框线的解决方案

《html滚动条滚动过快会留下边框线的解决方案》:本文主要介绍了html滚动条滚动过快会留下边框线的解决方案,解决方法很简单,详细内容请阅读本文,希望能对你有所帮助... 滚动条滚动过快时,会留下边框线但其实大部分时候是这样的,没有多出边框线的滚动条滚动过快时留下边框线的问题通常与滚动条样式和滚动行

Oracle修改端口号之后无法启动的解决方案

《Oracle修改端口号之后无法启动的解决方案》Oracle数据库更改端口后出现监听器无法启动的问题确实较为常见,但并非必然发生,这一问题通常源于​​配置错误或环境冲突​​,而非端口修改本身,以下是系... 目录一、问题根源分析​​​二、保姆级解决方案​​​​步骤1:修正监听器配置文件 (listener.

MySQL版本问题导致项目无法启动问题的解决方案

《MySQL版本问题导致项目无法启动问题的解决方案》本文记录了一次因MySQL版本不一致导致项目启动失败的经历,详细解析了连接错误的原因,并提供了两种解决方案:调整连接字符串禁用SSL或统一MySQL... 目录本地项目启动报错报错原因:解决方案第一个:第二种:容器启动mysql的坑两种修改时区的方法:本地

安装centos8设置基础软件仓库时出错的解决方案

《安装centos8设置基础软件仓库时出错的解决方案》:本文主要介绍安装centos8设置基础软件仓库时出错的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录安装Centos8设置基础软件仓库时出错版本 8版本 8.2.200android4版本 javas

Java中的登录技术保姆级详细教程

《Java中的登录技术保姆级详细教程》:本文主要介绍Java中登录技术保姆级详细教程的相关资料,在Java中我们可以使用各种技术和框架来实现这些功能,文中通过代码介绍的非常详细,需要的朋友可以参考... 目录1.登录思路2.登录标记1.会话技术2.会话跟踪1.Cookie技术2.Session技术3.令牌技

Java空指针异常NullPointerException的原因与解决方案

《Java空指针异常NullPointerException的原因与解决方案》在Java开发中,NullPointerException(空指针异常)是最常见的运行时异常之一,通常发生在程序尝试访问或... 目录一、空指针异常产生的原因1. 变量未初始化2. 对象引用被显式置为null3. 方法返回null