BiDAF with Dependency Parse Tree for Question Answering in SQUAD 2
One of the key areas of interest in Natural Language Processing is building systems capable of answering questions in our native language. The task is called Question Answering (QA) and is the focus of this paper where we explore our idea to enhance an existing solution called BiDAF (Seo et al, 2016). Our intuition is that language understanding involves at least two broad capabilities. First one has to understand what words individually mean. And second, based on the structure of the sentences one has to make sense of the complete sentence. Individual word are usually represented by word embeddings in most solutions. But the second piece is where different approaches diverge greatly. To address this part, we were interested to see, if syntactic information can help. Specifically, we explored the idea of using dependency parse trees (DPT) to enrich the embedding of individual words. DPT provides a representation of syntactic relationships between words in a sentence. We defined the relationship between words as the path between them in the dependency tree. We hypothesized that even though grammatical structure doesn't enable a system to do a lot of things such as reasoning, the best a model could do with a limited dataset is to learn the patterns between syntax of questions with that of the answer phrases. This inspired us to augment the input word embeddings to the model with dependency parse tree based information. Our model not only scored significantly higher (+7% on F1 & EM) compared to the baseline, it also learned almost twice as fast even with the extra preprocessing time. DPTs are produced by deep learning model, so end to end there is in no manual feature engineering. We find this idea particularly interesting as it could be potentially added to other QA models with minimal adaptation.