QCon 全球软件开发大会(北京站)门票 9 折倒计时 4 天,点击立减 ¥880 了解详情
写点什么

对话京东:开发者需对端侧 AI 研发多些耐心

2020 年 4 月 10 日

对话京东:开发者需对端侧AI研发多些耐心

随着物联网的快速发展,越来越多的用户希望将 AI 能力下沉到边缘层,让边缘设备能够自动处理关心的一些数据,再把结果上报到云平台。这样做既节省了资源,又提高了运算效率。目前,很多厂商都推出了针对此场景的工具、平台,InfoQ 希望通过该选题让广大开发者了解广大公司的实践落地以及技术选型等信息,推动这一领域的发展。


随着技术进步,手机等移动设备已成为非常重要的本地深度学习载体,然而日趋异构化的硬件平台和复杂的终端侧的使用状况,让 AI 技术在端侧的应用能力颇受挑战。端侧模型的推理往往面临着算力和内存的限制,为了能够完整的支持众多硬件架构,并且实现在这些硬件之上人工智能应用性能的优化,不少科技公司开启了深入研究。本文,InfoQ 采访了京东云与 AI 视觉研发部的产品经理张志强,了解京东 AI 技术在端侧的应用。


AI 技术在端侧能解决什么问题?

在探讨这个话题之前,我们需要先明确端侧的定义。采访中,张志强表示,端侧其实是相对于云中心侧来讲的。云中心侧其实是一种集中式服务,所有采集和感知到的视频、图像数据都通过网络传输到云中心侧进行后续处理。云侧的资源高度集中并且具有很高的通用性,但是随着 IoT 设备和数据的指数爆发式增长,云侧的集中式计算模型慢慢暴露出了很多不足,比如数据处理的实时性,网络条件制约,数据安全等。


AI 技术用于端侧也就是我们常说的边缘计算,张志强表示,这种模式可以更好的支持 AIoT 场景,具有如下优点:一是 AI 技术用于端侧可以第一时间对收集的数据进行处理,不需要通过网络上传到云侧的处理中心,极大加快了系统响应也减少了系统处理延迟,5G 技术的普及也为端侧处理提供了保证;二是端侧计算可以更高效的处理有价值的关键数据(大约 20%),其余的数据(大约 80%)只是临时性的,在端侧结合 AI 能力,不仅可以更及时处理数据,而且减轻网络带宽的限制和缓解对中心侧数据存储的压力;三是在端侧的 AI 技术可以高效地对用户的源数据进行处理,将一些敏感的数据进行清洗和保护,端侧设备只将 AI 处理后的结果进行上报。


总的来说,AI 在边缘侧的执行可以实时进行数据处理,实时响应,有效降低因数据传送到云计算中心而导致的延迟。


目前,主要的应用是物联网的边缘计算,京东对内、对外都有一些落地案例,例如:无人售货机和智能结算台上使用了 AI 的商品检测技术,包括顾客所选取的商品 SKU 等,主要采用的是端侧的 AI 能力;以及在智慧园区里进行基本的人脸结构化、人体结构化、车辆结构化,还有基于视频分析的周界安全检测、物体遗留等场景。某些场景不仅结合了边缘计算的 AI 能力,同时也使用了云端的 AI 能力进行二次分析,采用的形式是云端协同。在一些更复杂的场景,比如智慧园区,智慧社区,智慧城市的项目落地中,大多都是采用的端云协同的应用形式。


端侧 AI 的研发难点

众所周知,端侧的技术难度是如何在资源有限的硬件环境里满足业务对性能的要求,无论是存储、内存,或者计算资源都比较有限。张志强表示,端侧对 AI 模型提出了更高的要求,比如对模型生命周期的管理,发布,回滚,灰度,版本管理等,如何方便模型的升级更新需要建立一套完善通用的机制和平台。另外,边缘计算的硬件设备种类很多,在初期对不同硬件架构的学习、适配和模型迁移工作会占用比较长的时间,比如有很多之前自定义的模型算法算子不支持,需要算法侧重新设计和开发,无形中增加了 AI 在端侧应用的复杂度。


为此,经过前期积累,京东也针对市面上流行的不同边缘计算硬件产品进行了抽象和平台化,屏蔽底层差异化,统一建设了从算法开发、模型适配、本地测试,部署上线等的一系列 CI/CD 机制,实现快速交付。


