流批一体机器学习算法平台

在线体验各类最新模型,更有模型 免费Token 额度领取!
立即体验
简介: 随着大数据时代的到来和人工智能的崛起,机器学习所能处理的场景更加广泛和多样。构建的模型需要对批量数据进行处理,为了达到实时性的要求还需要直接对流式数据进行实时预测,还要具备将模型应用在企业应用和微服务上能力。

发布会传送门

产品详情

针对正在兴起的机器学习广泛而多样的应用场景,阿里巴巴计算平台基础算法团队在2017年开始基于Flink研发新一代的机器学习算法平台。该项目名称定为Alink,取自相关名称(Alibaba, Algorithm, AI, Flink, Blink)的公共部分。经过三年的投入研发,Alink在算法性能、算法规模、算法易用性等方面取得了不错的成果,并实现了产品化。这使得数据分析和应用开发人员能够轻松搭建端到端的业务流程。

在后面的篇幅中,我们将从算法功能、算法性能、用户界面、可视化等方面对Alink做一个系统的介绍。

  • 算法功能

Alink拥有丰富的批式算法和流式算法,能够帮助数据分析和应用开发人员能够从数据处理、特征工程、模型训练、预测,端到端地完成整个流程。如下图所示,Alink提供的功能算法模块中,每一个模块都包含流式和批式算法。比如线性回归,包含批式线性回归训练,流式线性回归预测和批式线性回归预测。另外,Alink算法覆盖分类、回归、聚类、评估、统计分析、特征工程、异常检测、文本、在线学习、关联分析等经典领域,是一个通用的机器学习算法平台。

9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

目前,Alink已经被阿里巴巴集团内部多个BU使用,并取得了不错的业务提升。特别是在2019年天猫双11中,单日数据处理量达到 970PB,每秒处理峰值数据高达 25 亿条。Alink 成功经受住了超大规模实时数据训练的检验,并帮助天猫产品推荐的点击率提高了4%。

  • 算法性能

下图给出的是一些经典算法与Spark的性能对比,通过该图可以看出,Alink在大部分算法性能优于Spark,个别算法性能比Spark弱,整体是一个相当的水平。

9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

但是,“在功能的完备性方面,Alink更有优势”,Alink除了覆盖Spark的算法,还包含流式算法、流批混跑、在线学习、中文分词等。

  • 用户使用界面

为了提供更好的交互式体验,我们提供两种用户使用界面:webPyAlink

首先我们介绍一下web界面。Web界面提供拖拽的方式创建试验,通过对每一个组件进行配置完成整个试验的参数配置。下图给出的是web界面创建的批式、流式、流批混合的试验。

9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

并且Alink可以支持节点的级别实验运行状态显示。在各个算法节点旁,我们用闪烁的小灯泡表示“运行中”的状态,用对勾表示“运行完成”的状态。一般情况下,只有批式(batch)组件才有可能运行结束。基于各个组件的运行状态,可以十分方便地判断当前实验运行到了什么程度。并且,如果实验运行中出现了报错或者长时间不结束的情况,也能根据组件运行状态更加方便地定位潜在出问题的组件。除了简单的运行状态以外,Alink还提供了查看组件输入、输出数据量指标的功能。对于不同类型的组件,Alink提供了不同的指标展现方式:对于流式(stream)组件来说,在组件运行时,可以接近实时地看到组件的输出BPS和RPS数值。而对于批式(batch)组件,在组件运行完成后,会展示总的输出数据条数和字节数。这些指标的展示对于判断实验/业务是否正常运行可以提供很多的参考,尤其对于一些线上实时的业务,通过这些指标就能直观地看到是否正常运行。

下面我们继续介绍PyAlink。为了满足脚本用户的需求,我们提供了PyAlink on notebook,用户可以通过PyAlink的python包使用Alink。PyAlink支持单机运行,也支持集群提交。并且打通Operator(Alink算子)和DataFrame的接口,从而使得Alink整个算法流程无缝融入python。PyAlink也提供使用Python函数来调用UDF或者UDTF。PyAlink在notebook中使用如下图,展示了一个模型训练预测,并打印出预测结果的过程:

9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

  • 可视化

Alink中的可视化包括统计相关的可视化、模型类可视化以及评估可视化等,当前能进行大屏可视化的组件包括:统计分析类组件,直接展示的统计算法的结果;机器学习模型类组件,展示训练好的模型的信息;评估类组件,展示评估接口。
下图给出的是统计可视化,通过下图可以看到我们的统计可视化支持窗口统计和累计统计,并且支持曲线、柱状图、统计表、矩阵图等多种展示方式。

