Implement English-to-French Neural Machine Translation task by implenting seq2seq in TensorFlow 1.3.
Shared Task: Machine Translation of News, WMT 16
I took the English and French dataset in news-test2013 as training example.
The hyperparameter and other details in codes are not yet tuned.
- Python 3.5
- TensorFlow 1.3
- NLTK
- Tokenization
- Padding (EOS in the end of encoder input; GO in the beginning of decoder input and EOS in the end)
- Vocabulary list building
- Autoencoder/encoder-decoder in multi-RNN-layers
- Attention mechanism (Luong's)
- Batch-training process
- Beamsearch/basic inference decoder
- Bidirectional encoder
- BLEU score metrics
- Bucketing (Optional. Because TensorFlow's dynamic_decode doesn't require fixed length input anymore)
Import mySeq2Seq.py to have Seq2SeqModel class.
You may refer to train.ipynb for the training process and data flow.
Massive Exploration of Neural Machine Translation Architectures
TensorFlow / nmt
JayParks / tf-seq2seq