================================= This implementation contains an extension of seq2seq tutorial for conversation models in Tensorflow:
-
Option to use Beam Search and Beam Size for decoding
-
Currently, it supports
- Simple seq2seq models
- Attention based seq2seq models
-
To get better results use beam search during decoding / inference
Examples of basic model can be found in this paper.
https://arxiv.org/abs/1702.05512
- Python 2.7 or Python 3.3+
- NLTK
- TensorFlow
Data accepted is in the tsv format where first component is the context and second is the reply
TSV format Ubuntu Dialog Data can be found here
example :-
- What are you doing ? \t Writing seq2seq model .
To train a model with Ubuntu dataset:
$ python neural_conversation_model.py --train_dir ubuntu/ --en_vocab_size 60000 --size 512 --data_path ubuntu/train.tsv --dev_data ubuntu/valid.tsv --vocab_path ubuntu/60k_vocan.en --attention
To test an existing model:
$ python neural_conversation_model.py --train_dir ubuntu/ --en_vocab_size 60000 --size 512 --data_path ubuntu/train.tsv --dev_data ubuntu/valid.tsv --vocab_path ubuntu/60k_vocan.en --attention --decode --beam_search --beam_size 25
- Add other state of art neural models.
- Adding layer normalization( in progress )
https://github.com/pbhatia243/tf-layer-norm
Parminder Bhatia, parminder.bhatia243@gmail.com