三、Prophecis 一站式云原生机器学习平台
Prophecis 是微众银行自研大数据平台套件 WeDataSphere 的核心应用工具之一,为用户提供了全栈的机器学习应用开发与部署解决方案。作为WeDataSphere 功能工具应用系统,Prophecis 不仅和已经开源的产品DataSphere Studio、Linkis无缝对接,同时也可以独立运行。
Prophecis Github地址:https://github.com/WeBankFinTech/Prophecis
一、简介
Prophecis 是微众银行大数据平台团队开发的一站式机器学习平台,其采用云原生技术方案,提供生产环境全栈化容器部署与管理服务,致力于打通机器学习建模的整个生命周期的Pipeline。Prophecis提供多种模型训练调试方式,集成多种开源机器学习框架,具备机器学习计算集群的多租户管理能力。
二、为什么需要Prophecis
大规模机器学习平台的技术基础已经逐渐完善,与大数据计算相关的框架也越来越多,这些奠定了大规模机器学习平台的技术基础,那么企业应该如何搭建一个相对完善的机器学习平台呢?
重点需要考虑 数据接入、开发环境、分布式训练以及模型管理,其他环节都可以慢慢加进来,但这四个是基础组件。
- 数据接入:数据是一切得以实现的前提。最简单的方式是通过上传来解决。企业内部往往会基于大数据平台,通过数据导入等方式接入。或者通过数据映射的方式,数据不需要导入,直接就可以通过外部访问;
- 开发环境:数据科学家基本对此达成了共识,都会选择类似 Jupyter 这样的工具;
- 分布式训练:类似Tensorflow、PyTorch 等都提供一些方法可以做分布式训练;
- 模型管理:这是现在比较个性化的模块,不同的公司会有不同的实现。明略科技的模型管理是涵盖模型生成、模型部署以及更新迭代的全流程实现。
围绕着以上关注点,Prophecis 基于WeDataSphere已开源的各类大数据平台数据处理工具,实现了从数据开发、机器学习建模到模型部署的全生命周期管理。
三、Prophecis整体架构

Prophecis的整体框架如上图所示,主要包含5个关键服务:
- Prophecis Machine Learning Flow:机器学习分布式建模工具,具备单机和分布式模式模型训练能力,支持Tensorflow、Pytorch、XGBoost等多种机器学习框架,支持从机器学习建模到部署的完整Pipeline;
- Prophecis MLLabis:机器学习开发探索工具,提供开发探索服务,是一款基于Jupyter Lab的在线IDE,同时支持GPU及Hadoop集群的机器学习建模任务,支持Python、R、Julia多种语言,集成Debug、TensorBoard多种插件;
- Prophecis Model Factory:机器学习模型工厂,提供机器学习模型存储、模型部署测试、模型管理等服务;
- Prophecis Data Factory:机器学习数据工厂,提供特征工程工具、数据标注工具和物料管理等服务;
- Prophecis Application Factory:机器学习应用工厂,由微众银行大数据平台团队和AI部门联合共建,基于青云(QingCloud)开源的KubeSphere定制开发,提供CI/CD和DevOps工具,GPU集群的监控及告警能力。
四、Prophecis核心特征
Prophecis与当前已开源的的机器学习平台相比主要有如下特点:
- 全生命周期的机器学习体验:Prophecis的Machine Learning Flow 通过 AppJoint 可以接入到 DataSphere Stdudio 的工作流中,支持从数据上传、数据预处理、特征工程、模型训练、模型评估到模型发布的机器学习全流程;
- 一键式的模型部署服务:Prophecis MF 支持将Prophecis Machine Learning Flow、Prophecis MLLabis 生成的训练模型一键式发布为 Restful API 或者 RPC 接口,实现模型到业务的无缝衔接;
- 机器学习应用部署、运维、实验的综合管理平台:基于社区开源方案定制,提供完整的、可靠的、高度灵活的企业级机器学习应用发布、监控、服务治理、日志收集和查询等管理工具,全方位实现对机器学习应用的管控,满足企业对于机器学习应用在线上生产环境的所有工作要求。

