A PyTorch based implementation of Tree-LSTM from Kai Sheng Tai's paper Improved Semantic Representations From Tree-Structured Long Short-Term Memory Networks.
- PyTorch Deep learning library
- tqdm: display progress bar
- meowlogtool: a logger that write everything on console to file
- Java >= 8 (for Stanford CoreNLP utilities)
- Python >= 3
First run the script ./fetch_and_preprocess.sh
This downloads the following data:
- Stanford Sentiment Treebank (sentiment classification task)
- Glove word vectors (Common Crawl 840B) -- Warning: this is a 2GB download!
and the following libraries:
python sentiment.py --name <name_of_log_file> --model_name <constituency|dependency> --epochs 10
We have not fully test on fine grain classification yet. Binary classification accuracy on both model are the same in original paper.
Kai Sheng Tai for the original LuaTorch implementation
Pytorch team for Python library
Riddhiman Dasgupta for his implement on sentiment relatedness https://github.com/dasguptar/treelstm.pytorch which I based on as starter code.
MIT