ZhangShiyue / oposum

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

OpoSum: Opinion Summarization from User Reviews

This repo holds all code and data from the following papers:

Multiple Instance Learning Networks for Fine-Grained Sentiment Analysis,
Stefanos Angelidis, Mirella Lapata. 2018.
In Transactions of the Association for Computational Linguistics (TACL).
[ pdf ]

Summarizing Opinions: Aspect Extraction Meets Sentiment Prediction and They Are Both Weakly Supervised,
Stefanos Angelidis, Mirella Lapata. 2018.
In EMNLP 2018.
[ pdf ]


Please find our data in the this google drive url.


To train the neural models (MILNET, MATE), we first need to preprocess the raw text files into easy-to-manipulate .hdf5 binaries.

First, install dependencies for the preprocessing scripts:

pip install numpy --user
pip install nltk --user 
pip install h5py --user

python -c "import nltk; nltk.download('wordnet'); nltk.download('stopwords')"

Preprocessing for MILNET:

# this script will also download the pre-trained GoogleNews
# word2vec embeddings. If you already have these, place the
# file GoogleNews-vectors-negative300.bin in ./w2v

# replace bags_and_cases with any of the domains in ./data/train
./scripts/prep_milnet.sh bags_and_cases

Preprocessing for MATE:

Download glove.6B.zip from https://nlp.stanford.edu/projects/glove/, unzip, and put the files under ./w2v

# replace bags_and_cases with any of the domains in ./data/train
sh ./scripts/prep_mate.sh bags_and_cases

About

License:Apache License 2.0


Languages

Language:Classic ASP 70.7%Language:Python 19.9%Language:Lua 8.8%Language:Shell 0.6%