过往,不少开发者都会遇到离线训练和在线推理结果不一致的问题。对此,京东方面发现训练和推理的结果不会完全一样,但是基本一致。可以从以下三方面考虑:一是在模型设计上尽可能轻量化。在保证模型性能的前提下,使网络参数减少的同时,不损失网络性能,尽可能的降低模型的复杂度以及运算量;二是性能与精度进行权衡,找到平衡点;三是检测两者的预处理与后处理有无差异,可以在网络处理前后进行预判和比较。


京东端侧 AI 技术实践

2019 年中,京东云与 AI 视觉研发部开始规划在端侧场景下的 AI 视频分析平台 mVCG-Air,与该版本相呼应的是在云端场景部署的 mVCG-Pro,二者统称为 mVCG(mega-Video Computing Grid),也就是超大规模的视频计算分析网络。



mVCG-Air 技术整体架构图


mVCG-Air 是 AI 视频分析处理能力在端侧应用的典型产品,经过快速迭代 mVCG-Air 目前已经在不同场景落地。张志强表示,该平台解决了在落地场景中接入的设备多,同时对视频分析的时效性很高,云端处理受网络带宽有滞后影响的问题。


此外,mVCG-Air 结合了目前性能较高的端侧计算设备,同时内部全部使用了京东智联云自研的 AI 核心技术,所有算法模型针对端侧计算设备进行了全面优化和加速,开发者可以轻松实现定制化、快速交付。


有必要统一模型研发流程

综合整个实践过程,张志强表示,非常有必要统一所有模型的研发流程,使得模型研发之初的特征工程再到模型训练,再到推理上线等做统一的规划。比如,京东同一个模型未来可能会在不同的场景都需要部署落地,有的是基于边缘计算的 mVCG-Air 部署,有的是基于云中心的 mVCG-Pro 进行部署,那么就需要有统一的模型训练和转换机制。同时,同一个模型有可能会在不同的边缘硬件上进行部署,在模型设计之初就需要考虑后续的一致性等问题。京东内部已经沉淀了一套完整的模型研发测试流程,使得一个模型可以轻松同时落地不同的异构硬件设备上。


资源调度设计

关于资源调度,其实包括边缘侧 mVCG-Air 和中心侧 mVCG-Pro 的调度,也包括 mVCG-Air 管理的设备之间的调度。张志强表示,在 mVCG 内部有个很重要的模块组件,就是模型仓库,与其相关联的有算力调度,任务调度等。



算法仓库体系架构图


算法仓库体系架构使得智能分析能力不再固化在 mVCG 的产品中,实现“一套平台,多种算法”,具有系统高可用、资源高利用率、算法灵活开放等优势。基于算法仓库可以对 mVCG 所有算法模型进行统一高效管理,包括模型管理、模型灰度部署、模型发布、模型升级、模型算法版本管理。每个模型都有自己的画像 Model Profile,通过分布式组件,根据模型画像和当前业务负载实现模型算力的灵活分配和调度,所有模型算法是基于插件机制实现灵活部署、自动分配、快速加载、高效运行和无感知版本更新。


硬件选型

事实上,软件层面的定制优化永无止境,这包括模型加速推理,模型量化剪枝,让模型体积更小,占用资源小同时又不失精度。当然,软件层面的优化工作也需要取决于边缘侧设备的开放程度。


除了软件层面的能力,AI 所需的超强算力必须有合适的硬件与之相匹配。张志强表示,京东云与 AI 视觉研发部 mVCG-Air 在研发过程中使用了 ARM 架构的 CPU+NPU,现在不断有更新、更快的硬件加速卡或者是端侧产品推出,选取性价比最高,同时最适合业务场景的才是最好的。


接下来,张志强透露,mVCG-Air 将继续赋能感知设备以智能,并融合云端物联网和信息网的数据,实现对人(人脸、人体)、车、物体、场景、行为的全息感知,同时深入挖掘多维数据的潜在价值。应用的重点包括京东内部的很多重要场景,也包括对外的场景,比如智慧园区,智慧城市,智慧车站,智慧警务等。


未来规划

边缘计算作为传统云计算的重要补充,各自发挥特长,随着端侧设备处理能力的大幅度提升,基于 AI 的智能设备正在发挥越来越重要的作用。


AI 和端侧的结合其实属于 AIoT 的一部分,因为智能物联网 AIoT 是在 2018 年兴起的概念,目前各类 AI 公司、芯片公司都处在百家争鸣的阶段,市场空间非常大,包括端侧人工智能在建筑人居、工业制造、智慧城市等不同产业领域的瞭望,都充满了期待。


