Global Encoding for Abstractive Summarization (ACL 2018)
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.idea upload the script for rouge Oct 25, 2018
RELEASE-1.5.5 update for torch 0.4 Oct 23, 2018
data update for torch 0.4 Oct 25, 2018
models Update beam.py Nov 12, 2018
script merge Oct 25, 2018
utils update for torch 0.4 Oct 25, 2018
.gitattributes
LICENSE Initial commit May 10, 2018
README.md Update README.md Oct 25, 2018
giga.yaml
lcsts.yaml
lr_scheduler.py
opts.py
preprocess.py Add files via upload Oct 23, 2018
train.py

README.md

Global-Encoding

This is the code for our paper Global Encoding for Abstractive Summarization, https://arxiv.org/abs/1805.03989


Requirements

  • Ubuntu 16.0.4
  • Python 3.5
  • Pytorch 0.4.1
  • pyrouge

In order to use pyrouge, set rouge path with the line below:

pyrouge_set_rouge_path RELEASE-1.5.5/

It seems that some user have met problems with pyrouge, so I have updated the script, and users can put the directory "RELEASE-1.5.5" in your home directory and set rouge path to it.


Preprocessing

python3 preprocess.py -load_data path_to_data -save_data path_to_store_data 

Remember to put the data into a folder and name them train.src, train.tgt, valid.src, valid.tgt, test.src and test.tgt, and make a new folder inside called data


Training

python3 train.py -log log_name -config config_yaml -gpus id

Evaluation

python3 train.py -log log_name -config config_yaml -gpus id -restore checkpoint -mode eval

Citation

If you use this code for your research, please cite the paper this code is based on: Global Encoding for Abstractive Summarization:.

@inproceedings{globalencoding,
  title     = {Global Encoding for Abstractive Summarization},
  author    = {Junyang Lin and Xu Sun and Shuming Ma and Qi Su},
  booktitle = {{ACL} 2018},
  year      = {2018}
}