From 17a18fa7b00dfc623d82430236b63e7d4ae7d675 Mon Sep 17 00:00:00 2001 From: malin10 Date: Mon, 1 Jun 2020 21:09:37 +0800 Subject: [PATCH] bug fix for word2vec --- models/recall/readme.md | 38 ++++++++++++++++++++++++-- models/recall/word2vec/prepare_data.sh | 2 +- 2 files changed, 37 insertions(+), 3 deletions(-) diff --git a/models/recall/readme.md b/models/recall/readme.md index 421df131..c51693fd 100755 --- a/models/recall/readme.md +++ b/models/recall/readme.md @@ -57,8 +57,8 @@

-## 使用教程 -### 训练 预测 +## 使用教程(快速开始) +### ```shell python -m paddlerec.run -m paddlerec.models.recall.word2vec # word2vec python -m paddlerec.run -m paddlerec.models.recall.ssr # ssr @@ -67,6 +67,40 @@ python -m paddlerec.run -m paddlerec.models.recall.gnn # gnn python -m paddlerec.run -m paddlerec.models.recall.ncf # ncf python -m paddlerec.run -m paddlerec.models.recall.youtube_dnn # youtube_dnn ``` + +## 使用教程(复现论文) +为了方便使用者能够快速的跑通每一个模型,我们在每个模型下都提供了样例数据,并且调整了batch_size等超参以便在样例数据上更加友好的显示训练&测试日志。如果需要复现readme中的效果请按照如下表格调整batch_size等超参,并使用提供的脚本下载对应数据集以及数据预处理。 + +| 模型 | batch_size | thread_num | epoch_num | +| :---: | :---: | :---: | :---: | +| Word2Vec | 100 | 5 | 5 | +| GNN | 100 | 1 | 30 | +| GRU4REC | 500 | 1 | 10 | + +### 数据处理 +参考每个模型目录数据下载&预处理脚本。 +```bash +sh data_prepare.sh +``` + +### 训练 +```bash +cd modles/recall/gnn # 进入选定好的召回模型的目录 以gnn为例 +python -m paddlerec.run -m ./config.yaml # 自定义修改超参后,指定配置文件,使用自定义配置 +``` + +### 预测 +``` +# 修改对应模型的config.yaml, workspace配置为当前目录的绝对路径 +# 修改对应模型的config.yaml,mode配置infer_runner +# 示例: mode: train_runner -> mode: infer_runner +# infer_runner中 class配置为 class: single_infer +# 修改phase阶段为infer的配置,参照config注释 + +# 修改完config.yaml后 执行: +python -m paddlerec.run -m ./config.yaml # 以gnn为例 +``` + ## 效果对比 ### 模型效果列表 diff --git a/models/recall/word2vec/prepare_data.sh b/models/recall/word2vec/prepare_data.sh index f7da1a10..a0608fed 100755 --- a/models/recall/word2vec/prepare_data.sh +++ b/models/recall/word2vec/prepare_data.sh @@ -29,7 +29,7 @@ mv raw_data/word_id_dict.txt data/dict/ rm -rf data/train/* rm -rf data/test/* -python preprocess.py --data_resplit --input_corpus_dir=raw_data/convert_text8 --output_corpus_dir=data/data +python preprocess.py --data_resplit --input_corpus_dir=raw_data/convert_text8 --output_corpus_dir=data/train # download test data wget --no-check-certificate https://paddlerec.bj.bcebos.com/word2vec/test_dir.tar -- GitLab