LIC2022-知识对话任务基线系统
转自AI Studio,原文链接:LIC2022-知识对话任务基线系统 - 飞桨AI StudioLIC2022: 知识对话baseline本教程介绍使用基于paddlepaddle2.2的大规模对话预训练框架Knover,及其提供的预训练模型,在"LIC2022多技能对话"比赛数据集上训练和测试。赛题介绍直播回顾:0. 配置环境获取github代码:git clone -b dygraph ht
转自AI Studio,原文链接:LIC2022-知识对话任务基线系统 - 飞桨AI Studio
LIC2022: 知识对话baseline
本教程介绍使用基于paddlepaddle2.2的大规模对话预训练框架Knover,及其提供的预训练模型,在"LIC2022多技能对话"比赛数据集上训练和测试。
赛题介绍直播回顾:
0. 配置环境
获取github代码:
git clone -b dygraph https://github.com/PaddlePaddle/Knover
设置Python环境
export PYTHONPATH=/home/aistudio/work/Knover:$PYTHONPATH
基线模型需要的配置路径为:
projects/lic2022
创建数据和模型存在的目录,本教程中默认训练和预测使用的数据和模型均存放以下目录:
mkdir -p projects/lic2022/model_zoo
mkdir -p projects/lic2022/preprocess_data
1. 准备数据
模型训练和预测之前,都需要准备好所需的数据。首先,将比赛官网获取的数据放到当前环境中,具体目录可自行选择。数据获取可通过2022语言与智能技术竞赛:知识对话获取。
# 运行数据预处理脚本,将原始数据处理为Knover训练、预测所需格式
python ./tools/data_preprocess.py
2. 下载模型
本基线提供"大规模数据预训练模型"和"对话比赛数据微调模型"两个模型。
- 大规模数据预训练模型:采用包含20M对话session/60M对话utterance的大规模中文对话数据训练得到
- 对话比赛数据微调模型:上述预训练模型,继续在LIC2022知识对话比赛的对话数据上进行微调得到,包括Query生成与对话生成两个
模型下载方式如下:
# 大规模数据预训练模型
wget "https://dialogue.bj.bcebos.com/Knover/projects/lic2022/12L.pretrain.pdparams"
# 对话比赛数据微调模型
# Query生成
wget "https://dialogue.bj.bcebos.com/Knover/projects/lic2022/query_finetune.pdparams"
# 对话生成
wget "https://dialogue.bj.bcebos.com/Knover/projects/lic2022/dial_finetune.pdparams"
将上述模型保存在./projects/lic2022/model_zoo/目录下(也可以放在其它目录下),并在模型训练和测试的时候,保证模型路径与config目录下配置文件中,对应模型配置路径一致(必须).
3. 模型训练
模型训练命令如下:
# 模型训练,一定要确保GPU环境和模型参数配置正确,具体见下文示例
# Query生成 训练
./scripts/local/job.sh ./projects/lic2022/conf/query_train.conf
# 对话生成 训练
./scripts/local/job.sh ./projects/lic2022/conf/dial_train.conf
训练之前,检查启动脚本与配置文件,确保配置正确:
- 配置GPU,位置:./scripts/local/job.sh
# 单GPU卡训练,以使用0号GPU卡为例
export CUDA_VISIBLE_DEVICES=0
# 多GPU卡训练,以使用0,1号GPU卡为例
export CUDA_VISIBLE_DEVICES=0,1
4. 模型预测
模型预测命令如下:
# 模型预测,一定要确保GPU环境和模型参数配置正确,具体见下文示例
# Query生成预测
./scripts/local/job.sh ./projects/lic2022/conf/query_infer.conf
#对话生成预测
./scripts/local/job.sh ./projects/lic2022/conf/dial_infer.conf
预测之前,检查启动脚本与配置文件,确保配置正确:
- 配置GPU,位置:./scripts/local/job.sh
# 单GPU卡训练,以使用0号GPU卡为例
export CUDA_VISIBLE_DEVICES=0
# 多GPU卡训练,以使用0,1号GPU卡为例
export CUDA_VISIBLE_DEVICES=0,1
5. 模型评估
模型评估需要将预测结果提交到官网进行评测:
Query生成预测结果与对话生成预测结果拼接为一个文本,提交到官网评估,可参考数据集中的submit_file.txt
6. 其它
本教程提供了"大规模数据预训练模型"和"对话比赛数据微调模型"两个模型,可作为一个基础baseline,帮助参赛者快速跑通整个参赛流程。 参赛者可以针对赛题进行其他改进,例如修改数据预处理方法,修改网络结构,修改训练方式,修改预测结果的后处理等。
In [ ]
更多推荐
所有评论(0)