bilibili基于 Flink 的机器学习工作流平台在 b 站的应用

简介:介绍 b 站的机器学习工作流平台 ultron 在 b 站多个机器学习场景上的应用。

分享嘉宾:张杨,B 站资深开发工程师

导读:整个机器学习的过程,从数据上报、到特征计算、到模型训练、再到线上部署、最终效果评估,整个流程非常冗长。在 b 站,多个团队都会搭建自己的机器学习链路,来完成各自的机器学习需求,工程效率和数据质量都难以保证。于是我们基于 Flink 社区的 aiflow 项目,构建了整套机器学习的标准工作流平台,加速机器学习流程构建,提升多个场景的数据实效和准确性。本次分享将介绍 b 站的机器学习工作流平台 ultron 在 b 站多个机器学习场景上的应用。

目录:

1、机器学习实时化

2、Flink 在 B 站机器学习的使用

3、机器学习工作流平台构建

4、未来规划

GitHub 地址
https://github.com/apache/flink
欢迎大家给 Flink 点赞送 star~

一、机器学习实时化

img

首先讲下机器学习的实时化,主要是分为三部分:

  • 第一是样本的实时化。传统的机器学习,样本全部都是 t+1,也就是说,今天模型用的是昨天的训练数据,每天早上使用昨天的全天数据训练一次模型;
  • 第二是特征的实时化。以前的特征也基本都是 t+1,这样就会带来一些推荐不准确的问题。比如,今天我看了很多新的视频,但给我推荐的却还是一些昨天或者更久之前看到的内容;
  • 第三就是模型训练的实时化。我们有了样本的实时化和特征的实时化之后,模型训练也是完全可以做到在线训练实时化的,能带来更实时的推荐效果。

传统离线链路

img

上图是传统的离线链路图,首先是 APP 产生日志或者服务端产生 log,整个数据会通过数据管道落到 HDFS 上,然后每天 t+1 做一些特征生成和模型训练,特征生成会放到特征存储里面,可能是 redis 或者一些其他的 kv 存储,再给到上面的 inference 在线服务。

传统离线链路的不足

img

那它有什么问题呢?

  • 第一是 t+1 数据模型的特征时效性都很低,很难做到特别高时效性的更新;
  • 第二是整个模型训练或者一些特征生产的过程中,每天都要用天级的数据,整个训练或者特征生产的时间非常长,对集群的算力要求非常高。

实时链路

img

上图我们进行优化之后整个实时链路的过程,红叉的部分是被去掉的。整个数据上报后通过 pipeline 直接落到实时的 kafka,之后会做一个实时特征的生成,还有实时样

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值