智能家居AI本地推理模块开发(一)

来源:互联网 阅读:- 发布:2020-08-05 15:21:24

随着智能技术普及和消费者习惯改变,语音和视觉等人工智能技术越来越多地应用于智能家居,终端的边缘计算模块是实现落地的关键,是当前许多公司研发投入的重点方向。本文从实际工程角度,详细介绍当前语音识别模块硬件开发的主流方案,并对器件选型、设计、验证、调优和测试等环节做了分析,供相关同行参考。

一、背景介绍

当前家电厂商已经达成共识,场景化的体验是引领新品开发的方向标,智能语音、视觉识别给消费者带来轻松便捷的体验,受到市场和厂家的青睐。完整的AI方案包括终端硬件模块、嵌入式软件和AI算法、后台云端处理软件和互联网内容服务等。稳定、可靠、高性能、低成本、低功耗、易扩展软硬件的AI推理模块是家电厂商比拼智能落地的主要指标,优秀的硬件设计可以运行高性能的AI识别算法引擎,实现更多多质量的家电控制和互联网技能,帮助产品在激烈市场竞争中占据底层优势。

云计算业务近年来在行业和企业应用中取得快速进展,其优点是降低IT投资金额,提高IT设备利用率,降低企业运营成本。然而对AI而言,云计算不能实现大包大揽:首先,大量的数据需要上传网络进行处理,成本高,效率低;其次,中央节点处理后下发所需时延长;给网络和云端带来很大的压力;其次,数据安全和隐私问题;再次,业务连续性会因为网络导致瘫痪。然而边缘计算与云计算也不能割裂开来,二者紧密关系,边缘计算可以看作云计算的延伸,把计算业务下沉到本地的解决方案。因此云计算和边缘计算相互依赖,互为补充,未来云边协同将会成为主流模式。

本文针对当前行业主流开发方案,结合自身产品研发经验,介绍不同环节开发技术细节,用于指导开发者实践,避免犯错,缩短产品研发周期,提升产品开发质量。

二、技术方案制定

AI边缘计算模块实际上是指通过一种本地计算单元实体,其通过离线或在线的方法,利用已训练的机器学习模型来预测或估计有效部署中新的观测结果。推理不同于训练,无需学习和优化模型参数,只有前向计算,没有反向计算loss函数。但推理更加关注部署的效果,例如通过量化手段精简模型体积、网络剪枝、低延迟架构、二进制网络等。

边缘计算不同于边缘云计算,后者是把云端部署在物联网的边缘层。目前主流云计算公司纷纷推出相关边缘云计算服务。

考虑应用场合是智能家居/家电产品,AI推理模块要满足防潮,低成本的要求。整体技术方案通过采用硬件实现、嵌入式软件(固件)。其中硬件包括PCBA主板,传感器单元例如摄像头、麦克风以及配套线束等;嵌入式软件中包括AI算法软件。见下图1。

智能家居AI本地推理模块开发(一)

图1:AI边缘计算模块基本框图

硬件:供电5V/2A,2*Cortex-A72@1.8GHz+4*Cortex-A53@1.4GHz

视觉的性能规划:离线100张人脸,20种手势,10种步态,30种食材,20类衣物

语音的性能规划:离线200条命令

智能家居AI本地推理模块开发(一)

图2 AI推理模块规格参数

智能家居AI本地推理模块开发(一)

图2 AI推理模块规格参数(续)

三、硬件平台设计

推理模块属于本地计算。研制高可用性,高可靠性和低成本的模块,需要注意一下细节。

本文搭建一个语音视觉一体化人工智能本地推理模块,通过具体工程过程,描述开发的技巧和注意事项。

3.1 语音处理器平台选型

语音识别模块的处理器平台包括计算、控制基于一身的处理器,目前一般选择市场成熟稳定的ASIC,其中集成了CPU,MCU,GPU,存储器接口,外围控制器,音视频处理编解码单元,各种接口协议电路等。

