- Lyrics generation using machine learning techniques.
- FIT 4-508, Tsinghua University.
- You should add this 'Lyrics' folder to python path.
- Add the following line to your ~/.bashrc or ~/.profile
export PYTHONPATH=$PYTHONPATH:<path_to_Lyrics>
- Then setup the dependencies.
- Anaconda is highly recommended.
conda env create -f environment.yml
source activate lyrics
- Meanwhile, you can pull the data and model which will be used.
- Tip: Dropbox is blocked by the GFW. Make sure your terminal can do the work.
- If not, peek into saved/pull.sh and manually download them in your browser and place them under saved/.
cd saved
bash pull.sh
-
Survey & Guide
-
Style Transfer
- AAAI 2018, Style Transfer in Text: Exploration and Evaluation
- ACL 2017, Hafez: an Interactive Poetry Generation System
- NIPS 2017 Workshop, Improved Neural Text Attribute Transfer with Non-parallel Data
- EMNLP 2016, Stylistic Transfer in Natural Language Generation Systems Using Recurrent Neural Networks
-
Thematic & Coherent
-
Refining & Editing
-
VAE
- Tutorial on Variational Autoencoders
- Google, Generating Sentences from a Continuous Space
- ACL 2017, A Conditional Variational Framework for Dialog Generation
- Improved Variational Autoencoders for Text Modeling using Dilated Convolutions
- A Hybrid Convolutional Variational Autoencoder for Text Generation
- A Hierarchical Latent Variable Encoder-Decoder Model for Generating Dialogues
- Generating Thematic Chinese Poetry with Conditional Variational Autoencoder
-
Reinforcement Learning
- Jupyter notebooks containing experimental records and study notes are kept here.
- Documentation can be found at Lyrics Documentation
- Utility classes handling data and lyrics.
- Topic model, keyword extraction, clustering.
- Saved data including training set and trained models are kept here.
- App served on Deep Lyrics.
- Frontend in React and backend in Flask.
- Code not in use but may come into use in the future.
- seq2seq implemented in PyTorch.
- Use bigram and word vector distance to predict word, constrained by rhythm.
- Data cleaning, preprocessing
- Lyrics crawler.