Home

Awesome

Event-Extraction-as-Question-Generation-and-Answering

This repository contains the code for our ACL 2023 paper Event Extraction as Question Generation and Answering .

<p align='center'> <img src='figures/qga-ee.jpg' width="400px"> </p>

ACE data preprocessing

We adapted the preprocessing scripts from the Dygiepp repo. The main difference is that we retrieve the character offsets of the annotations as well as sentences. Please refer to ./data_process/README.md for details.

Requirement

The code is based on Python 3.8+, and the scores reported are based on experiments on a single AWS p3.2xlarge instance.

To install the required dependencies:

pip install -r requirements.txt

Code

Train and eval models

Train the Trigger Detection Model.

bash ./train_event_trigger_model.sh

The trained model will be saved in ./model_checkpoint/trigger_model by default.

Train the Question Generation Models.

bash ./train_qg_bart.sh for the BART backbone.

bash ./train_qg_t5.sh for the T5 backbone.

The trained model will be saved in ./model_checkpoint/qg_model_bart or ./model_checkpoint/qg_model_t5 for BART and T5 backbone respectively by default.

Train Argument Extraction Models and Evaluate with Gold Event Triggers

bash ./train_argument_extraction_bart.sh for the BART backbone.

bash ./train_argument_extraction_t5.sh for the T5 backbone.

The trained model will be saved in ./model_checkpoint/eae_model_bart or ./model_checkpoint/eae_model_t5 for BART and T5 backbone respectively by default.

Evaluate Argument Extraction models with System Predicted Event Triggers

bash evaluate_e2e_predicted_triggers_bart.sh for the BART backbone.

bash evaluate_e2e_predicted_triggers_t5.sh for the T5 backbone.

Citation:

If you find the code in this repo helpful, please cite our paper:

@inproceedings{lu-etal-2023-event,
    title = "Event Extraction as Question Generation and Answering",
    author = "Lu, Di  and
    Ran, Shihao  and
    Tetreault, Joel  and
    Jaimes, Alejandro",
    booktitle = "Proceedings of the 61st Annual Meeting of the Association for Computational Linguistics (Volume 2: Short Papers)",
    month = jul,
    year = "2023",
    address = "Toronto, Canada",
    publisher = "Association for Computational Linguistics",
    url = "https://aclanthology.org/2023.acl-short.143",
}