diff --git a/core/trainers/transpiler_trainer.py b/core/trainers/transpiler_trainer.py
index c5c4513572bc59c2f30ee8d599743b9aa1011930..f9d77f4735e5264a021afce790f0ec096f72af2e 100755
--- a/core/trainers/transpiler_trainer.py
+++ b/core/trainers/transpiler_trainer.py
@@ -52,6 +52,16 @@ class TranspileTrainer(Trainer):
reader = dataloader_instance.dataloader(
reader_class, state, self._config_yaml)
+ debug_mode = envs.get_global_env("debug_mode", False, namespace)
+ if debug_mode:
+ print("--- DataLoader Debug Mode Begin , show pre 10 data ---")
+ for idx, line in enumerate(reader):
+ print(line)
+ if idx >= 9:
+ break
+ print("--- DataLoader Debug Mode End , show pre 10 data ---")
+ exit 0
+
reader_class = envs.lazy_instance_by_fliename(reader_class, class_name)
reader_ins = reader_class(self._config_yaml)
if hasattr(reader_ins, 'generate_batch_from_trainfiles'):
@@ -98,6 +108,16 @@ class TranspileTrainer(Trainer):
]
dataset.set_filelist(file_list)
+
+ debug_mode = envs.get_global_env("debug_mode", False, namespace)
+ if debug_mode:
+ print(
+ "--- Dataset Debug Mode Begin , show pre 10 data of {}---".format(file_list[0]))
+ os.system("cat {} | {} | head -10".format(file_list[0], pipe_cmd))
+ print(
+ "--- Dataset Debug Mode End , show pre 10 data of {}---".format(file_list[0]))
+ exit 0
+
return dataset
def save(self, epoch_id, namespace, is_fleet=False):
@@ -116,23 +136,28 @@ class TranspileTrainer(Trainer):
if not need_save(epoch_id, save_interval, False):
return
-
+
# print("save inference model is not supported now.")
# return
- feed_varnames = envs.get_global_env("save.inference.feed_varnames", None, namespace)
- fetch_varnames = envs.get_global_env("save.inference.fetch_varnames", None, namespace)
+ feed_varnames = envs.get_global_env(
+ "save.inference.feed_varnames", None, namespace)
+ fetch_varnames = envs.get_global_env(
+ "save.inference.fetch_varnames", None, namespace)
if feed_varnames is None or fetch_varnames is None:
return
- fetch_vars = [fluid.default_main_program().global_block().vars[varname] for varname in fetch_varnames]
- dirname = envs.get_global_env("save.inference.dirname", None, namespace)
+ fetch_vars = [fluid.default_main_program().global_block().vars[varname]
+ for varname in fetch_varnames]
+ dirname = envs.get_global_env(
+ "save.inference.dirname", None, namespace)
assert dirname is not None
dirname = os.path.join(dirname, str(epoch_id))
if is_fleet:
- fleet.save_inference_model(self._exe, dirname, feed_varnames, fetch_vars)
+ fleet.save_inference_model(
+ self._exe, dirname, feed_varnames, fetch_vars)
else:
fluid.io.save_inference_model(
dirname, feed_varnames, fetch_vars, self._exe)
diff --git a/models/rank/dnn/config.yaml b/models/rank/dnn/config.yaml
index ba2a5ac307c98193923391b22bb48d3a0aabc00f..27eb639190cf98ffe275d0dd49514346ceae11b0 100755
--- a/models/rank/dnn/config.yaml
+++ b/models/rank/dnn/config.yaml
@@ -24,6 +24,7 @@ train:
batch_size: 2
class: "{workspace}/../criteo_reader.py"
train_data_path: "{workspace}/data/train"
+ debug_mode: False
model:
models: "{workspace}/model.py"
diff --git a/readme.md b/readme.md
index a2cdf9dcfd069e5dd8d6c5f05c466fcc7ed73cc5..3f592b404b6106489ca5bc9fff036944afd784b1 100644
--- a/readme.md
+++ b/readme.md
@@ -21,10 +21,10 @@
-- PaddleRec是源于飞桨生态的搜索推荐模型一站式开箱即用工具,无论您是初学者,开发者,研究者均可便捷的使用PaddleRec完成调研,训练到预测部署的全流程工作。 -- PaddleRec提供了搜索推荐任务中语义理解、召回、粗排、精排、多任务学习的全流程解决方案,包含的算法模型均在百度各个业务的实际场景中得到了验证。 -- PaddleRec将各个模型及其训练预测流程规范化整理,进行易用性封装,用户只需自定义yaml文件即可快速上手使用。 -- PaddleRec以飞桨深度学习框架为核心,融合了大规模分布式训练框架Fleet,以及一键式推理部署框架PaddleServing,支持推荐搜索算法的工业化应用。 +- 源于飞桨生态的`搜索推荐模型`**一站式开箱即用工具** +- 适合初学者,开发者,研究者的调研,训练到预测部署的全流程解决方案 +- 包含语义理解、召回、粗排、精排、多任务学习、融合等多个任务的推荐搜索算法库 +- 自定义`yaml`即可快速上手使用单机训练、大规模分布式训练、离线预测、在线部署