智能语音识别模块一般采用智能音箱、智能语音助手的硬件解决方案,当前主流的集成电路芯片包括国产大陆的全志、瑞芯微、晶晨等厂商,欧美的美满、英特尔,台系的联发科、澜至等。不同厂家的芯片型号、市场应用等信息如表1所示。

从内部架构角度看,各家芯片大同小异,都具有处理器、存储器、音频前端和播放器、无线通信等子功能模块,区别往往反映在是否集成内部动态随机内存SRAM及其大小,程序存储器Flash,是否集成内部无线通信(WIFI/蓝牙)协议模块,音频输入通道数目的多少等。

下面的表格是目前主流智能语音处理器信息,不同芯片的硬件架构和电路设计大同小异,上层应用软件,如算法和技能开发等,可以针对性移植和开发适配。

智能家居AI本地推理模块开发(一)

图3 主流语音识别处理芯片参数对比

智能家居AI本地推理模块开发(一)

图3 主流语音识别处理芯片参数对比

首先需要澄清评估AI计算能力的单位,当前不同类型芯片采用不同的计算单位,概括起来有OPS,MACS和MIPS三种,OPS即每秒钟完成操作的次数;Flops是每秒钟操作的浮点运算次,用于衡量计算机浮点运算处理能力,常用于需要大量浮点运算的科学运算中,处理器类型主要针对GPU。MIPS主要用于CPU,每秒执行百万条指令,用来计算同一秒内系统的处理能力,即每秒执行了多少百万条指令。

MACS主要针对FPGA器件,定义为每秒钟执行的定点乘加操作次数。

OPS和MACs的换算关系是1MACs=2*OPS,原因是乘加等于两次操作。

浮点运算比整数运算更复杂、更精确、更耗费时间。

计算机的峰值速度通常是指其理论峰值速度,其计算公式是:

理论峰值速度(亿次)= MHz x 每个时钟周期执行浮点运算的次数 x CPU数目

算力评估方法:Tflops

诸如苹果处理器的算力,比较难以评估,这里采用方法是:

一般国内智能音箱和家电厂家综合考虑性能、成本、开发周期、技术支持等因素,大都选择大陆或台系主控平台。

强算力边缘处理器,例如Nvidia Jetson AGX Xavier,高大10TFlops的算力,性能与工作站相当,可以边缘训练,部署实时的Fast RCNN模型实现目标检测、识别、跟踪和决策等。

3.2 视觉关键器件选型

现在大多数芯片供应商提供turn key的解决方案和到位的技术支持服务,使得很多研发工程师认为开发难度降低,不需要太高的能力就可以完成全新智能产品的开发。事实上并非如此:一款性能优秀,成本富有竞争力的AI+IoT智能电路设计,对开发者的要求很全面,包括方案对比,元器件选型,图纸设计,可靠性评估,错误检查等环节,都是非常有挑战性的。

平台的选择一般不是纯技术导向,而是综合考虑成本,市场成熟度,可扩展性,开发生态等综合因素。主芯片如果是成熟的芯片公司的解决方案,则问题相对简单。供应商会对与主芯片关键性能相关的器件,例如存储芯片、射频芯片、晶振等,进行调试和验证,将合格物料的详细型号写入一个叫支持列表的文档,芯片用户只需要从支持列表中选择即可,大大降低设计难度和风险。一般支持列表中包括多家不同型号的器件,用户需要从性能、成本、成熟度、供货等维度考量,选择适合自己的型号。

下表是针对市场主流处理器,结合我司配合的上游芯片供应商伙伴,整理的硬件平台选择表格,通过技术参数和成本的综合对比,我们最终选择瑞芯微的RK3399 Pro作为边缘计算推理终端视觉模块的主控处理器平台,出于商业保密考虑,这里隐藏了部分关键价格信息。

智能家居AI本地推理模块开发(一)

图4 推理终端视觉模块选型对比表

如果主芯片没有那么周到的解决方案服务,就需要用户利用自己的经验进行选择,需要注意的是某些非标准的器件,例如定制接口的存储器等。


推荐阅读:诺基亚