Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
BaiXuePrincess
PaddleRec
提交
6e3933d4
P
PaddleRec
项目概览
BaiXuePrincess
/
PaddleRec
与 Fork 源项目一致
Fork自
PaddlePaddle / PaddleRec
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleRec
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
6e3933d4
编写于
5月 13, 2020
作者:
C
chengmo
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update doc
上级
5a0982fa
变更
3
展开全部
隐藏空白更改
内联
并排
Showing
3 changed file
with
604 addition
and
11 deletion
+604
-11
doc/custom_dataset_reader.md
doc/custom_dataset_reader.md
+7
-6
doc/rec_background.md
doc/rec_background.md
+594
-1
readme.md
readme.md
+3
-4
未找到文件。
doc/custom_dataset_reader.md
浏览文件 @
6e3933d4
...
...
@@ -22,11 +22,11 @@ reader:
PaddleRec支持模型自定义数据集,在model.config.yaml文件中的reader部分,通过
`train_data_path`
指定数据读取路径。
>
关于数据的tips
>
>
- PaddleRec 面向的是推荐与搜索领域,数据以文本格式为主
>
- Dataset模式支持读取文本数据压缩后的`.gz`格式
>
- Dataset模式下,训练线程与数据读取线程的关系强相关,为了多线程充分利用,`强烈建议将文件拆成多个小文件`,尤其是在分布式训练场景下,可以均衡各个节点的数据量。
关于数据的tips
-
PaddleRec 面向的是推荐与搜索领域,数据以文本格式为主
-
Dataset模式支持读取文本数据压缩后的
`.gz`
格式
-
Dataset模式下,训练线程与数据读取线程的关系强相关,为了多线程充分利用,
`强烈建议将文件拆成多个小文件`
,尤其是在分布式训练场景下,可以均衡各个节点的数据量。
## 自定义Reader
...
...
@@ -171,13 +171,14 @@ class TrainReader(Reader):
具体流程如下:
1.
首先我们需要引入Reader基类
```python
from paddlerec.core.reader import Reader
```
2.
创建一个子类,继承Reader的基类,训练所需Reader命名为
`TrainerReader`
3.
在
`init(self)`
函数中声明一些在数据读取中会用到的变量,如示例代码中的
`cont_min_`
、
`categorical_range_`
等,必要时可以在
`config.yaml`
文件中配置变量,通过
`env.get_global_env()`
拿到。
4.
继承并实现基类中的
`generate_sample(self, line)`
函数,逐行读取数据。该函数应返回一个可以迭代的reader方法(带有yield的函数不再是一个普通的函数,而是一个生成器generator,成为了可以迭代的对象,等价于一个数组、链表、文件、字符串etc.)
5.
在这个可以迭代的函数中,如示例代码中的
`def reader()`
,我们定义数据读取的逻辑。
例如对
以行为单位的数据进行截取,转换及预处理。
5.
在这个可以迭代的函数中,如示例代码中的
`def reader()`
,我们定义数据读取的逻辑。以行为单位的数据进行截取,转换及预处理。
6.
最后,我们需要将数据整理为特定的格式,才能够被dataset正确读取,并灌入的训练的网络中。简单来说,数据的输出顺序与我们在网络中创建的
`inputs`
必须是严格一一对应的,并转换为类似字典的形式。在示例代码中,我们使用
`zip`
的方法将参数名与数值构成的元组组成了一个list,并将其yield输出。如果展开来看,我们输出的数据形如
`[('dense_feature',[value]),('C1',[value]),('C2',[value]),...,('C26',[value]),('label',[value])]`
...
...
doc/rec_background.md
浏览文件 @
6e3933d4
此差异已折叠。
点击以展开。
readme.md
浏览文件 @
6e3933d4
...
...
@@ -21,10 +21,10 @@
<img
align=
"center"
src=
"doc/imgs/structure.png"
>
<p>
-
源于飞桨生态的
`搜索推荐模型`
**一站式开箱即用工具**
-
适合初学者,开发者,研究者
的
调研,训练到预测部署的全流程解决方案
-
源于飞桨生态的
搜索推荐模型
**一站式开箱即用工具**
-
适合初学者,开发者,研究者
从
调研,训练到预测部署的全流程解决方案
-
包含语义理解、召回、粗排、精排、多任务学习、融合等多个任务的推荐搜索算法库
-
自定义
`yaml`
即可快速上手使用单机训练、大规模分布式训练、离线预测、在线部署
-
配置
`yaml`
自定义选项,
即可快速上手使用单机训练、大规模分布式训练、离线预测、在线部署
<h2
align=
"center"
>
PadlleRec概览
</h2>
...
...
@@ -105,7 +105,6 @@ python -m fleetrec.run -m fleetrec.models.rank.dnn -d cpu -e cluster
<h2
align=
"center"
>
支持模型列表
</h2>
> 部分表格占位待改(大规模稀疏)
| 方向 | 模型 | 单机CPU训练 | 单机GPU训练 | 分布式CPU训练 | 分布式GPU训练 |
| :------: | :----------------------------------------------------------------------------: | :---------: | :---------: | :-----------: | :-----------: |
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录