中兴通讯 MLOps 与 Adlik 实践总结
MLOps 介绍
MLOps(Machine Learning Operations)是机器学习的 DevOps,旨在实现模型从构建、训练到部署的自动化和持续交付。其核心原则包括自动化 ML 流水线、持续集成/持续部署/持续监控/持续测试、数据/模型/代码版本控制、可复现性、可靠性和性能优化。
AI 模型落地挑战
AI 模型落地面临三大挑战:模型与业务的结合、高效部署和性能优化、以及生产环境中的模型管理。模型构建与实际应用存在鸿沟,开发与生产环境差异显著,模型部署涉及训练框架、推理框架和运行环境的差异,性能优化需关注时延、吞吐量和内存占用,而模型管理则涉及监控、版本控制和生命周期管理。
Adlik 解决方案
Adlik 是由 Linux 基金会 AI 和数据基金会(LF AI & Data)开源的深度学习推理加速工具,提供端到端的模型部署工具链,助力用户构建高性能 AI 应用。其架构包括模型优化器、模型编译器和推理引擎。
Adlik 架构
Adlik 架构包含模型优化器、模型编译器和推理引擎。模型优化器通过剪枝、量化和蒸馏等技术提升模型效率;模型编译器支持多种模型格式转换和优化;推理引擎支持云边端多种环境,提供统一的推理接口和模型管理功能。
Adlik 特性
- 模型优化器:支持剪枝、量化、多教师蒸馏等技术,显著降低模型参数量和推理时延。
- 模型编译器:支持多种模型格式转换和优化,包括 TensorFlow、PyTorch、PaddlePaddle 等。
- 推理引擎:支持多运行时、多模型实例的统一管理和调度,提供灵活易用的推理 API。
Adlik 使用场景
Adlik 支持多种模型类型,包括 CV、LSTM、NLP 和深度推荐模型。用户可通过阿里云获取 Adlik 镜像,运行模型编译器和推理引擎,实现模型的编译和推理。
Adlik 运行环境
- 云原生环境:支持 Docker 和 Kubernetes 环境。
- 嵌入式环境:支持 Jetson Nano 和 Raspberry Pi 等设备,可编译为 TFLite 格式进行部署。
Adlik 优势
- 更省:工程化参数自适应优化,降低部署复杂度,缩短上线周期。
- 更快:内置多种高性能运行时,提供可拓展的 Serving SDK 和灵活的推理 API。
- 更优:多种模型压缩、优化算法,提供更优的端到端方案和推理性能。
- 更优的管理:完善的模型管理和运行监控功能。
Adlik Benchmark 测试
- 模型优化:剪枝、量化、多教师蒸馏等技术可将模型大小降低 7.2%,同时保持 76.39% 的精度。
- 编译支持:支持 TensorFlow、PyTorch、PaddlePaddle 等框架训练出的模型,并可编译为 OpenVINO、TfLite 和 TensorRT 等格式。
- 运行时集成:支持 TVM、OpenVINO、TFLite、TensorRT、TensorFlow 和 Paddle 等运行时。
- 硬件支持:基于 Intel TGL-U i5 设备的推理,支持多种硬件平台。
研究结论
Adlik 作为一款开源的深度学习推理加速工具,有效解决了 AI 模型落地过程中的挑战,提供了高效、灵活和优化的模型部署方案,助力用户构建高性能 AI 应用。