Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
ElasticCTR
提交
370f4d22
E
ElasticCTR
项目概览
PaddlePaddle
/
ElasticCTR
通知
8
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
E
ElasticCTR
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
未验证
提交
370f4d22
编写于
12月 08, 2019
作者:
J
Jiawei Wang
提交者:
GitHub
12月 08, 2019
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Create elasticctr_arch.md
上级
79589bc7
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
17 addition
and
0 deletion
+17
-0
elasticctr_arch.md
elasticctr_arch.md
+17
-0
未找到文件。
elasticctr_arch.md
0 → 100644
浏览文件 @
370f4d22
# ElasticCTR 2.0 整体架构
![
elastic.png
](
https://github.com/suoych/WebChat/raw/master/overview_v2.png
)
其中各个模块的介绍如下:
-
Client: CTR预估任务的客户端,训练前用户可以上传自定义的配置文件,预测时可以发起预测请求
-
file server: 接收用户上传的配置文件,存储模型供Paddle Serving和Cube使用。
-
trainer/pserver: 训练环节采用PaddlePaddle parameter server模式,对应trainer和pserver角色。分布式训练使用volcano做批量任务管理工具。
-
MLFlow: 训练任务的可视化模块,用户可以直观地查看训练情况。
-
HDFS: 用于用户存储数据。训练完成后产出的模型文件,也会在HDFS存储。
-
cube-transfer: 负责监控上游训练任务产出的模型文件,有新的模型产出便拉取到本地,并调用cube-builder构建cube字典文件;通知cube-agent节点拉取最新的字典文件,并维护各个cube-server上版本一致性。
-
cube-builder: 负责将训练作业产出的模型文件转换成可以被cube-server加载的字典文件。字典文件具有特定的数据结构,针对尺寸和内存中访问做了高度优化。
-
Cube-Server: 提供分片kv读写能力的服务节点。
-
Cube-agent: 与cube-server同机部署,接收cube-transfer下发的字典文件更新命令,拉取数据到本地,通知cube-server进行更新。
-
Paddle Serving: 加载CTR预估任务模型ProgramDesc和dense参数,提供预测服务。
以上组件串联完成从训练到预测部署的所有流程。本项目所提供的一键部署脚本elastic-control.sh可一键部署上述所有组件。用户可以参考本部署方案,将基于PaddlePaddle的分布式训练和Serving应用到业务环境。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录