Skip to content

Latest commit

 

History

History
75 lines (57 loc) · 2.68 KB

README.md

File metadata and controls

75 lines (57 loc) · 2.68 KB

SUMBT+LaRL

This is PyTorch implementation for SUMBT+LaRL: Effective Multi-Domain End-to-End Neural Task-Oriented Dialog System, Hwaran Lee, Seokhwan Jo, Hyungjun Kim, Sangkeun Jung, and Tae-Yoon Kim, IEEE Access, 2021

Installation

This code is implemented upon ConvLab. Specifically, it requires Python 3.6, CUDA 10.1, PyTorch 1.0+, and HuggingFace 0.6.1.

For convenience, Build and Run the Dockerfile to get the environment for this implementation. Note that when you run the docker file, mount this repository to access the data and codes.

Data preprocessing

  1. unzip followings:

    • data/multiwoz/annotation/annotated_user_da_with_span_full_patchName_convai.json.zip
    • data/multiwoz/annotation/MULTIWOZ2.zip
  2. run preprocessing codes:

    cd data/multiwoz;
    python split_dataset.py;
    python construct_ontology.py --output_dir $output_dir;

    or, just unzip followings:

    • data/multiwoz/sumbt_larl.zip
    • data/multiwoz/{train, val, test}.json.zip

Training

The main command is following:

python convlab/modules/e2e/multiwoz/SUMBT_LaRL/main.py --do_train --do_eval \
--data_dir $data_dir --task_name $task_name \
--output_dir $output_dir --delex_data_dir $delex_data_dir

For more details, see running scripts in convlab/modules/e2e/multiwoz/SUMBT_LaRL/scripts for pretraining SUMBT and LaRL modules, end-to-end fine-tuning, and then RL training.

Evaluation with Simulators in ConvLab

You can run the trained end-to-end models with the simulator in ConvLab with the command.

$ python run.py {spec file} {spec name} {mode}

For example, you can download our trained models from Google Drive and unzip the model inside models directory, then run the command.

$ python run.py convlab/spec/sumbt_larl.json sumbt_larl eval

Citing

If you use this code in your research, please cite following:

@article{lee2021sumbt+,
  title={SUMBT+ LaRL: Effective Multi-Domain End-to-End Neural Task-Oriented Dialog System},
  author={Lee, Hwaran and Jo, Seokhwan and Kim, Hyungjun and Jung, Sangkeun and Kim, Tae-Yoon},
  journal={IEEE Access},
  volume={9},
  pages={116133--116146},
  year={2021},
  publisher={IEEE}
}