使用prcc数据集跑schp模型
时间: 2024-01-11 16:02:26 浏览: 57
首先,您需要下载PRCC数据集,并将其转换为模型可以读取的格式。PRCC数据集有两个部分:(1)问题和回答的原始文本文件,(2)用于训练模型的预处理文件(已将文本转换为数字)。您可以使用以下命令从PRCC官方网站下载原始文本文件:
```
wget http://nlp.xiaolingzi.com:8000/static/dataset/prcc/prcc-qa.zip
unzip prcc-qa.zip
```
然后,您需要将原始文本文件转换为数字。可以使用PRCC官方提供的脚本来完成此操作。您可以使用以下命令将原始文本文件转换为数字:
```
git clone https://github.com/candlewill/PRCC.git
cd PRCC
python preprocess.py ../prcc-qa ../processed_data
```
这将生成以下文件:
- `train.src`: 包含所有训练样本的问题。
- `train.tgt`: 包含所有训练样本的答案。
- `valid.src`: 包含所有验证样本的问题。
- `valid.tgt`: 包含所有验证样本的答案。
- `vocab.src`: 包含所有问题单词的词汇表。
- `vocab.tgt`: 包含所有答案单词的词汇表。
接下来,您可以使用Schp模型训练这些数据。您可以使用以下命令训练Schp模型:
```
python train.py \
--train-src-path ../processed_data/train.src \
--train-tgt-path ../processed_data/train.tgt \
--valid-src-path ../processed_data/valid.src \
--valid-tgt-path ../processed_data/valid.tgt \
--vocab-src-path ../processed_data/vocab.src \
--vocab-tgt-path ../processed_data/vocab.tgt \
--model-path ./model \
--batch-size 32 \
--max-epoch 30 \
--save-per-epoch 5 \
--max-decoding-len 30 \
--beam-size 5 \
--learning-rate 0.001 \
--dropout 0.1 \
--num-heads 4 \
--num-layers 2 \
--model-type schp
```
这将使用Schp模型在PRCC数据集上训练30个时期,并将每5个时期保存一次模型。您可以根据需要更改这些超参数并尝试不同的组合来获得更好的结果。