EAI嵌入式人工智能发展现状研究

helloworld_86319425
• 阅读 441

1 1.1从AI到EAI AI即人工智能,赋予机器可以模仿人类利用知识完成某些行为。

嵌入式设备种类繁多,在生活中到处可见,例如手机、家电、电动车、电梯。生活中存在的海量嵌入式设备,是EAI发展的现实基础,而人工智能技术在近几年的突飞猛进,为EAI的发展提供了技术保障。

EAI即Embedded AI嵌入式人工智能,早在2018年9月中国(上海)国际嵌入式大会期间,何积丰院士指出,人工智能有向嵌入式系统迁移的趋势,嵌入式人工智能是一个崭新的重要机遇,同时指出,边缘计算、机器学习、AI芯片是嵌入式人工智能的三项前沿技术【1】。苏州大学王宜怀老师认为,嵌入式人工智能是以一般意义上的人工智能算法为基础,以嵌入式应用实践为目标,将人工智能训练和推理算法构件驻留于嵌入式计算机内部,实现嵌入式终端智能化,它是伴随着机器学习理论与算法的发展、嵌入式芯片性能的提高、嵌入式智能终端的市场需求而提出的,是人工智能产业化落地的主要形式【2】。

1.2嵌入式芯片的发展 我国首款嵌入式人工智能视觉芯片是在2017年12月20日由地平线机器人技术团队发布的面向智能驾驶的“征程1.0”处理器和面向智能摄像头的“旭日1.0”处理器,该芯片完全由中国企业自主研发,具有高性能、低功耗、低延时等特点,可直接嵌入至终端设备。

“征程1.0”处理器具备同时对行人、机动车、非机动车、交通指示牌等多类目标进行精准实时检测与识别的处理能力。基于该芯片研发的智能驾驶平台支持260种交通标志牌的检测, 对红绿灯、当前车道和相邻车道可行驶区域的识别准确率大于95%。

“旭日1.0”处理器具备在前端实现大规模人脸识别检测跟踪、视频结构化的处理能力, 能应用于智能城市、智能商业等场景。结合该芯片形成的人脸抓拍识别系统单帧最高能抓拍120个人脸, 功耗仅为1.5瓦。

2018到2019年是嵌入式人工智能发展非常有历史性的两年,这两年期间各大厂商做出了端侧神经网络超级计算芯片,并将功耗控制在了电池可使用的范围内。例如intel推出的Movidius神经网络计算棒,Nvidia推出的Jetson-Nano、瑞芯微推出的3399Pro等等,使得原先不可能实现的嵌入式人工智能项目可以成功落地。由此可见,人工智能芯片的发展极大地推动了嵌入式人工智能项目的发展。而嵌入式芯片之所以突飞猛进,是因为舍弃了通用指令集,因为通用指令集的功耗和性能,并不能体现出嵌入式的优势,所以各大厂商使用了自己的指令集,因为各大厂商指令集的不通用性,大大提高了嵌入式开发的复杂性,而使用通用指令集,则可单纯依靠高级编程语言,编码再编译后即可使用。

2 2.1案例一 2015年成立的深圳地平线机器人科技有限公司,为嵌入式人工智能平台发布了许多人工智能专用处理器Brain Processing Unit(BPU),以及智能驾驶处理器。曾在2018年发布过嵌入式人工智能抓拍识别摄像机,搭载的就是他们自研的嵌入式人工智能视觉芯片,将使用人工智能技术处理人脸识别问题,从旧式的上传照片到服务器再进行处理的云端处理方式,改进为了在摄像机本地提取人脸数据特征,只将人脸特征数据传送到服务器即可。我在工作时曾使用过这个摄像机,主要用于智能安防方向。综上所示,这样做的好处包括:实时性高、无用数据传输量减少、对网络依赖性小和使用专用嵌入式人工智能处理器,性能更强【3】。

2.2案例二 当前智能手机都有语音助手,例如苹果手机的Siri,华为的小艺,小米的小爱,微软的小娜,但这些语音助手都只能联网使用,在断网状态下功能相当不完善,可知这些语音助手都是在云端进行数据处理的,如果可以将语音助手程序本地化部署在嵌入式设备中,则在断网状态下也可正常使用。此案例可总结出,在嵌入式设备中本地化部署人工智能程序,可有效提高系统的可靠性,减少流量消耗,有效的保护用户隐私数据。

2.3案例三 京东配送机器人是由京东研发,进行快递包裹配送的人工智能机器人。它拥有基于认知的智能决策规划技术,遇到障碍物时,在判断障碍物的同时判断出行人位置,并判断出障碍物与行人运动方向与速度,通过不断深度学习与运算,做出智能行为的决策。除此之外,京东无人仓的日处理订单能力相当于人工仓库效率的5倍。

毫无疑问,未来会有很多岗位被机器人取代,而实现这种机器人的技术就是在嵌入式平台上的人工智能应用。

3 3.1国内近期讨论 GTIC 2021嵌入式AI创新峰会于5月25日在北京举办,此处介绍会议上的一些观点。

