公司制作网站费用,网站建设模板怎么做,岳阳网站建设方案,台州企业网站搭建特点简介#xff1a; Morphling 本意是游戏 Dota 中的英雄“水人”#xff0c;他可以根据环境要求#xff0c;通过灵活改变自身形态#xff0c;优化战斗表现。我们希望通过 Morphling 项目#xff0c;实现针对机器学习推理作业的灵活、智能的部署配置改变#xff0c;优化服务…简介 Morphling 本意是游戏 Dota 中的英雄“水人”他可以根据环境要求通过灵活改变自身形态优化战斗表现。我们希望通过 Morphling 项目实现针对机器学习推理作业的灵活、智能的部署配置改变优化服务性能降低服务部署成本。
随着云原生技术的蓬勃发展和其日渐成熟的产业落地云上机器学习正向大规模、工业化方向迅速挺进。
近期Morphling 作为阿里巴巴开源的 KubeDL 其中一个独立的子项目成为云原生计算基金会CNCFSandbox 项目。旨在为大规模工业部署机器学习模型推理model inference服务提供自动化的部署配置调优、测试和推荐在 GPU 虚拟化与复用技术日趋发展成熟的大环境下帮助企业充分享受云原生优势优化在线机器学习服务性能降低服务部署成本高效地解决机器学习在产业实际部署中的性能和成本挑战。此外Morphling 项目相关学术论文 Morphling: Fast, Near-Optimal Auto-Configuration for Cloud-Native Model Serving被 ACM Symposium on Cloud Computing 2021 (ACM SoCC 2021)接收。 Morphling 本意是游戏 Dota 中的英雄“水人”他可以根据环境要求通过灵活改变自身形态优化战斗表现。我们希望通过 Morphling 项目实现针对机器学习推理作业的灵活、智能的部署配置改变优化服务性能降低服务部署成本。
背景
云上机器学习的工作流可以分为模型训练model training和模型推理model serving两部分模型在离线训练、调优测试完成之后会以容器的方式部署为在线应用为用户提供不间断的高质量推理服务例如在线直播视频中的目标物品识别、在线语言翻译工具、在线图片分类等。例如阿里巴巴内部的淘系内容社交平台 Machine Vision Application PlatformMVAP通过在线机器学习推理引擎支持淘系直播商品看点识别、直播封面图去重、逛逛图文分类等业务。根据英特尔的数据大规模推理 (Inference at Scale) 时代将至到 2020 年推理与训练周期比率超过 5:1亚马逊的数据显示2019 年亚马逊 AWS 在模型推理服务上的基础设施开销占到其机器学习任务总开销的 90% 以上。机器学习推理已经成为人工智能落地和“变现”的关键。 云上推理任务
推理服务本身是一种特殊的 long running 微服务形态随着云上推理服务日趋增长的部署体量其成本和服务性能成为至关重要的优化指标。这要求运维团队对推理容器在部署前进行合理的配置优化包含硬件资源配置、服务运行参数配置等。这些优化配置在协调服务性能例如响应时间、吞吐率和资源使用效率中起到至关重要的作用。在实践中我们的测试发现 不同的部署配置会带来高达十几倍的吞吐率/资源使用率的差距。
我们依托阿里大量的 AI 推理服务经验首先总结了推理业务相对于传统服务部署的配置有以下特性
使用昂贵的显卡资源但显存用量低GPU 虚拟化与分时复用技术的发展和成熟让我们有机会在一块 GPU 上同时运行多个推理服务显著降低成本。与训练任务不同推理任务是使用训练完善的神经网络模型将用户输入信息通过神经网络处理得到输出过程中只涉及神经网络的前向传输Forward Propagation对显存资源的使用需求较低。相比之下模型的训练过程涉及神经网络的反向传输Backward Propagation需要存储大量中间结果对显存的压力要大很多。我们大量的集群数据显示分配给单个推理任务整张显卡会造成相当程度的资源浪费。然而如何为推理服务选择合适的 GPU 资源规格尤其是不可压缩的显存资源成为一个关键难题。性能的资源瓶颈多样除了 GPU 资源推理任务也涉及复杂的数据前处理将用户输入 处理成符合模型输入的参数和结果后处理生成符合用户认知的数据格式。这些操作通常使用 CPU 进行模型推理通常使用 GPU 进行。对于不同的服务业务GPU、CPU 以及其他硬件资源都可能成为影响服务响应时间的主导因素从而成为资源瓶颈。此外容器运行参数的配置也成为业务部署人员需要调优的一个维度除了计算资源外容器运行时参数也会直接影响服务 RT、QPS 等性能例如容器内服务运行的并发线程数、推理服务的批处理大小batch processing size等。
最佳化推理服务部署配置
以 Kubernetes 为主流的云原生技术正在以丰富的形态被广泛用于新的应用负载 将机器学习任务包括训练和推理构建在 Kubernetes 上并实现稳定、高效、低成本的部署成为各大公司推进AI项目、服务上云的重点和关键。Kubernetes 框架下的推理容器配置业界还在不断探索与尝试。
最常见的模式是根据人为经验手动配置参数简单但低效。实际情况常常是服务部署人员站在集群管理者的角度为了保证服务质量倾向于配置较多的资源冗余在稳定性和效率之间选择牺牲后者造成大量资源浪费或对运行参数直接采用默认值进行配置损失了性能优化机会。另一个可选的方案是基于资源历史水位画像进一步细化优化资源配置。但我们的观察和实践发现日常资源水位不能体现服务压测时的流量高峰无法评估服务能力上限其次对于新上线的业务普遍缺乏可靠的历史水位信息可供参考另外由于机器学习框架的特性GPU 显存的历史用量通常不能正确反映应用对显存的真实需求最后对于容器内部程序运行参数的调优从历史数据的角度缺少足够的数据支持。
总体来说虽然在更通用的超参调优方面Kubernetes 社区有一些自动化参数推荐的研究和产品但业界缺少一款直接面向机器学习推理服务的云原生参数配置系统。
我们依托阿里大量的AI推理服务经验总结发现推理业务配置调优的痛点在于
缺少自动化性能测试、参数调优的框架迭代式的手动调整配置-服务压测给部署测试带来巨大人工负担使这一方向在现实下成为不可能的选项。稳定和非侵入式的服务性能测试流程在生产环境下对在线服务直接进行部署测试会影响用户体验。要求高效的参数组合调优算法考虑到需要配置的参数数量增多时联合调试多维度参数的组合优化配置对调优算法提出了更高的效率要求。
Morphling
针对上述难题阿里巴巴云原生集群管理团队和开发并开源了基于 Kubernetes 的机器学习推理服务配置框架——Morphling将参数组合调优全流程自动化并结合高效的智能化调优算法使推理业务的配置调优流程能够高效地运行在 Kubernetes 之上解决机器学习在产业实际部署中的性能和成本挑战。 Morphling 对参数调优的过程进行了不同层次的云原生抽象提供给用户简洁且灵活的配置接口将底层的容器操作、数据通信、采样算法、和存储管理封装在控制器中。具体来说Morphling 的参数调优-性能压测采用 experiment-trial 工作流程。
Experiment 作为最贴近用户的一层抽象通过交互由用户指定机器学习模型的存储位置、待调优的配置参数、测试数量上限等定义一次具体的参数调优作业。对于每个参数调优作业 experimentMorphling 定义了另一层抽象trial。Trial 封装了针对某一特定参数组合的一次性能测试流程涵盖了底层的 Kubernetes 容器操作每个 trial 中Morphling 根据测试参数组合配置并启动推理服务容器检测服务的可用性和健康状态并对服务进行压力测试测量该配置下容器的服务性能例如响应时间延迟、服务吞吐量、资源使用效率等。测试结果将存储在数据库中并反馈给 experiment。Morphling通过智能的超参调优算法选择少量配置组合进行性能测试trial每轮测试结果作为反馈来高效选择下一组待测参数。为了避免穷举方式的规格点采样我们采用贝叶斯优化作为画像采样算法的内部核心驱动通过不断细化拟合函数以低采样率20%的压测开销给出接近最优的容器规格推荐结果。通过这样迭代式的采样-测试最终反馈给业务部署人员优化的配置组合推荐。
同时Morphling 提供了管控套件Morphling-UI方便业务部署团队在可界面化上通过简单易用的操作发起推理业务配置调优 experiment、监控调优过程、比较调优结果。 Morphling 在淘系内容社交平台中的实践
阿里巴巴内部丰富的在线机器学习推理场景和大量的推理服务实例需求为 Morphling 的落地验证提供了第一手的落地实践和测试反馈。其中阿里淘系内容社交平台Machine Vision Application PlatformMVAP团队通过在线机器学习推理引擎支持淘系直播商品看点识别、直播封面图去重、逛逛图文分类等业务。
在 2020 年双十一期间我们通过 Morphling 对 AI 推理容器进行了规格测试、优化寻找性能和成本之间的最优解同时算法工程团队进而对这些资源消耗型的推理模型例如淘系视频看点服务做出针对性的模型量化、分析并从 AI 模型设计角度进行优化以最少的资源支持了双十一的洪峰流量同时保证业务的性能不下降极大的提高 GPU 利用率和降低了成本。
学术探索
为了提高推理服务参数调优过程的效率阿里巴巴云原生集群管理团队针对推理业务的特性进一步探索了使用元学习meta-learning和小样本回归few-shot regression实现更高效的、低采样成本的配置调优算法应对实际业界“快速、小样本采样、低测试成本”的调优要求以及面向云原生且自动化的调优框架。相关学术论文 Morphling: Fast, Near-Optimal Auto-Configuration for Cloud-Native Model Serving被ACM Symposium on Cloud Computing 2021 (ACM SoCC 2021)接收。
近年云上 AI 推理任务的优化部署相关主题活跃在各大云计算、系统相关的学术期刊和会议成为学术界探索的热点。探索的主题主要包括AI 模型的动态选择、部署实例的动态阔缩容、用户访问的流量调度、GPU 资源的充分利用例如模型动态加载、批处理大小优化等。然而从大规模业界实践出发最佳化容器级别的推理服务部署这一问题的研究尚属首次。
算法方面性能调优作为经典的超参数优化hyper-parameter tuning问题。传统超参调优方法例如贝叶斯优化难以面对高维度多配置项且大搜索空间的调优问题。例如对于 AI 推理任务我们在 CPU 核数、GPU 显存大小、批处理 batch size、GPU 型号这四个维度配置项进行“组合优化”式的超参调优每个配置项有 58 个可选参数。这样组合情况下的参数搜索空间就高达 700 个以上。基于我们在生产集群的测试经验积累对于一个 AI 推理容器每测试一组参数从拉起服务、压力测试、到数据呈报需要耗时几分钟与此同时AI 推理业务的种类繁多更新迭代频繁部署工程师人力有限测试集群成本有限。要在这样大的搜索空间内高效地测试出最优的配置参数对超参调优算法提出了新的挑战。
在这篇论文中我们的核心观察是对于不同的 AI 推理业务其需要优化各项的配置例如 GPU 显存、批处理大小对于容器的服务性能例如 QPS影响“趋势稳定且相似”表现在可视化的“配置-性能”曲面上体现为不同AI推理实例“配置-性能”曲面的形状相似但配置对性能的影响程度和关键节点在数值上各不相同 上图可视化了三种 AI 推理模型其CPU 核数、GPU显存大小的二维配置对容器服务吞吐量 RPS 的影响。论文提出使用 Model-Agnostic Meta-LearningMAML对这些共性进行提前学习训练出元模型从而对新的 AI 推理性能测试快速找到曲面中的关键节点以元模型出发作出小样本下5%的精确拟合。
总结
Morphling 基于的 Kubernetes 机器学习推理服务配置框架结合“快速、小样本采样、低测试成本”的调优算法实现了面向云原生的自动化且稳定高效的 AI 推理部署调优流程更快地赋能部署流程的优化和迭代加速机器学习业务应用的上线。Morphling 和 KubeDL 的结合也会使得 AI 从模型训练到推理部署的配置调的优体验更为流畅。
原文链接 本文为阿里云原创内容未经允许不得转载。