NLP-Models-Tensorflow, Gathers machine learning and tensorflow deep learning models for NLP problems, code simplify inside Jupyter Notebooks 100%.
- Text classification
- Chatbot
- Neural Machine Translation
- Embedded
- Entity-Tagging
- POS-Tagging
- Dependency-Parser
- SQUAD Question-Answers
- Question-Answers
- Abstractive Summarization
- Extractive Summarization
- Stemming
- Generator
- Topic Generator
- Language detection
- OCR (optical character recognition)
- Sentence-Pair classification
- Speech to Text
- Text to Speech
- Old-to-Young Vocoder
- Text Similarity
- Text Augmentation
- Miscellaneous
- Attention
Original implementations are quite complex and not really beginner friendly. So I tried to simplify most of it. Also, there are tons of not-yet release papers implementation. So feel free to use it for your own research!
I will attached github repositories for models that I not implemented from scratch, basically I copy, paste and fix those code for deprecated issues.
Tensorflow version 1.10 and above only, not included 2.X version.
Trained on English sentiment dataset, accuracy table in text-classification.
- Basic cell RNN
- Bidirectional RNN
- LSTM cell RNN
- GRU cell RNN
- LSTM RNN + Conv2D
- K-max Conv1d
- LSTM RNN + Conv1D + Highway
- LSTM RNN with Attention
- Neural Turing Machine
- BERT
- Dynamic Memory Network
- XL-net
Complete list (76 notebooks)
- Basic cell RNN
- Basic cell RNN + Hinge
- Basic cell RNN + Huber
- Basic cell Bidirectional RNN
- Basic cell Bidirectional RNN + Hinge
- Basic cell Bidirectional RNN + Huber
- LSTM cell RNN
- LSTM cell RNN + Hinge
- LSTM cell RNN + Huber
- LSTM cell Bidirectional RNN
- LSTM cell Bidirectional RNN + Huber
- LSTM cell RNN + Dropout + L2
- GRU cell RNN
- GRU cell RNN + Hinge
- GRU cell RNN + Huber
- GRU cell Bidirectional RNN
- GRU cell Bidirectional RNN + Hinge
- GRU cell Bidirectional RNN + Huber
- LSTM RNN + Conv2D
- K-max Conv1d
- LSTM RNN + Conv1D + Highway
- LSTM RNN + Basic Attention
- LSTM Dilated RNN
- Layer-Norm LSTM cell RNN
- Only Attention Neural Network
- Multihead-Attention Neural Network
- Neural Turing Machine
- LSTM Seq2Seq
- LSTM Seq2Seq + Luong Attention
- LSTM Seq2Seq + Bahdanau Attention
- LSTM Seq2Seq + Beam Decoder
- LSTM Bidirectional Seq2Seq
- Pointer Net
- LSTM cell RNN + Bahdanau Attention
- LSTM cell RNN + Luong Attention
- LSTM cell RNN + Stack Bahdanau Luong Attention
- LSTM cell Bidirectional RNN + backward Bahdanau + forward Luong
- Bytenet
- Fast-slow LSTM
- Siamese Network
- LSTM Seq2Seq + tf.estimator
- Capsule layers + RNN LSTM
- Capsule layers + LSTM Seq2Seq
- Capsule layers + LSTM Bidirectional Seq2Seq
- Nested LSTM
- LSTM Seq2Seq + Highway
- Triplet loss + LSTM
- DNC (Differentiable Neural Computer)
- ConvLSTM
- Temporal Convd Net
- Batch-all Triplet-loss + LSTM
- Fast-text
- Gated Convolution Network
- Simple Recurrent Unit
- LSTM Hierarchical Attention Network
- Bidirectional Transformers
- Dynamic Memory Network
- Entity Network
- End-to-End Memory Network
- BOW-Chars Deep sparse Network
- Residual Network using Atrous CNN
- Residual Network using Atrous CNN + Bahdanau Attention
- Deep pyramid CNN
- Transformer-XL
- Transfer learning GPT-2 345M
- Quasi-RNN
- Tacotron
- Slice GRU
- Slice GRU + Bahdanau
- Wavenet
- Transfer learning BERT Base
- Transfer learning XL-net Large
- LSTM BiRNN global Max and average pooling
- Transfer learning BERT Base drop 6 layers
- Transfer learning BERT Large drop 12 layers
- Transfer learning XL-net Base
Trained on Cornell Movie Dialog corpus, accuracy table in chatbot.
- Seq2Seq-manual
- Seq2Seq-API Greedy
- Bidirectional Seq2Seq-manual
- Bidirectional Seq2Seq-API Greedy
- Bidirectional Seq2Seq-manual + backward Bahdanau + forward Luong
- Bidirectional Seq2Seq-API + backward Bahdanau + forward Luong + Stack Bahdanau Luong Attention + Beam Decoder
- Bytenet
- Capsule layers + LSTM Seq2Seq-API + Luong Attention + Beam Decoder
- End-to-End Memory Network
- Attention is All you need
- Transformer-XL + LSTM
- GPT-2 + LSTM
- Tacotron + Beam decoder
Complete list (54 notebooks)
- Basic cell Seq2Seq-manual
- LSTM Seq2Seq-manual
- GRU Seq2Seq-manual
- Basic cell Seq2Seq-API Greedy
- LSTM Seq2Seq-API Greedy
- GRU Seq2Seq-API Greedy
- Basic cell Bidirectional Seq2Seq-manual
- LSTM Bidirectional Seq2Seq-manual
- GRU Bidirectional Seq2Seq-manual
- Basic cell Bidirectional Seq2Seq-API Greedy
- LSTM Bidirectional Seq2Seq-API Greedy
- GRU Bidirectional Seq2Seq-API Greedy
- Basic cell Seq2Seq-manual + Luong Attention
- LSTM Seq2Seq-manual + Luong Attention
- GRU Seq2Seq-manual + Luong Attention
- Basic cell Seq2Seq-manual + Bahdanau Attention
- LSTM Seq2Seq-manual + Bahdanau Attention
- GRU Seq2Seq-manual + Bahdanau Attention
- LSTM Bidirectional Seq2Seq-manual + Luong Attention
- GRU Bidirectional Seq2Seq-manual + Luong Attention
- LSTM Bidirectional Seq2Seq-manual + Bahdanau Attention
- GRU Bidirectional Seq2Seq-manual + Bahdanau Attention
- LSTM Bidirectional Seq2Seq-manual + backward Bahdanau + forward Luong
- GRU Bidirectional Seq2Seq-manual + backward Bahdanau + forward Luong
- LSTM Seq2Seq-API Greedy + Luong Attention
- GRU Seq2Seq-API Greedy + Luong Attention
- LSTM Seq2Seq-API Greedy + Bahdanau Attention
- GRU Seq2Seq-API Greedy + Bahdanau Attention
- LSTM Seq2Seq-API Beam Decoder
- GRU Seq2Seq-API Beam Decoder
- LSTM Bidirectional Seq2Seq-API + Luong Attention + Beam Decoder
- GRU Bidirectional Seq2Seq-API + Luong Attention + Beam Decoder
- LSTM Bidirectional Seq2Seq-API + backward Bahdanau + forward Luong + Stack Bahdanau Luong Attention + Beam Decoder
- GRU Bidirectional Seq2Seq-API + backward Bahdanau + forward Luong + Stack Bahdanau Luong Attention + Beam Decoder
- Bytenet
- LSTM Seq2Seq + tf.estimator
- Capsule layers + LSTM Seq2Seq-API Greedy
- Capsule layers + LSTM Seq2Seq-API + Luong Attention + Beam Decoder
- LSTM Bidirectional Seq2Seq-API + backward Bahdanau + forward Luong + Stack Bahdanau Luong Attention + Beam Decoder + Dropout + L2
- DNC Seq2Seq
- LSTM Bidirectional Seq2Seq-API + Luong Monotic Attention + Beam Decoder
- LSTM Bidirectional Seq2Seq-API + Bahdanau Monotic Attention + Beam Decoder
- End-to-End Memory Network + Basic cell
- End-to-End Memory Network + LSTM cell
- Attention is all you need
- Transformer-XL
- Attention is all you need + Beam Search
- Transformer-XL + LSTM
- GPT-2 + LSTM
- CNN Seq2seq
- Conv-Encoder + LSTM
- Tacotron + Greedy decoder
- Tacotron + Beam decoder
- Google NMT
Trained on 500 English-Vietnam, accuracy table in neural-machine-translation.
- Seq2Seq-manual
- Seq2Seq-API Greedy
- Bidirectional Seq2Seq-manual
- Bidirectional Seq2Seq-API Greedy
- Bidirectional Seq2Seq-manual + backward Bahdanau + forward Luong
- Bidirectional Seq2Seq-API + backward Bahdanau + forward Luong + Stack Bahdanau Luong Attention + Beam Decoder
- Bytenet
- Capsule layers + LSTM Seq2Seq-API + Luong Attention + Beam Decoder
- End-to-End Memory Network
- Attention is All you need
- BERT + Dilated CNN Seq2seq
Complete list (55 notebooks)
- Basic cell Seq2Seq-manual
- LSTM Seq2Seq-manual
- GRU Seq2Seq-manual
- Basic cell Seq2Seq-API Greedy
- LSTM Seq2Seq-API Greedy
- GRU Seq2Seq-API Greedy
- Basic cell Bidirectional Seq2Seq-manual
- LSTM Bidirectional Seq2Seq-manual
- GRU Bidirectional Seq2Seq-manual
- Basic cell Bidirectional Seq2Seq-API Greedy
- LSTM Bidirectional Seq2Seq-API Greedy
- GRU Bidirectional Seq2Seq-API Greedy
- Basic cell Seq2Seq-manual + Luong Attention
- LSTM Seq2Seq-manual + Luong Attention
- GRU Seq2Seq-manual + Luong Attention
- Basic cell Seq2Seq-manual + Bahdanau Attention
- LSTM Seq2Seq-manual + Bahdanau Attention
- GRU Seq2Seq-manual + Bahdanau Attention
- LSTM Bidirectional Seq2Seq-manual + Luong Attention
- GRU Bidirectional Seq2Seq-manual + Luong Attention
- LSTM Bidirectional Seq2Seq-manual + Bahdanau Attention
- GRU Bidirectional Seq2Seq-manual + Bahdanau Attention
- LSTM Bidirectional Seq2Seq-manual + backward Bahdanau + forward Luong
- GRU Bidirectional Seq2Seq-manual + backward Bahdanau + forward Luong
- LSTM Seq2Seq-API Greedy + Luong Attention
- GRU Seq2Seq-API Greedy + Luong Attention
- LSTM Seq2Seq-API Greedy + Bahdanau Attention
- GRU Seq2Seq-API Greedy + Bahdanau Attention
- LSTM Seq2Seq-API Beam Decoder
- GRU Seq2Seq-API Beam Decoder
- LSTM Bidirectional Seq2Seq-API + Luong Attention + Beam Decoder
- GRU Bidirectional Seq2Seq-API + Luong Attention + Beam Decoder
- LSTM Bidirectional Seq2Seq-API + backward Bahdanau + forward Luong + Stack Bahdanau Luong Attention + Beam Decoder
- GRU Bidirectional Seq2Seq-API + backward Bahdanau + forward Luong + Stack Bahdanau Luong Attention + Beam Decoder
- Bytenet
- LSTM Seq2Seq + tf.estimator
- Capsule layers + LSTM Seq2Seq-API Greedy
- Capsule layers + LSTM Seq2Seq-API + Luong Attention + Beam Decoder
- LSTM Bidirectional Seq2Seq-API + backward Bahdanau + forward Luong + Stack Bahdanau Luong Attention + Beam Decoder + Dropout + L2
- DNC Seq2Seq
- LSTM Bidirectional Seq2Seq-API + Luong Monotic Attention + Beam Decoder
- LSTM Bidirectional Seq2Seq-API + Bahdanau Monotic Attention + Beam Decoder
- End-to-End Memory Network + Basic cell
- End-to-End Memory Network + LSTM cell
- Attention is all you need
- Transformer-XL
- Attention is all you need + Beam Search
- CNN Seq2seq
- Conv-Encoder + LSTM
- Bytenet Greedy
- Residual GRU Bidirectional Seq2Seq-API Greedy
- Google NMT
- Dilated Seq2Seq
- BERT Encoder + LSTM Luong Decoder
- BERT Encoder + Dilated CNN Seq2seq
Trained on English sentiment dataset.
- Word Vector using CBOW sample softmax
- Word Vector using CBOW noise contrastive estimation
- Word Vector using skipgram sample softmax
- Word Vector using skipgram noise contrastive estimation
- Lda2Vec Tensorflow
- Supervised Embedded
- Triplet-loss + LSTM
- LSTM Auto-Encoder
- Batch-All Triplet-loss LSTM
- Fast-text
- ELMO (biLM)
- Triplet-loss + BERT
Trained on CONLL POS.
- Bidirectional RNN + CRF, test accuracy 92%
- Bidirectional RNN + Luong Attention + CRF, test accuracy 91%
- Bidirectional RNN + Bahdanau Attention + CRF, test accuracy 91%
- Char Ngrams + Bidirectional RNN + Bahdanau Attention + CRF, test accuracy 91%
- Char Ngrams + Bidirectional RNN + Bahdanau Attention + CRF, test accuracy 91%
- Char Ngrams + Residual Network + Bahdanau Attention + CRF, test accuracy 3%
- Char Ngrams + Attention is you all Need + CRF, test accuracy 89%
- BERT, test accuracy 99%
Trained on CONLL NER.
- Bidirectional RNN + CRF, test accuracy 96%
- Bidirectional RNN + Luong Attention + CRF, test accuracy 93%
- Bidirectional RNN + Bahdanau Attention + CRF, test accuracy 95%
- Char Ngrams + Bidirectional RNN + Bahdanau Attention + CRF, test accuracy 96%
- Char Ngrams + Bidirectional RNN + Bahdanau Attention + CRF, test accuracy 96%
- Char Ngrams + Residual Network + Bahdanau Attention + CRF, test accuracy 69%
- Char Ngrams + Attention is you all Need + CRF, test accuracy 90%
- BERT, test accuracy 99%
Trained on CONLL English Dependency.
- Bidirectional RNN + Bahdanau Attention + CRF
- Bidirectional RNN + Luong Attention + CRF
- Residual Network + Bahdanau Attention + CRF
- Residual Network + Bahdanau Attention + Char Embedded + CRF
- Attention is all you need + CRF
Trained on SQUAD Dataset.
- BERT,
{"exact_match": 77.57805108798486, "f1": 86.18327335287402}
Trained on bAbI Dataset.
- End-to-End Memory Network + Basic cell
- End-to-End Memory Network + GRU cell
- End-to-End Memory Network + LSTM cell
- Dynamic Memory
Trained on English Lemmatization.
- LSTM + Seq2Seq + Beam
- GRU + Seq2Seq + Beam
- LSTM + BiRNN + Seq2Seq + Beam
- GRU + BiRNN + Seq2Seq + Beam
- DNC + Seq2Seq + Greedy
- BiRNN + Bahdanau + Copynet
Trained on India news.
Accuracy based on 10 epochs only, calculated using word positions.
- LSTM Seq2Seq using topic modelling, test accuracy 13.22%
- LSTM Seq2Seq + Luong Attention using topic modelling, test accuracy 12.39%
- LSTM Seq2Seq + Beam Decoder using topic modelling, test accuracy 10.67%
- LSTM Bidirectional + Luong Attention + Beam Decoder using topic modelling, test accuracy 8.29%
- Pointer-Generator + Bahdanau, https://github.com/xueyouluo/my_seq2seq, test accuracy 15.51%
- Copynet, test accuracy 11.15%
- Pointer-Generator + Luong, https://github.com/xueyouluo/my_seq2seq, test accuracy 16.51%
- Dilated Seq2Seq, test accuracy 10.88%
- Dilated Seq2Seq + Self Attention, test accuracy 11.54%
- BERT + Dilated CNN Seq2seq, test accuracy 13.5%
- self-attention + Pointer-Generator, test accuracy 4.34%
- Dilated-CNN Seq2seq + Pointer-Generator, test accuracy 5.57%
Trained on random books.
- Skip-thought Vector
- Residual Network using Atrous CNN
- Residual Network using Atrous CNN + Bahdanau Attention
- CNN + LSTM RNN
Trained on Cornell Movie--Dialogs Corpus
- BERT
Trained on Toronto speech dataset.
- Tacotron, https://github.com/Kyubyong/tacotron_asr
- Bidirectional RNN + Greedy CTC
- Bidirectional RNN + Beam CTC
- Seq2Seq + Bahdanau Attention + Beam CTC
- Seq2Seq + Luong Attention + Beam CTC
- Bidirectional RNN + Attention + Beam CTC
- Wavenet
- CNN encoder + RNN decoder + Bahdanau Attention
- CNN encoder + RNN decoder + Luong Attention
- Dilation CNN + GRU Bidirectional
- Deep speech 2
- Pyramid Dilated CNN
Trained on Toronto speech dataset.
- Tacotron, https://github.com/Kyubyong/tacotron
- CNN Seq2seq + Dilated CNN vocoder
- Seq2Seq + Bahdanau Attention
- Seq2Seq + Luong Attention
- Dilated CNN + Monothonic Attention + Dilated CNN vocoder
- Dilated CNN + Self Attention + Dilated CNN vocoder
- Deep CNN + Monothonic Attention + Dilated CNN vocoder
- Deep CNN + Self Attention + Dilated CNN vocoder
Trained on Toronto speech dataset.
- Dilated CNN
Trained on Shakespeare dataset.
- Character-wise RNN + LSTM
- Character-wise RNN + Beam search
- Character-wise RNN + LSTM + Embedding
- Word-wise RNN + LSTM
- Word-wise RNN + LSTM + Embedding
- Character-wise + Seq2Seq + GRU
- Word-wise + Seq2Seq + GRU
- Character-wise RNN + LSTM + Bahdanau Attention
- Character-wise RNN + LSTM + Luong Attention
- Word-wise + Seq2Seq + GRU + Beam
- Character-wise + Seq2Seq + GRU + Bahdanau Attention
- Word-wise + Seq2Seq + GRU + Bahdanau Attention
- Character-wise Dilated CNN + Beam search
- Transformer + Beam search
- Transformer XL + Beam search
Trained on Malaysia news.
- TAT-LSTM
- TAV-LSTM
- MTA-LSTM
- Dilated CNN Seq2seq
Trained on Tatoeba dataset.
- Fast-text Char N-Grams
Trained on First Quora Dataset Release: Question Pairs.
- BiRNN + Contrastive loss, test accuracy 76.50%
- Dilated CNN + Contrastive loss, test accuracy 72.98%
- Transformer + Contrastive loss, test accuracy 73.48%
- Dilated CNN + Cross entropy, test accuracy 72.27%
- Transformer + Cross entropy, test accuracy 71.1%
- Transfer learning BERT base + Cross entropy, test accuracy 90%
- Pretrained Glove
- GRU VAE-seq2seq-beam TF-probability
- LSTM VAE-seq2seq-beam TF-probability
- GRU VAE-seq2seq-beam + Bahdanau Attention TF-probability
- VAE + Deterministic Bahdanau Attention, https://github.com/HareeshBahuleyan/tf-var-attention
- VAE + VAE Bahdanau Attention, https://github.com/HareeshBahuleyan/tf-var-attention
- Bahdanau
- Luong
- Hierarchical
- Additive
- Soft
- Attention-over-Attention
- Bahdanau API
- Luong API
- Attention heatmap on Bahdanau Attention
- Attention heatmap on Luong Attention
- BERT attention, https://github.com/hsm207/bert_attn_viz
- XLNET attention
- Topic Modeling using BERT
- Markov chatbot
- Decomposition summarization (3 notebooks)