All Projects → thomasfermi → Dynamic-Coattention-Network-for-SQuAD

thomasfermi / Dynamic-Coattention-Network-for-SQuAD

Licence: other
Tensorflow implementation of DCN for question answering on the Stanford Question Answering Dataset (SQuAD)

Programming Languages

Jupyter Notebook
11667 projects
python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Dynamic-Coattention-Network-for-SQuAD

Question-Answering-System
A factoid based question answering system | Python | Flask | NLP
Stars: ✭ 0 (-100%)
Mutual labels:  question-answering
golang-interview-questions
golang 面试集锦
Stars: ✭ 42 (+200%)
Mutual labels:  question-answering
GrailQA
No description or website provided.
Stars: ✭ 72 (+414.29%)
Mutual labels:  question-answering
COVID19-IRQA
No description or website provided.
Stars: ✭ 32 (+128.57%)
Mutual labels:  question-answering
exams-qa
A Multi-subject High School Examinations Dataset for Cross-lingual and Multilingual Question Answering
Stars: ✭ 25 (+78.57%)
Mutual labels:  question-answering
HAR
Code for WWW2019 paper "A Hierarchical Attention Retrieval Model for Healthcare Question Answering"
Stars: ✭ 22 (+57.14%)
Mutual labels:  question-answering
Front-end-Job-Interview-Questions
Ответы на вопросы на должность Frontend разработчика.
Stars: ✭ 236 (+1585.71%)
Mutual labels:  question-answering
Question-Answering-based-on-SQuAD
Question Answering System using BiDAF Model on SQuAD v2.0
Stars: ✭ 20 (+42.86%)
Mutual labels:  question-answering
NS-CQA
NS-CQA: the model of the JWS paper 'Less is More: Data-Efficient Complex Question Answering over Knowledge Bases.' This work has been accepted by JWS 2020.
Stars: ✭ 19 (+35.71%)
Mutual labels:  question-answering
backprop
Backprop makes it simple to use, finetune, and deploy state-of-the-art ML models.
Stars: ✭ 229 (+1535.71%)
Mutual labels:  question-answering
ProQA
Progressively Pretrained Dense Corpus Index for Open-Domain QA and Information Retrieval
Stars: ✭ 44 (+214.29%)
Mutual labels:  question-answering
TriB-QA
吹逼我们是认真的
Stars: ✭ 45 (+221.43%)
Mutual labels:  question-answering
hf-experiments
Experiments with Hugging Face 🔬 🤗
Stars: ✭ 37 (+164.29%)
Mutual labels:  question-answering
CONVEX
As far as we know, CONVEX is the first unsupervised method for conversational question answering over knowledge graphs. A demo and our benchmark (and more) can be found at
Stars: ✭ 24 (+71.43%)
Mutual labels:  question-answering
KitanaQA
KitanaQA: Adversarial training and data augmentation for neural question-answering models
Stars: ✭ 58 (+314.29%)
Mutual labels:  question-answering
lets-quiz
A quiz website for organizing online quizzes and tests. It's build using Python/Django and Bootstrap4 frameworks. 🤖
Stars: ✭ 165 (+1078.57%)
Mutual labels:  question-answering
FlowQA
Implementation of conversational QA model: FlowQA (with slight improvement)
Stars: ✭ 197 (+1307.14%)
Mutual labels:  question-answering
Instahelp
Instahelp is a Q&A portal website similar to Quora
Stars: ✭ 21 (+50%)
Mutual labels:  question-answering
pair2vec
pair2vec: Compositional Word-Pair Embeddings for Cross-Sentence Inference
Stars: ✭ 62 (+342.86%)
Mutual labels:  question-answering
django-simple-forum
full featured forum, easy to integrate and use.
Stars: ✭ 65 (+364.29%)
Mutual labels:  question-answering

This is my tensorflow implementation of the Dynamic Coattention Network applied to question answering for the SQuAD database (tested with tensorflow version 1.1 and 1.2). The network gets a Wikipedia article and a question as inputs and should predict a segment (or span) of the article that answers the question.

The data in the data/squad folder was downloaded and preprocessed via the starter code from assignment 4 of the Stanford Course CS224n: Natural Language Processing with Deep Learning.

If you just want to have a look at the DCN implementation check out DCN_model.py, it is only around 200 lines long.

To implement the model I had to explore some tensorflow functions like tf.gather_nd and tf.map_fn. I did my experiments with these functions on toy data in this notebook in the Experimentation_Notebooks folder.

The best result so far is 48% EM (exact match) and 64% F1 score on the validation set. Training was started via

python code/train.py --rnn_state_size=150

Note:

  • You will need the tqdm package to run the code
  • Right now the project is on ice, due to the high costs for training on AWS instances. I might continue the project once I get a proper graphics card.

TODO:

  • The hyperparameter search is not finished (e.g.: How much can using 300 dimensional word vectors improve performance compared to 100 dimensional word vectors?)
  • Check influence of LSTM vs GRU
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].