Prophecis 开始你的机器学习之旅

Stella981
• 阅读 665

Prophecis 开始你的机器学习之旅

一个设计完善的机器学习平台是什么样子?

一个设计完善的机器学习平台可以在 AI 应用全生命周期的开发和管理过程起到作用。具体而言,设计完善的机器学习平台具备六大能力:一是统一的存储空间,支持多数据源导入。二是 Pipeline 可视化工作流管理与执行,支持数据科学家从数据建模阶段开始的可视化管理,节省成本,快速体现数据科学家的价值;三是基于容器的计算资源分配和软件库安装,支持 TensorFlow、PyTorch 等各种框架;四是支持 GPU、TPU、CPU 框架和异构计算硬件和框架;五是模型管理,支持新手快速上手,无需通过自己实现原始算法,只需要理解算法原理就可以通过调参实现;六是 AI Serving,模型一键封装为 API,一键部署。

相对重要的部分是数据接入、开发环境、分布式训练以及模型管理,其他环节都可以慢慢加进来,但这四个是基础组件。

  • 数据接入,数据是一切得以实现的前提。最简单的方式是通过上传来解决。企业内部往往会基于大数据平台,通过数据导入等方式接入。或者通过数据映射的方式,数据不需要导入,直接就可以通过外部访问;

  • 开发环境,数据科学家基本对此达成了共识,都会选择类似 Jupyter 这样的工具;

  • 分布式训练,类似Tensorflow、PyTorch 等都提供一些方法可以做分布式训练;

  • 模型管理,这是现在比较个性化的模块,不同的公司会有不同的实现。明略科技的模型管理是涵盖模型生成、模型部署以及更新迭代的全流程实现。

除了环节和流程上面的完善,一个设计良好的机器学习平台可以降低数据科学家和工程师之间的交流成本。在这样一个机器学习平台中,大部分工作都可以通过自动化的方式完成,比如数据接入、模型上线等环节,数据科学家则只需要专注算法和模型本身,其他的工作全部通过自动化的方式实现,几乎不需要工程师协助。至于算法的上线效果如何评估,这与业务指标强绑定。在企业内部,算法模型上线之前,指标就已经确定好了。

 注:本节摘自AI前线公众号文章《对话明略科技:一个设计完善的机器学习平台是什么样子?》

什么是Prophecis?

Prophecis 是微众银行大数据平台团队开发的一站式机器学习平台,提供多种模型训练调试方式,集成多种开源机器学习框架,具备机器学习计算集群的多租户管理能力,提供生产环境全栈化容器部署与管理服务。

Prophecis 开始你的机器学习之旅

图1 Prophecis的整体框架

Prophecis的整体框架如上图所示,主要包含5个关键服务:

  • Prophecis MLFlow:机器学习分布式建模工具,具备单机和分布式模式模型训练能力,支持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 开始你的机器学习之旅

图2 Prophecis 机器学习模型生命周期

Prophecis与当前已开源的的机器学习平台相比主要有如下特点:

  • 全生命周期的机器学习体验:Prophecis的 MLFlow 通过 AppJoint 可以接入到 DataSphere Stdudio 的工作流中,支持从数据上传、数据预处理、特征工程、模型训练、模型评估到模型发布的机器学习全流程;

  • 一键式的模型部署服务:Prophecis MF 支持将Prophecis MLFlow、Prophecis MLLabis 生成的训练模型一键式发布为 Restful API 或者 RPC 接口,实现模型到业务的无缝衔接;

  • 机器学习应用部署、运维、实验的综合管理平台:基于社区开源方案定制,提供完整的、可靠的、高度灵活的企业级机器学习应用发布、监控、服务治理、日志收集和查询等管理工具,全方位实现对机器学习应用的管控,满足企业对于机器学习应用在线上生产环境的所有工作要求。

Prophecis的核心组件主要是基于开源技术构建,从开源中来到开源中去,我们计划在近期完成Prophecis的开源,希望与社区庞大的开源爱好者们一起共建一个更加完备和成熟的工业级机器学习平台。

WeDataSphere,BIG DATA MADE EASY.

用心做一个有温度的开源社区

欢迎关注

Prophecis 开始你的机器学习之旅

扫码关注我们

微信号公众号 : WeDataSphere

GitHub:WeDataSphere

如果喜欢我们的产品或文章,请给我们的GitHub点上你宝贵的star和fork哦~~

_欢迎加入我们的有奖征文活动哦,详见如下链接~
_

【有奖征文】我有酒,你有故事吗?

同时诚挚的希望您点开“阅读原文”,在OSC开源投票中,为Linkis与DataSphere Studio投上您宝贵的一票哦~~Prophecis 开始你的机器学习之旅

本文分享自微信公众号 - WeDataSphere(gh_273e85fce73b)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
待兔 待兔
3个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Jacquelyn38 Jacquelyn38
3年前
2020年前端实用代码段,为你的工作保驾护航
有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Stella981 Stella981
3年前
Android蓝牙连接汽车OBD设备
//设备连接public class BluetoothConnect implements Runnable {    private static final UUID CONNECT_UUID  UUID.fromString("0000110100001000800000805F9B34FB");
Stella981 Stella981
3年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Stella981 Stella981
3年前
Eclipse插件开发_学习_00_资源帖
一、官方资料 1.eclipseapi(https://www.oschina.net/action/GoToLink?urlhttp%3A%2F%2Fhelp.eclipse.org%2Fmars%2Findex.jsp%3Ftopic%3D%252Forg.eclipse.platform.doc.isv%252Fguide%2
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
Python进阶者 Python进阶者
9个月前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这