Coder Social home page Coder Social logo

summarization-dpp-capsnet's Introduction

Improving the Similarity Measure of Determinantal Point Processes for Extractive Multi-Document Summarization

We provide the source code for the paper "Improving the Similarity Measure of Determinantal Point Processes for Extractive Multi-Document Summarization", accepted at ACL'19. If you find the code useful, please cite the following paper.

@inproceedings{cho-lebanoff-foroosh-liu:2019,
 Author = {Sangwoo Cho and Logan Lebanoff and Hassan Foroosh and Fei Liu},
 Title = {Improving the Similarity Measure of Determinantal Point Processes for Extractive Multi-Document Summarization},
 Booktitle = {Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics (ACL)},
 Year = {2019}}

This repository contains the code for a similarity measure network using Capsule network.

Dependencies

This code is developed with the following environment:

Train and evaluate on the CNN/DM summary pair dataset

Set up directory for training/testing data

$ git clone https://github.com/sangwoo3/summarization-dpp-capsnet.git & cd summarization-dpp-capsnet
$ mkdir data & cd data

Download the data

  1. Download CNN/DM summary pair dataset from HERE and extract it under /data directory
    • This summary dataset is pre-processed with 50k prevailing vocabularies in CNN/DM summary pair dataset. The label is 1 for a positive pair sentence, and 0 for a negative pair. The positive pair is a pair of a summary sentence and its most similar sentence in the source document that leads to the largest Rouge scores. The negative pair is a pair of the same summary sentence and a random sentence in the same document.
  2. Download Glove word vectors of 50k vocabulary from HERE and place it under /data directory
    • 6B tokens, 300d Glove word vectors are used LINK
  3. If you want raw CNN/DM summary dataset, download from HERE.
    • This data contains candiate summary sentences for each document. The data is pre-processed with the preprocess.py file to generate the above CNN/DM summary pair dataset.)

Training

$ python main_Capsnet.py

Testing

$ python main_Capsnet.py --testing

Testing on STS dataset

$ python main_Capsnet.py --testing --test_mode STS

Pre-trained Model

  • Download the pre-trained model from HERE and place it under /result/capnet_sim directory
    • /result/capnet_sim is a default directory for training results
  • Download the model fine-tuned on STS dataset from HERE
    • This model is trained on CNN/DM summary pair dataset and then fine-tuned on STS.
    • It can be used to evaluate STS prediction accuracy.

System summary

We provide our best system summaries of DUC04 and TAC11. They are generated with DPP and in the system_summary directory. For DPP and multi-document dataset, we do not provide the code and dataset due to license. Please refer to DPP code and download DUC 03/04 and TAC 08/09/10/11 dataset with your request and approval.

License

This project is licensed under the BSD License - see the LICENSE.md file for details.

summarization-dpp-capsnet's People

Contributors

sangwoo3 avatar

Watchers

James Cloos avatar paper2code - bot avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.