五、Prophecis和WeDataSphere
WeDataSphere是一套一站式、金融级、全连通、开源开放大数据平台套件,已在全球领先的数字银行WeBank,经过了数年海 量严苛金融业务场景的打磨和验证,表现卓 越。
更多关于WeDataSphere的介绍,请访问:https://github.com/WeBankFinTech/WeDataSphere
Prophecis作为WeDataSphere的机器学习平台组件,已与一站式数据应用开发管理门户 DataSphere Studio、计算中间件 Linkis 实现连接:
- Linkis TFOS Engine: Prophecis 通过构建 Linkis TFOS Engine,支持从任务提交到 YARN,为平台提供了SparkML、TensorflowOnSpark、XGBoost On PySpark、LightGBM On PySpark等分布式建模能力;
- Machine Learning Flow Pipeline:Prophecis通过对接Linkis的Flow Engine、DataSphere Studio的Appjoint插件集成能力,实现了机器学习实验工作流调度功能;
- 集成DSS工作流 :在复用DSS和Linkis能力的同时,Prophecis也构建了对应的DSS Prophecis AppJoint,为DSS的工作流模块提供了云原生机器学习建模能力;
- LinkisMagic :Prophecis构建Linkis相应Magic函数,目前主要对接了Spark相关引擎类型,完善了Jupyter Notebook的大数据开发功能,为用户提供了一站式、交互式的AI开发环境。
六、Prophecis和KubeSphere
KubeSphere 是在 Kubernetes 之上构建的以应用为中心的多租户容器管理平台,作为面向云原生应用的容器混合云,其愿景是打造一个以 Kubernetes 为内核的云原生分布式操作系统,它的架构可以非常方便地使第三方应用与云原生生态组件进行即插即用(plug-and-play)的集成,支持云原生应用在多云与多集群的统一分发和可视化运维管理。更多关于KubeSphere的介绍,请访问:
- KubeSphere 官网中国站 (https://kubesphere.com.cn)
- KubeSphere GitHub(https://github.com/kubesphere)
Prophecis在Application Factory的建设中引入了 KubeSphere,对其进行了定制开发,实现了机器学习容器应用从镜像发布、实例部署、多租户资源隔离、服务监控到日志收集的自动化管理,极大的降低了机器学习应用的运维成本。同时,WeDataSphere和KubeSphere 两大社区也达成了开源合作的意向,朝着共建云原生大数据生态前进,为中国的新基建事业添砖加瓦
七、Prophecis版本规划
Prophecis v0.2.x
- 基础平台自动化部署脚本(Kubernetes/Docker/GPU)
- 分布式建模
- 批量任务计算、告警
- CLI
- MLFlow
- Base
Prophecis v0.3.x
- 资源管理、监控
- 模型部署
- Model Factory(模型工厂)
- Application Factory(应用工厂)
参考资料
三、Prophecis 一站式云原生机器学习平台的更多相关文章
- 重大升级!灵雀云发布全栈云原生开放平台ACP 3.0
云原生技术的发展正在改变全球软件业的格局,随着云原生技术生态体系的日趋完善,灵雀云的云原生平台也进入了成熟阶段.近日,灵雀云发布重大产品升级,推出全栈云原生开放平台ACP 3.0.作为面向企业级用户的 ...
- 公有云上构建云原生 AI 平台的探索与实践 - GOTC 技术论坛分享回顾
7 月 9 日,GOTC 2021 全球开源技术峰会上海站与 WAIC 世界人工智能大会共同举办,峰会聚焦 AI 与云原生两大以开源驱动的前沿技术领域,邀请国家级研究机构与顶级互联网公司的一线技术专家 ...
- 一站式云原生体验|龙蜥云原生ACNS + Rainbond
关于 ACNS 龙蜥云原生套件 OpenAnolis Cloud Native Suite(ACNS)是由龙蜥社区云原生 SIG 推出的基于 Kubernetes 发行版本为基础而集成的套件能力,可以 ...
- 终极套娃 2.0|云原生 PaaS 平台的可观测性实践分享
某个周一上午,小涛像往常一样泡上一杯热咖啡 ️,准备打开项目协同开始新一天的工作,突然隔壁的小文喊道:"快看,用户支持群里炸锅了 -" 用户 A:"Git 服务有点问题, ...
- 如何建设私有云原生 Serverless 平台
随着云计算的普及,越来越多的企业开始将业务应用迁移到云上.然而,如何构建一套完整的云原生 Serverless 平台,依然是一个需要考虑的问题. Serverless的发展趋势 云计算行业从 IaaS ...
- 开放融合 | “引擎级”深度对接!POLARDB与SuperMap联合构建首个云原生时空平台
阿里巴巴新一代自研云数据库POLARDB与超图软件SuperMap GIS实现 “引擎级”深度对接,构建了自治.弹性.高可用的云原生时空数据管理平台联合解决方案,推出了业界首个“云原生数据库+云原生G ...
- 云原生PaaS平台通过插件整合SkyWalking,实现APM即插即用
一. 简介 SkyWalking 是一个开源可观察性平台,用于收集.分析.聚合和可视化来自服务和云原生基础设施的数据.支持分布式追踪.性能指标分析.应用和服务依赖分析等:它是一种现代 APM,专为云原 ...
- 终极指南:企业级云原生 PaaS 平台日志分析架构全面解析
早些时候 Erda Show 针对微服务监控.日志等内容做了专场分享,很多同学听完后意犹未尽,想了解更多关于日志分析的内容.Erda 团队做日志分析也有一段时间了,所以这次打算和大家详细分享一下我们在 ...
- 一站式云原生在线研发平台 StarOS 种子用户邀请计划正式开启!
云时代的开发者,你好: 你是否也曾畅想过,关于云的未来? 不是作为消费者,也不是作为企业,是对于开发者而言,云会变成什么样. 同为开发者,我们常在想,我们开发了一个又一个应用,让太多人因服务在线而获益 ...
- vivo 云原生容器探索和落地实践
作者:vivo 互联网容器团队- Pan Liangbiao 本文根据潘良彪老师在"2022 vivo开发者大会"现场演讲内容整理而成.公众号回复[2022 VDC]获取互联网技术 ...
随机推荐
- 在命令行中使用 cl.exe编译 C/C++ 程序并执行
cl.exe是Microsoft C/C++编译器. 我的VC6.0安装目录为:D:\Program Files (x86)\Microsoft Visual Studio\Common\MSDev9 ...
- [Vue warn]: Unknown custom element: <el-row> - did you register the component correctly? For recursi
babel.config.js 文件中 module.exports = { presets: [ '@vue/cli-plugin-babel/preset' ] } 替换为 module.expo ...
- Flux中的map、flatMap、concatMap的区别
flatMap.map和concatMap都是在Flux中用于进行数据转换和处理的方法,但它们在处理元素和顺序上有一些区别: map方法: map方法用于对Flux中的每个元素进行一对一的转换. 对于 ...
- 并发和Read-copy update(RCU)
目录 简介 Copy on Write和RCU RCU的流程和API RCU要注意的事项 RCU的java实现 总结 简介 在上一篇文章中的并发和ABA问题的介绍中,我们提到了要解决ABA中的memo ...
- 分布式数据对象:超级终端的"全局变量"
3月底发布的OpenAtom OpenHarmony(以下简称"OpenHarmony")3.1 Release版本中,新增了分布式数据对象特性.什么是分布式数据对象呢?本期就让我 ...
- C++ 编程必备:对象生命周期管理的最佳实践
在C++中,对象的生命周期是指对象存在的时间段,从对象创建到对象销毁的整个过程.正确地管理对象的生命周期是编写高效.可靠C++代码的关键之一 对象的创建 在C++中,对象可以通过三种方式创建:静态分配 ...
- SQL 中的运算符与别名:使用示例和语法详解
SQL中的IN运算符 IN运算符允许您在WHERE子句中指定多个值,它是多个OR条件的简写. 示例:获取您自己的SQL Server 返回所有来自'Germany'.'France'或'UK'的客户: ...
- Solr安全控制,开启基本身份验证
前言:请各大网友尊重本人原创知识分享,谨记本人博客:南国以南i 背景:solr默认安装没带权限控制,每次进入页面直接操作都有点裸奔的感觉. 一.SolrCloud集群模式 说明:要使用基本身份验证您必 ...
- 为 Hugging Face 用户带来无服务器 GPU 推理服务
今天,我们非常兴奋地宣布 部署到 Cloudflare Workers AI 功能正式上线,这是 Hugging Face Hub 平台上的一项新服务,它使得通过 Cloudflare 边缘数据中心部 ...
- DevEco Device Tool 3.0 Release带来5大能力升级,让智能设备开发更高效
原文:https://mp.weixin.qq.com/s/QYlHUU05BDlzVxbfZbiKOg,点击链接查看更多技术内容. DevEco Device Tool是面向智能设备开发者提供的一站 ...