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