采访最后,张志强表示,2020 年,AIoT 正在发生的一个趋势是人工智能和设备的加速融合。大多数情况下,端侧人工智能计算和云侧计算将会长期共存,甚至采用混合的方式,一部分由设备自身的 AI 能力及时执行运算,另一部分通过统一云中心完成。现在,业界对于端侧人工智能讨论比较多的还是软硬件选型、动态调度和垂类落地的问题。作为云计算的下沉计算模型,端侧的人工智能发展还需要一些时间和耐心。


嘉宾介绍:


张志强,京东云与 AI 视觉研发部产品经理,主要负责人工智能计算机视觉领域相关产品的设计和打造。加入京东之前,先后在国内外知名企业从事大数据平台和搜索推荐的开发工作。请关注京东智联云开发者(ID:JDC_Developers)了解更多


2020 年 4 月 10 日 08:152247
用户头像
赵钰莹 InfoQ高级编辑

发布了 695 篇内容, 共 408.8 次阅读, 收获喜欢 2271 次。

关注

评论

发布
暂无评论
发现更多内容

量化合约机器人APP开发|量化合约机器人软件系统开发

开發I852946OIIO

系统开发

Adobe国际认证,Photoshop软件调整图层大小,官方教程

Adobe国际认证

Adobe国际认证

十大经典系统架构设计面试题

有理想的coder

架构 面试 架构设计 架构面试

阿里内部流传的JDK源码剖析手册!GitHub已获上千万的访问量

周老师

Java 编程 程序员 架构 面试

这份阿里P8大佬手写的 “Java核心面试精选” 疯传阿里内网

码农之家

Java 编程 程序员 互联网 面试

【LeetCode】删除排序链表中的重复元素Java题解

HQ数字卡

算法 LeetCode 4月日更

金三银四期间获千万下载量!阿里大牛熬夜45天整理出来的Java面试突击手册也太香了!

Java王路飞

Java spring 程序员 架构 面试

阿里被转载上100W次的Java面试题教程!已助我拿下9家大厂offer

周老师

Java 编程 程序员 架构 面试

使用transform制作书本翻页效果

空城机

JavaScript 前端 4月日更 书本翻页

web简易视频聊天室+媒体流插入

anyRTC开发者

前端 音视频 WebRTC RTC

深入浅出带你掌握线程、多线程和线程池

华为云开发者社区

Java 线程 多线程 线程池 操作系统

合约量化机器人系统开发|合约量化机器人软件APP开发

开發I852946OIIO

系统开发

vue2的$refs在vue3组合式API中的替代方法

devpoint

Vue3 $refs vue2 this.$refs

HTTPS双向认证

上海派拉基础研发

https HTTP ssl SSL 连接

5分钟教你学会GaussDB数据分布策略设计

华为云开发者社区

数据库 分布式数据库 GaussDB GaussDB(for openGauss) 数据分布

​量化交易机器人系统开发,量化策略交易平台搭建

WX13823153201

MySQL性能监控与调优

Sakura

四月日更

Linux df 命令

一个大红包

linux命令 4月日更

Gartner免费在线研讨会:安全访问服务边缘(SASE)产品策略

Geek_bacee5

Gartner在线研讨会 SASE技术免费在线研讨会

合约量化交易机器人系统开发|合约量化交易机器人APP软件开发

开發I852946OIIO

让GitHub低头的10W字阿里内部Java面试手册有多强?

周老师

Java 编程 程序员 架构 面试

情报研判分析可视化平台建设方案,重点人员管控系统开发

WX13823153201

Rust从0到1-枚举-match控制流

rust 枚举 match

百度联合清华,全球首个十亿像素数据集来了!

百度大脑

人工智能 百度

天哪,没有设计经验的ta,居然掌握着“PS大师级

Adobe国际认证

ps

从阿里被罚182亿,看DeCom时代的崛起!

北熊老师

区块链 太空猫公链

我们真的可以使世界成为无密码的地方吗?

龙归科技

网络 安全性

13年Java开发经验精华总结!29大核心知识模块,带你直达架构师!

Java架构追梦

Java 阿里巴巴 架构 全栈知识点

病毒:注册表的认识以及用c语言编写一个“百分之一熊猫烧香”

Machine Gun

网络安全 信息安全 WEB安全 病毒

如何利用ipad随时随地开发代码

有理想的coder

ipad 编程 远程

与同事组队,用 3s 把工作节点打通,建立信赖与协作关系。

叶小鍵

边缘计算隔离技术的挑战与实践

边缘计算隔离技术的挑战与实践

对话京东:开发者需对端侧AI研发多些耐心-InfoQ