设计与构建下一代的计算机系统:学习增强系统( 二 )


第三 , 现代系统的接口设计主要是面向开发者的 , 而非驱动机器学习 。 从过去的经验里 , 研究员们发现虽然系统有完善的行为监测机制来产生大量的数据 , 但很多数据并不能很方便地训练机器学习模型 。 首先 , 有很多数据是人类可读的无结构数据 , 比如 crash dump 。 另外 , 训练集是由关联系统指令和反馈而组成的 , 但在很多情况下却很难做到正确的关联 。 一个例子就是系统里的缓冲存储器需要适当地预热 , 太早采集反馈会得到错误的结果 , 但太晚采集则会浪费大量的等候时间 。
AutoSys —— 系统化构建学习增强系统基于以上的难点 , 微软亚洲研究院的 AutoSys 项目积极探索如何系统化的建构学习增强系统 [1] 。 例如在今年 ATC 会议发表的论文 AutoSys: The Design and Operation of Learning-Augmented Systems 中 [2] , AutoSys 介绍的框架和方法论就能大大降低系统工程师建构学习增强系统的门槛 。 下图是当前的框架 。 基于现有的机器学习工具之上 , 研究员们提供了建构学习增强系统的三个要素:面向现代系统的行为探索方法 , 适应于现代系统动态性的知识抽象 , 以及提升机器学习驱动的系统决策可信度的工具 。
设计与构建下一代的计算机系统:学习增强系统文章插图
在 AutoSys 项目里 , 除了基础研究之外 , 微软亚洲研究院的研究员们也与多个微软产品组合作建构学习增强系统 , 利用机器学习来自动优化现代系统里的决策 。 用系统中一个重要的决策——系统参数调优来举个例子 , 在和必应广告(Bing Ads)部门的合作里 [3] , 与资深工程师相比 , 研究员们设计的自动化调优工具把 key-value store 集群的尾延迟降低了 20% 。 基于系统化的空间采样策略 , 调优的时间从几周减少到了两天 。 另外 , 在和必应搜索(Bing)部门的合作里 [2] , 与资深工程师相比 , 自动化调优工具把搜索引擎检索模块的尾延迟降低了 33.5% , 并把排序模块的相关性提升了 3.4% 。 另外 , 调优的时间也大幅度减少 。
未来 , 微软亚洲研究院将持续投入在 AutoSys 上的研究和落地 , 并希望有更多人一起加入到这个方向中来 。
参考文献
[1] The Case for Learning-and-System Co-design. Chieh-Jan Mike Liang, Hui Xue, Mao Yang, Lidong Zhou. ACM SIGOPS Operating Systems Review ’19.
[2] AutoSys: The Design and Operation of Learning-Augmented Systems. Chieh-Jan Mike Liang, Hui Xue, Mao Yang, Lidong Zhou, Lifei Zhu, Zhao Lucis Li, Zibo Wang, Qi Chen, Quanlu Zhang, Chuanjie Liu, Wenjun Dai. USENIX ATC ’20.
[3] Metis: Robustly Optimizing Tail Latencies of Cloud Systems. Zhao Lucis Li, Chieh-Jan Mike Liang, Wenjia He, Lianjie Zhu, Wenjun Dai, Jin Jiang, Guangzhong Sun. USENIX ATC ‘18.
[4] Accelerating Rule-matching Systems with Learned Rankers. Zhao Lucis Li, Chieh-Jan Mike Liang, Wei Bai, Qiming Zheng, Yongqiang Xiong, Guangzhong Sun. USENIX ATC ’19.