生产中的 Serverless 机器学习流水线

  • 时间:
  • 浏览:0
  • 来源:幸运飞艇_幸运飞艇官方

FnF & FC 的方案较开源工作流/流水线方案满足上文提出的对生产环境 ML 流水线的所有要求,就让 在以下的特点尤其突出:

逻辑我确实清楚简单,然而流水线系统都要满足下面的特征才适用于生产环境:

本文将讨论机器/角度学习基础设施运维(MLOps)中的机器学习流水线。文章将覆盖以下内容和技术点:

本文假设训练,预测推理使用阿里云 K8s(ACK) 集群 因为是基于 ECS 自搭的 K8s 集群。训练使用了 Fashion MNIST dataset 。预测服务接受图片输入产生对应的预测结果 (如是衣,帽,鞋)。Training 和 serving 有分别的容器镜像。流水线编排使用阿里云函数工作流(FnF) 和函数计算 (FC)。FC 和 FnF 总要 Serverless 云服务,总要 全托管,免运维,只为使用量付费,无限扩展等特征。流水线逻辑图如下:

如下图所示,让我们歌词 歌词 将错综复杂的 MLOps 错综复杂抽象成 算法开发 -> 模型构建 (build) -> 训练 (training) -> 部署 (serving)-> 测试,审批 -> 生产发布,就让 再次返回算法开发的反馈回路。

流水线的概念和上述的要求不要新奇,总要 开源的处理方案被广泛应用,如 CI/CD 系统常使用的 Jenkins, 工作流引擎 Airflow, Uber Cadence 等。然而在阿里云平台上还这麼比较流行的 ML 流水线处理方案,本文将提供这些结合 Serverless 云服务和阿里云容器服务 K8s 的处理方案。

关于函数工作流或是函数计算有任何需求,反馈讨论,欢迎加入官方钉钉群:

随着机器/角度学习的商业价值体现的这麼明显,围绕 ML 的软件技术也日新月异,训练 (training),模型 (model),算法 (algorithm),预测 (predictions),推理 (inference) 那些概念以及 Spark MLlib, Tensorflow 那些软件框架也变成了超高频词。在本地机器上用 Jupyter notebook 调用 Tensorflow 训练几万张图片,不断调参,就让 产出的模型推理/预测就看结果准确当然是很兴奋的,就让 就让 呢 (so what)?发表在 NIPS 的论文 Hidden Technical Debt in Machine Learning Systems 中的这幅图非常准确地展示了在产生商业价值的过程中,支持机器学习的附进设置的开发,运维 (MLOps)的工程量要远大于机器学习的核心开发。生产环境中的 MLOps 根据业务场景差别会非常大,模块多,无法在一篇文章中覆盖,本文将聚焦在其中的有有有4个模块 -- 机器学习流水线, 重点介绍如可利用阿里云 Serverless 云服务提高研发和运维的传输速率,自动化地将算法变成训练后的模型,经过测试和审批最终在生产环境中通过预测/推理产生商业价值。

更多排列组合,期待开发者的发掘。

上文提到了使用阿里云 Serverless 服务函数计算(FC)和函数工作流 (FnF) 来实现 ML 流水线的协调,有有有有4个很自然的大间题就让 为那些要做另有有有4个的选型,相比已有的开源的工作流引擎有那些优势。回答这些大间题还是要回到大间题定义帕累托图中让我们歌词 歌词 列出的生产环境 ML 流水线都要具备的能力一一对比分析:

本文处理方案中, 训练和预测服务环节是通过 K8s 上的任务 (jobs) 和部署(deployments)实现的,K8s 集群是这些相对较重的资源,资源利用率低是常见的大间题。函数工作流结合函数计算处理方案的一大优势是其极高的灵活性,之类于下列的使用法子: