当前位置:首页 > 公众号精选 > 嵌入式客栈
[导读]译自:https://blogs.windriver.com/wind_river_blog /2020/01/practical-applications-for-ai-and-ml-in-embedded-systems/ 基本背景 嵌入式开发往往是由部署高度优化和高效的系统需求所驱动。 人工智能通过采用解决复杂问题的新方法对现有业务或现有工作类型

译自:https://blogs.windriver.com/wind_river_blog

/2020/01/practical-applications-for-ai-and-ml-in-embedded-systems/

基本背景

嵌入式开发往往是由部署高度优化和高效的系统需求所驱动。

人工智能通过采用解决复杂问题的新方法对现有业务或现有工作类型的革命而颠覆世界。无论您是否真正了解这种颠覆性革新所带来价值,以及如何将其应用到您的市场中,还是想弄清楚如何利用这项技术,对人工智能及其潜在应用的做一些基本了解已迫在眉睫。了解其潜在的应用必将成为您战略规划过程的关键一环。

尽管已进行了大肆宣传,但令人震惊的是,人们认为人工智能似乎是无所不能的魔术棒。然而魔术师们却仅仅能使用很小的一部分魔术技能以解决现实中的问题。这种反差引起人们强烈关注的一个领域是如何将人工智能应用于嵌入式系统,重点是如何在这些更受限的环境中部署人工智能应用。

定义和基本原理

为确保我们能有基本共识,让我们从不同技术及其对计算要求的基本背景开始介绍。

人工智能是一门计算机科学学科,致力于研究如何使用计算机来模仿人类智能。自20世纪计算机技术问世以来,人工智能就已经存在了,当时诸如Alan Turing之类的先驱者预见了计算机以人类可能以类似的方式解决问题的可能性。

经典的计算机编程通过在代码中显式编码算法来解决问题,指导计算机执行逻辑来处理数据并计算输出。相比之下,机器学习(ML)是一种AI方法,旨在寻找数据模型,并根据数据进行有效学习。有很多方法可以实现,包括预标记数据(或不标记数据),指导算法开发的强化学习,通过统计分析(或其他方法)提取特征,然后根据经过训练的数据集对输入数据进行分类,从而确定具有指定置信度的输出。

深度学习(DL)是ML的子集,它使用多层神经网络从迭代的大型数据集中训练模型。训练后,模型可以查看新数据集以推断出新数据。这种方法最近引起了很多关注,并已应用于各种问题,如图像处理和语音识别或金融资产建模。我们认为这种方法也对未来的关键基础架构和设备产生重大影响。

嵌入式系统中应用ML/DL

由于创建精确模型所需的大量数据集以及训练模型所需的大量计算能力,因此通常在云或高性能计算环境中进行训练。相反,推论通常应用于靠近数据源的设备中。尽管分布式训练或边缘训练是一个非常令人感兴趣的话题,但它并不是当今大多数ML系统的部署方式。为了简单起见,我们假设训练是在云端进行的,而推理将在边缘或设备内进行。

如前所述,机器学习和深度学习是以数据为中心的学科。因此,创建和训练模型需要访问大型数据集以及为数据操作提供丰富环境的工具和环境。使用了简化数据处理,实现复杂的数学库和统计分析的框架和语言。这些通常是诸如Python之类的语言框架,然后在其上构建ML框架。有很多这样的框架,一些常见的框架包括TensorFlow,Caffe或PyTorch。

机器学习框架可用于模型开发和训练,也可用于在边缘使用经过训练的模型来运行推理引擎。因此,一种简单的部署方案是在设备中部署诸如TensorFlow的框架。由于它们需要丰富的运行时环境(例如Python),因此它们最适合Linux上的通用计算工作负载。由于需要在移动设备上运行机器学习,我们看到许多轻量级的推理引擎(TensorFlow Lite,PyTorch mobile)已经开始开发,需要较少的资源,但是这些引擎相较于其全功能版本仍然尚未广泛使用或还不成熟。

不需要完整的ML框架就可以解释和运行某些模型。例如,包含深层/卷积神经网络(DNN / CNN)库的计算机视觉框架OpenCV可以从TensorFlow和其他框架中读取模型。OpenCV和DNN库可在许多不支持更复杂或功能齐全的ML框架的紧凑型操作环境中使用,因此第二个部署选项是使用诸如OpenCV的框架部署推理引擎。

机器学习是高度计算密集型的,早期部署(例如在自动驾驶汽车中)依赖于专门的硬件加速器,例如GPU,FPGA或专门的神经网络。随着这些加速器在SoC中变得越来越普遍,我们可以预期看到高效的引擎在受限设备中运行机器学习模型。发生这种情况时,另一个部署选项是编译经过训练的模型,以在DNN加速器上进行优化部署。一些这样的工具已经存在,并且需要现代的编译器框架(例如LLVM)以模型前端和硬件加速器后端为目标。

对嵌入式开发的影响

嵌入式开发通常是由部署高度优化和高效的系统的需求所驱动。经典的开发方法是从非常受限的硬件和软件环境开始,并仅在需要时才添加功能。这是RTOS应用程序的典型应用。

随着技术的日新月异,我们看到开发方法首先要使复杂的系统工作,然后在以后的阶段进行优化以进行部署。与软件的许多重大进步一样,开源社区是机器学习中创新步伐和规模的重要推动引擎。包含在开源中并通常从Linux开发开始的工具和框架正在迅速成为主要的创新途径。因此,同时使用实时操作系统(RTOS)和Linux或将开源从Linux迁移到RTOS是必须得到支持的重要开发旅程。

无论公司是刚刚起步还是准备部署优化的机器学习解决方案,他们都必须构建基础技术和丰富的开发环境来抽象化复杂性并启用异构运行时环境。

点击留言/查看留言

END

果喜欢右下点个在看,也会让我倍感鼓舞

往期精彩推荐




▲深度解析U-Boot网络实现(长篇好文)
手把手教系列之移动平均滤波器C实现
读U-Boot源码-C语言编程大法总结篇一
读U-Boot源码-C语言编程技巧总结篇二
U-Boot架构浅析
手把手教系列之IIR数字滤波器设计实现

关注置顶:扫描左下二维码关注公众号加星

讨论加群:扫描右下二维码添加,发送“加群”

关注

加群


免责声明:本文内容由21ic获得授权后发布,版权归原作者所有,本平台仅提供信息存储服务。文章仅代表作者个人观点,不代表本平台立场,如有问题,请联系我们,谢谢!

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