共计 2708 个字符,预计需要花费 7 分钟才能阅读完成。
桔妹导读:「滴滴技术」将于本月开始,联结各技术团队为大家带来精彩分享。你想理解的技术干货,深度专访,团队及招聘将于每周三与你准时见面。本月为「滴滴云平台事业群分享月」,在明天的内容中,云平台事业群 - 机器学习平台团队与你聊一聊 AI 技术在滴滴平台上的实际思考。IFX 团队通过 2 年多的奋斗,已将 AI 部署服务于公司平安、地图、车载、普惠、车服、IT 等业务团队,笼罩司乘 APP,桔视设施,代驾记录仪,AIBox(边缘计算 AI 盒子),国际化司乘 APP 等智能化需要的场景,笼罩千万级别设施,千亿级别日活调用量。
1. 背景
随着人工智能技术的倒退,深度学习技术在工业界失去了宽泛的利用。数据、算法、算力三个维度的协同倒退,逐渐将 AI 推向成熟期,并且渗透到生存的方方面面。
滴滴领有海量出行大数据,同时领有大量的司乘端手机用户、桔视设施(车载摄像头)、GPU 集群等算力平台,对云、边、端 AI 能力的挖掘将迎来一个黄金时代。滴滴机器学习团队从 2018 年 9 月开始调研和搭建自研推理引擎平台 IFX,在 2018 年 12 月开始对内提供服务,并在司机端和乘客端 APP 中落地。经验了 2 年的倒退,IFX 曾经在公司的大量业务中失去利用,服务于订单和准入的要害门路,司乘领取绑卡、实名认证、金融平安、提现等业务流程,高危场景辨认,费用判责,追尾碰撞检测,定位导航,路网更新等业务场景。涵盖国内 / 国际化司乘 APP、桔视(车载摄像头)、代驾记录仪、滴滴云 GPU 等算力平台。目前滴滴 IFX 平台服务千万级别设施,平台日活调用量超千万亿。
2. 架构
在服务业务的过程中,咱们发现纯正的推理引擎曾经很难满足业务高效的倒退,因而,咱们对平台进行了逐渐的迭代与降级,将其分为 4 层构造:接入层,软件层,引擎层,算力层。
接入层
通过接入层,次要实现与业务工程的对接工作,同时咱们在该层减少了推理 / 受权数据埋点,可能及时的展现设施接入量、推理接入量、设施散布、推理品质等信息。
- local inference 需要:提供各类编程语言接口的 SDK
- remote inference 需要:提供 http/thrift/grpc 等接口的规范服务化 api
- 受权与埋点:提供平安受权接入计划,提供业务模型 inference 相干可视化报表
软件层
在软件层,次要实现与业务算法的对接工作,次要实现模型解析和模型治理性能。
- 模型瘦身:提供更小的模型文件,升高 SDK 大小,同时晋升在线降级模型速度
- 模型加密:确保模型构造安全性,不容易被破解
- 版本治理:解决业务迭代过程中,多个模型版本治理问题
- 自动测试:模型解析,带来精度差别,自动测试保障训练模型和推理模型表白一致性,同时也会测试模型推理性能以及硬件设施适配工作
引擎层
所有引擎优化相干工作集中在该层,针对异构设施算子的开发和调优,引擎零碎调用的调优,
- 性能诊断器:为引擎层提供离线性能诊断工具,分析模型在不同硬件设施上的体现,同时领导 kernel 优化,模型构造优化等工作
- 引擎瘦身与混同:提供更小的体积以及平安的内核
- 算子优化:次要整合低精度、图优化、异构调度、汇编优化等能力,同时提供 auto tuning kernel 的能力,为专用硬件提供最佳的汇编实现
- 系统优化:除了计算自身,提供系统调度、I/O、预 / 后处理等耗时环节的优化
算力层
算法模型理论运行的硬件设施,目前针对云、边、端等场景,反对了大部分的处理器。次要包含 NVIDIA GPU,ARM,X86,寒武纪等设施。
3. 产品化
基于架构的降级,IFX 团队进一步打造 AI 部署产品化解决方案,争取为业务提供更加系统化的反对。次要围绕以下 6 个方面进行能力建设。
高性能
为保障业务的外围竞争力,模型执行速度对于老本、平安、业务成果等影响十分大,咱们针对推理引擎内核以及全链路进行了一次性能革新,在业务性能上,失去了不错的成果。
- 汇编级优化:外围 op 汇编优化,模型性能晋升 40% – 200%
- 全链路优化:预处理、后处理、网络调用链路优化,服务化性能晋升 30 – 260%
精美性
为升高 APP 包大小,晋升用户体验,咱们专门针对引擎以及模型,做了大量的裁剪和压缩工作。
- 模型压缩:多种压缩策略联结驱动,压缩不升高精度,压缩率 < 25%
- 引擎压缩:二进制 elf 压缩,进一步升高 SDK 大小,通常压缩率在 50% 左右
统一性
为了晋升接入效率,提供更加高效的接入计划,针对云、端、边等多种场景,IFX 能够提供对立的接入计划,同一个算法模型,反对部署到多种不同硬件设施。
多框架
业务方选用的算法框架绝对比拟自在,为让体验和接入流程统一,IFX 反对将 TensorFlow,PyTorch,Caffe,Darknet 等不同的深度学习训练失去的算法模型,转换成 IFX 反对的模型,并提供兼容性设计,满足业务迭代以及算法降级的需要。
自动化
AI 模型落地的过程中,存在较大的人工操作,为了升高每一个环节人工干预的水平,咱们梳理了一些值得自动化施行的环节,帮忙业务更快进行开发。
- SDK 自动化生成
- 服务自动化压测
- 模型正确性评测
- 功耗、CPU Loading 等自动化测试
安全性
滴滴有大量的算法部署在端侧,目前咱们发现软件系统会受到一些内部的攻打,为了更好的晋升 AI 软件的运行安全性,保障滴滴业务的同时,更好的对外输入,咱们进行了一次架构平安降级。
- 接入层:离线、在线受权计划,严控接入设施
- SDK 层:IOS,Android,Linux 代码混同,爱护业务逻辑
- 引擎层:函数级别加密和混同,杜绝反调试,反编译
- 模型层:模型文件加密,爱护算法构造
4. 总结
以后,IFX 曾经服务了外部不少的业务,然而在 AI 部署的过程中,仍然存在很多低效的环节须要迭代和优化。IFX 团队也将持续在这个过程中进行能力建设,后续咱们打算将整个开发和生产流程线上化,采纳对立的开发环境,整合开发、测试、验证、剖析、上线流程,须要做的工作还很多,但将来可期。
团队介绍
滴滴云平台事业群滴滴机器学习平台团队是一个由技术和幻想驱动的团队。在高性能计算,异构计算畛域有独到的技术劣势,团队次要成员曾推出了国内最早的云上 GPU,HPC 产品。在滴滴,机器学习平台团队致力于构建稳固、平安、高效、高性能、易用性强的 AI 一站式开发和部署平台,包含高效的滴滴机器学习平台建设、业务价值发明和落地的滴滴云平台建设、谋求极致高性能的推理引擎建设。
作者简介
机器学习平台框架组负责人,现负责异构计算、AI 零碎 优化等工作, 为公司提供端 / 云 AI 优化和部署计划。曾就任于阿里,参加异构计算集群、阿里云 HPC 产品等研发工作。
延长浏览
[](http://mp.weixin.qq.com/s?__b…
内容编辑 | Teeo
分割咱们 | DiDiTech@didiglobal.com
滴滴技术 出品