ElasticRec - 基于 Kubernetes 的推荐系统解决方案


Apache-2.0
跨平台
Python

软件简介

ElasticCTR 是基于 Kubernetes 的企业级推荐系统解决方案,该方案融合了百度业务场景下经过不断验证打磨的 CTR
模型、基于飞桨框架的大规模分布式训练、工业级稀疏参数 Serving 组件,帮助用户在 Kubernetes 环境中一键完成推荐系统架构部署,快速搭建和验证
CTR 模型训练和预测效果,具备高性能、工业级部署、端到端体验及二次深度开发的特性。

用户只需配置数据源、样本格式即可完成一系列的训练与预测任务。

主要特点如下:

1.快速部署

ElasticCTR 当前提供的方案是基于百度云的 Kubernetes 集群进行部署,用户可以很容易扩展到其它原生的 Kubernetes 环境运行
ElasticCTR。

2.高性能

ElasticCTR 采用 PaddlePaddle
提供的全异步分布式训练方式,在保证模型训练效果的前提下,近乎线性的扩展能力可以大幅度节省训练资源。在线服务方面,ElasticCTR 采用 Paddle
Serving 中高吞吐、低延迟的稀疏参数预估引擎,高并发条件下是常见开源组件吞吐量的 10 倍以上。

3.可定制

用户可以通过统一的配置文件,修改训练中的训练方式和基本配置,包括在离线训练方式、训练过程可视化指标、HDFS
上的存储配置等。除了通过修改统一配置文件进行训练任务配置外,ElasticCTR 采用全开源软件栈,方便用户进行快速的二次开发和改造。底层的
Kubernetes、Volcano 可以轻松实现对上层任务的灵活调度策略;基于 PaddlePaddle 的灵活组网能力、飞桨的分布式训练引擎 Fleet
和远程预估服务 Paddle Serving,用户可以对训练模型、并行训练的模式、远程预估服务进行快速迭代;MLFlow
提供的训练任务可视化能力,用户可以快速增加系统监控需要的各种指标。