同样,下面两幅图给出的是模型的可视化和评估的可视化。

9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

9989c5b90f96dedb20d3e717592eeed2c54bdb86.jpeg

  • 总结展望

经过三年的发展,Alink已经成为一个功能完备的机器学习算法平台,而且已经在2019年FFA19将代码开源到社区,让更多的人能够使用这个平台解决业务问题。虽然Alink开源已经取得了阶段性成果,但是我们将继续积极向FlinkML贡献代码,我们希望将更多优秀的机器学习算法贡献给Flink项目,也希望和社区一起努力,共同促进Flink社区机器学习生态的发展和繁荣。

相关实践学习
基于Hologres+Flink搭建GitHub实时数据大屏
通过使用Flink、Hologres构建实时数仓,并通过Hologres对接BI分析工具(以DataV为例),实现海量数据实时分析.
实时计算 Flink 实战课程
如何使用实时计算 Flink 搞定数据处理难题?实时计算 Flink 极客训练营产品、技术专家齐上阵,从开源 Flink功能介绍到实时计算 Flink 优势详解,现场实操,5天即可上手! 欢迎开通实时计算 Flink 版: https://cn.aliyun.com/product/bigdata/sc Flink Forward Asia 介绍: Flink Forward 是由 Apache 官方授权,Apache Flink Community China 支持的会议,通过参会不仅可以了解到 Flink 社区的最新动态和发展计划,还可以了解到国内外一线大厂围绕 Flink 生态的生产实践经验,是 Flink 开发者和使用者不可错过的盛会。 去年经过品牌升级后的 Flink Forward Asia 吸引了超过2000人线下参与,一举成为国内最大的 Apache 顶级项目会议。结合2020年的特殊情况,Flink Forward Asia 2020 将在12月26日以线上峰会的形式与大家见面。
相关文章
|
存储 数据可视化 BI
Python可视化应用——学生成绩分布柱状图展示
本程序使用Python读取Excel中的学生成绩数据,统计各分数段人数,并通过Matplotlib库绘制柱状图展示成绩分布。同时计算最高分、最低分及平均分,实现成绩可视化分析。
891 0
|
机器学习/深度学习 数据采集 算法
回归算法全解析!一文读懂机器学习中的回归模型
回归算法全解析!一文读懂机器学习中的回归模型
1912 0
|
机器学习/深度学习 自然语言处理 算法
机器学习核心:监督学习与无监督学习
本文深入解析了机器学习中的监督学习与无监督学习,涵盖理论基础、应用场景及典型算法实现,如线性回归、决策树、K均值聚类和主成分分析,并通过代码示例加深理解。适合初学者和进阶者阅读。
1135 5
|
人工智能 安全 Linux
《2024 龙蜥操作系统开源社区白皮书》正式发布 引领开源操作系统新征程
该白皮书详细阐述了龙蜥社区在技术创新、生态建设等多方面的成果与规划。
《2024 龙蜥操作系统开源社区白皮书》正式发布 引领开源操作系统新征程
|
编解码 算法 计算机视觉
使用NumPy进行傅里叶变换:基础概念与实践应用
使用NumPy进行傅里叶变换:基础概念与实践应用
854 0
|
机器学习/深度学习 算法 PyTorch
使用Pytorch实现对比学习SimCLR 进行自监督预训练
SimCLR(Simple Framework for Contrastive Learning of Representations)是一种学习图像表示的自监督技术。 与传统的监督学习方法不同,SimCLR 不依赖标记数据来学习有用的表示。 它利用对比学习框架来学习一组有用的特征,这些特征可以从未标记的图像中捕获高级语义信息。
1924 1
|
SQL 监控 物联网
阿里云物联网平台数字孪生功能Quick Start
数字孪生是物理世界的数字化呈现,可通过构建孪生体来描述设备、流程、系统、场景等业务模型,对物理世界实体信息进行实时采集、运算分析、监控统计等,助您更精准地掌握业务模型动态变化,进而实现对实际生产过程的提效和降本目的。本文从产品创建开始,一步一步演示如何使用物联网平台的数字孪生功能。
16804 0
阿里云物联网平台数字孪生功能Quick Start
|
NoSQL Redis 开发者
数据类型-案例:微信接收消息顺序控制| 学习笔记
快速学习数据类型-案例:微信接收消息顺序控制
数据类型-案例:微信接收消息顺序控制| 学习笔记

热门文章

最新文章