Py学习  »  机器学习算法

在Kubernetes 上部署的机器学习框架

K8S中文社区 • 4 年前 • 347 次点击  

知名音乐流媒体服务平台Spotify之前北美Kubcon大会上,对外分享自家机器学习平台的发展历程,并首度公开了2020年要上线的第三代机器学习平台架构,采用了Kubeflow,改以K8s来作为算机器学习运算资源的主要调度平台。Sptify经常需进行大量机器学习训练和推论,来分析音乐风格和提供用户各种个性化音乐推荐。2018年,Spotify利用开源技术,后端采用Scala语言,再搭配Python相关工作流程工具,创建了第一代的机器学习平台,方便分析团队快速进行各种ML项目。

 
第一代的特性是提供了一系列的选项套餐,方便项目人员运用到不同需求的机器学习应用。但是Scale语言对资料分析人员来说太难,前后端技术的切换成了不少项目开发的困扰,要统一不同模组间的功能、版本和配置难度也颇高。所以,2019Spotify团队决定,改用GoogleTensorflow ExtendedTFX)工具,建立机器学习项目开发的标准化,从储存形式、预设函式库、到ML工作流程都有一套制式作业规范,尤其尽量采用Tensoflow扩充元件如Tensorflow TransformTensorflow Model AnalysisTensorflow Serving等,来建立跨团队的共用标准。
 
最近,Spotify决定,进一步连ML工作流程和运算资源都进一步建立标准化,开始导入了Kubeflow PipelinesKFP)。这个架构会将主要的运算元件先打包成Docker化容器应用,再利用Kubernetes来部署容器应用以及调度运算资源,来支持庞大运算所需。Spotify表示,先前为了标准化而改用TFX的各种努力,成了后来导入KFP流程的成功关键,分析团队不用重新学习另一套ML任务的管理方式。
 
另一个KFP的好处是,其SDK允许建立共享的元件,分享给其他流程之用。因此,Spofity产品主管Josh Baer撰文透露,其中一个团队建立了一段不错的流程和元件组合,可以分享给其他团队使用,不用重复造轮子,更有助于建立所有团队的共通工作流程范本。

下一步,Spofity将进一步发展成分析特征的共享化,将重要的ML功能变成内部共享的微服务,来加快组合运用的方便性,目前他们正在进行机器学习模型服务化的设计。

参考:
https://www.ithome.com.tw/news/135021


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/52019
 
347 次点击