大淘宝技术团队论文入选计算机系统畛域顶级国内学术会议OSDI,这是淘宝零碎论文首次入选该国内顶会,论文详解了阿里历经四年、自主研发的首个端到端、通用型、规模化产业利用的端云协同机器学习零碎“瓦力”——Walle。OSDI特地邀请到的David Tennenhouse在大会宗旨演讲中专门举荐了Walle零碎,对其技术先进性和利用落地成果赞美有加。目前,Walle作为阿里机器学习的基础设施反对 30+APP上 的300+个算法工作。
OSDI 会议
USENIX OSDI(Operating Systems Design and Implementation)是计算机系统畛域最顶级的国内学术会议之一,被誉为操作系统畛域的奥斯卡,领有极高的学术位置和影响力,会集了寰球学术界和产业界零碎畛域专业人士的前沿思考和突破性成绩。往年OSDI大会特地邀请了David Tennenhouse作宗旨演讲,他是IEEE Fellow,曾负责Intel、Amazon/http://A9.com、Microsoft、VMware等公司研究院和DARPA的首席/主管,也曾任教于MIT。David Tennenhouse在宗旨演讲中专门举荐了Walle零碎,并在Walle talk的前后通过邮件和Slack等形式被动与作者们进行了交换。
Walle 零碎命名由来
Walle(瓦力)来源于2008年电影“机器人总动员 WALL-E ”。在电影中,WALL-E 机器人负责对地球垃圾进行清理,变废为宝。Walle的架构者也秉持相似的初衷,心愿所设计和搭建的端云协同机器学习零碎可能像 WALL-E 机器人一样,无效利用数以十亿计挪动端设施上的用户数据,充沛开释其被忽视的价值,为用户提供更好的智能服务。
Walle 零碎设计哲学
图1: 机器学习工作开发者视角中的Walle工作流程
为了突破支流基于云服务器的机器学习框架延时高、开销老本大、服务器负载高、隐衷平安危险低等瓶颈,Walle采纳了端云协同机器学习新范式,以充分发挥挪动端设施贴近用户和数据的人造劣势,实现端云优势互补。不同于端云协同学习已有工作(次要在算法层面,并针对特定利用场景中特定的机器学习推理或训练任务),Walle是首个端到端、通用型、规模化产业利用的端云协同机器学习零碎。Walle反对机器学习工作在任意阶段(前解决、模型训练与推理、后处理)在端和云之间替换任意必要的信息(例如数据、特色、样本、模型、模型更新、两头后果等)协同实现工作。Walle遵循端到端的架构设计,面向机器学习工作,从开发者视角登程,笼罩了机器学习工作的研发期、部署期和运行时,并反对端侧和云侧运行时的每个阶段。此外,Walle还遵循通用型的零碎设计,而非集成大量面向特定利用、特定平台的定制计划。Walle向下磨平了端云设施软硬件的差异性并保障挪动APP的轻量化,向上则撑持了多种类型机器学习工作的大规模产业化利用。
Walle 零碎架构
图2: Walle 的整体架构Walle
次要蕴含以下三个外围零碎模块:
- 部署平台,治理大规模的机器学习工作并及时部署到亿级设施上;
- 数据管道,次要波及机器学习工作的前解决阶段,为端侧和云侧提供工作输出;
- 计算容器,提供跨平台、高性能的机器学习工作执行环境,同时满足机器学习工作天级迭代的理论需要。
具体来说, - 计算容器底层是 MNN 深度学习框架,蕴含高性能的张量计算引擎和规范数据处理与模型运行库,并通过革新的 Python 线程级虚拟机对外对立透出接口,以反对多种机器学习工作的全链路执行和多任务的并行。MNN 的外围技术创新点是几何计算和半自动搜寻这两个新机制,其中几何计算次要通过形变算子的拆解,极大地升高了为十多种硬件后端手工优化上百个算子的工作量,而半自动搜寻机制则进一步实现了在运行时疾速搜寻计算图的最优可用后端和执行计划。Python 线程级虚拟机则舍弃了 Global Interpreter Lock(GIL)并首次反对了多任务多线程的并行,进一步面向挪动APP的理论业务需要,通过裁剪与革新首次移植到端上;
- 数据管道引入了全新的端侧流解决框架,遵循“单台资源受限挪动端设施上针对有限数据流的有状态计算”这一根本准则,使得用户行为数据在近数据源处可能被高效解决,同时设计了基于字典树的工作触发管理机制,实现了端侧多个相干流解决工作的批量触发执行。另外,在端云之间搭建了实时传输通道,以反对数据百毫秒级的上传下达;
部署平台通过git机制实现细粒度的工作治理,并采纳推拉联合、多批次工作公布的形式保障实效性和稳定性,同时反对对立和定制化的多粒度工作部署策略。
典型理论利用中的零碎性能
图3: 电商直播场景下端云协同看点辨认流程
在淘宝直播场景中,智能看点工作是指通过机器学习办法主动地定位出主播介绍解说商品看点(即商品对买家有吸引力的信息)的工夫点,从而晋升用户体验。相比拟于以前的纯云智能看点工作链路,引入Walle后的新端云协同链路,将均匀生产每看点的云侧负载升高了 87%,将智能看点笼罩的主播数量晋升了123%,并将单位云算力产出的看点量晋升了 74%。真机测试显示,在华为 P50 Pro上均匀每次看点工作的总耗时为130.97 ms,而在 iPhone 11 上的耗时为90.42 ms。上述后果凸显了及端云协同学习框架的实用性以及Walle计算容器的高性能。
图4: 电商举荐场景下基于Walle数据管道的IPV特色生产流程
在电商举荐场景中,商品页面浏览(Item Page-View, IPV)特色次要记录了用户在某个特定商品的详情页上的行为(例如珍藏、加购物车、购买下单等),该特色对于举荐模型起着非常重要的作用。云侧原有的 IPV 特色生产链路,产出一条特色的均匀提早为33.73 秒,同时耗费了大量的计算、通信、存储资源,并存在0.7%的错误率。相比之下,Walle全新的数据管道能够在端侧实现IPV特色生产过程,均匀端侧提早仅为44.16毫秒,同时削减了超过90%的数据量,并保障了特色的正确性。这些结果表明:相较于支流基于云的数据管道,Walle新数据管道大幅晋升了特色生产和生产的时效性、高效性和正确性。
图5: 某个线上随机筛选的机器学习工作的部署过程
为了测试Walle部署平台的时效性和规模化,随机筛选了一个线上的机器学习工作,并监控了其部署到指标设施群体的整个流程。在保障工作稳定性的前提下,Walle部署平台胜利笼罩在线的700万挪动端设施须要7分钟,而笼罩所有的2200万设施须要22分钟。
外围模块的Benchmark测试后果
图6: MNN vs. TensorFlow (Lite), PyTorch (Mobile)
在Android和iOS挪动端设施以及Linux服务器的支流硬件后端上对MNN与TensorFlow (Lite)和PyTorch (Mobile)进行了比照测试。测试采纳了视觉、自然语言了解、举荐畛域中罕用的7个模型。结果表明:MNN简直在所有测试样例中的性能都超过其余的深度学习框架。除了高性能之外,MNN还可能反对所有挪动端硬件后端上每个模型的运行,而TensorFlow Lite和PyTorch Mobile则无奈反对某些硬件后端或模型,因而MNN的通用性更好。
图7: MNN vs. TVM
此外还进行了MNN和TVM的比照测试,其中TVM主动调优和编译的主机是MacBook Pro 2019和NVIDIA GeForce RTX 2080 Ti。一方面,TVM的主动调优和编译大概耗时几千秒,而MNN在运行时的半自动搜寻仅须要几百毫秒。进一步联合MNN和TVM在设计和理论部署上的区别(尤其是TVM在iOS设施上模型动静部署能力欠缺,详见PPT和论文),能够得出:MNN可能反对波及大规模异构硬件后端并须要工作频繁疾速迭代的产业界场景,而TVM则不可行。另一方面,在每个硬件后端上每个模型的推理工夫方面,MNN也低于TVM,尤其是在GPU服务器上,这次要因为MNN中手工算子优化。
图8:Python线程级虚拟机 vs. CPython(基于线上3000万次机器学习工作执行的统计分析)
最初还对Python线程级虚拟机和CPython进行了性能比照测试。结果表明:在波及不同计算量的3种工作类型上,Python线程级虚拟机性能大幅晋升,次要起因在于解除了GIL并反对工作级的多线程并发。
业务落地状况
目前,Walle作为阿里巴巴团体机器学习的基础设施,每天被调用超过千亿次,反对着 30 多个挪动 APP(包含手机淘宝、饿了么、速卖通、菜鸟裹裹等)上 300 多个视觉、举荐等工作。此外,MNN已在GitHub开源,目前取得 6.8k stars和 1.4k forks,同时入选了 2021 年“科创中国”开源翻新榜单,并已在 10 多个其余公司商业化利用。
论文作者及援用信息
Chengfei Lv, Chaoyue Niu, Renjie Gu, Xiaotang Jiang, Zhaode Wang, Bin Liu, Ziqi Wu, Qiulin Yao, Congyu Huang, Panos Huang, Tao Huang, Hui Shu, Jinde Song, Bin zou, Peng Lan, Guohuan Xu, Fei Wu, Shaojie Tang, Fan Wu, and Guihai Chen, Walle: An End-to-End, General-Purpose, and Large-Scale Production System for Device-Cloud Collaborative Machine Learning, in Proceedings of the 16th USENIX Symposium on Operating Systems Design and Implementation (OSDI), Pages 249-265, Carlsbad, CA, USA, Jul. 11 - 13, 2022. https://www.usenix.org/confer...
论文相干材料
OSDI 2022- Walle论文演讲slides、paper全文材料下载:https://files.alicdn.com/tpss...