大华股份先进技术研究院科学家朱树磊做《嵌入式AI算法模型微服务的设计与实践》演讲。微服务架构在服务端开发中已十分普遍,它把功能模块拆分出来,运行在不同的进程或不同的服务器上,相比于单体架构,微服务提高了开发效率、降低了开发难度、维护成本和开发时间,可扩展性强。他认为,在当前行业AI智能需求快速增长的背景下,嵌入式算法产品架构设计和开发流程亟须变革,嵌入式平台模型微服务化能够降低嵌入式开发的门槛。但是相比于云原生微服务,嵌入式微服务在功耗、算力、内存等资源方面受限,无法复用成熟的云原生生态,需要自己打造。他认为,打造模型、接口、代码三大编译器是嵌入式平台模型微服务化的关键。

知存科技CEO王绍迪谈到,当前已进入后摩尔时代,尤其当芯片进入7nm和5nm阶段后,研发速度放缓,芯片研发成本急剧增高,每一次迭代单个芯片成本增加1倍。但嵌入式设备对先进工艺芯片的需求并不强烈,反而更青睐于低成本、低功耗、易开发的芯片。目前的芯片都是采用冯诺依曼架构,早期的冯诺依曼计算机结构是以运算器为中心,后期的冯诺依曼计算机结构以存储器为中心,而存储器的速度与芯片速度严重不匹配,导致计算机整体计算速度慢。为了解决存储器瓶颈问题,出现了许多不同的方案,包括3D Xpoint、近内存计算、近存储计算和存内计算。王绍迪认为存算一体是最高效率的AI计算【4】。存算一体芯片技术,旨在把传统以计算为中心的架构转变为以数据为中心的架构,其直接利用存储器进行数据处理,从而把数据存储与计算融合在同一个芯片当中,可以彻底消除冯诺依曼计算架构瓶颈,特别适用于深度学习神经网络这种大数据量大规模并行的应用场景。

4 4.1 EAI论文阅读总结 以下是我在知网上查找到的论文,论文内容多为人工智能算法在嵌入式平台的实现。做了一个表对论文简单进行统计,关注重点为神经网络模型和嵌入式设备。

论文

神经网络模型

嵌入式设备

基于CNN的汽车安全驾驶辅助系统的设计与实现_陶文

LeNet-5

Caffe

树莓派、

Intel Movidius神经计算棒

基于NB_IoT的垃圾回收智能管理系统研究与实现_戚逸然

LeNet-5

基于STM32微控制器的开发板,阿里云服务器

基于机器学习的人脸表情识别与分析系统_孙雨琛

MTCNN

Multi-task convolutional neural network(多任务卷积神经网络)

NVIDIA Jetson TX2,一台7.5瓦的单模组超级计算机,可为终端提供AI计算功能

基于卷积神经网络的手势识别算法优化及嵌入式实现_张玉婷

CNN(卷积神经网络)

Xilinx ZC706开发板

基于人工智能的罐车装料口视觉跟踪系统研究_朱佩

SSD

Single Shot MultiBox Detector

以Contex-A7为处理器的开发板

基于人工智能的水稻病害检测系统研究_牛旭

CNN

TensorFlow

ARM 开发板

基于人脸属性识别的嵌入式电影推荐系统_许锐

宽残差神经网络

Keras、TensorFlow

RK3399开发板

基于深度学习的视觉目标跟踪系统设计与实现_张明喆

GOTURN

基于深度学习的物体追踪

NVIDIA Jetson TX1

嵌入式人工智能与物联网实验开发板教学应用_杨焕峥

意法半导体公司的STM32系列

轻量级卷积神经网络的嵌入式人脸检测与识别系统设计与实现_郭嘉

MTCNN

NVIDIA Jetson TX2

树莓派

通过对以上论文的阅读,可以发现在以上的嵌入式人工智能应用系统中,嵌入式设备都是性能强大、功能完善的开发板,使用这些开发板可以简化底层的工作,在将代码从不同平台移植的时候,可以更加方便,但成本也会上升。

以上论文中大部分嵌入式平台都搭载了Linux操作系统,目前常用的嵌入式操作系统除了Linux还有Android等。但是与PC开发不同,嵌入式的开发环境更加复杂,为了实现更低的功耗和专一的功能,嵌入式芯片厂商往往会加入专有的IP核、DSP、ASIC等来实现特定的运算加速,嵌入式专用芯片的效率远远高于PC,而成本和功耗又低于PC的CPU。开发嵌入式人工智能项目,往往都是在PC上开发完成,再移植到嵌入式平台,需要多注意嵌入式平台芯片的指令集与通用指令集的异同。

以上论文的共性为,都是做的计算机视觉。对论文的内容进行概括,可以知道要成为一名EAI开发工程师所需要的技术栈,包括嵌入式Linux开发、STM32开发、人工智能等。


EAI嵌入式人工智能发展现状研究 https://blog.51cto.com/u_15061951/4731014

点赞
收藏
评论区
推荐文章
blmius blmius
2年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Easter79 Easter79
2年前
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移
Wesley13 Wesley13
2年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
2年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Stella981 Stella981
2年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Wesley13 Wesley13
2年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
EAI嵌入式人工智能发展现状研究
11.1从AI到EAIAI即人工智能,赋予机器可以模仿人类利用知识完成某些行为。嵌入式设备种类繁多,在生活中到处可见,例如手机、家电、电动车、电梯。生活中存在的海量嵌入式设备,是EAI发展的现实基础,而人工智能技术在近几年的突飞猛进,为EAI的发展提供了技术保障。EAI即EmbeddedAI嵌入式人工智能,早在2018年9月中国(上海)国际嵌入式大会期间,
Python进阶者 Python进阶者
5个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这