Intro to Deep Learning for Question Answering

Traian Rebedea
Traian RebedeaLecturer at Politehnica University of Bucharest
Intro to Deep Learning for
Question Answering
Traian Rebedea, Ph.D.
Department of Computer Science, UPB
traian.rebedea@cs.pub.ro / trebedea@gmail.com
About Me
• The Academic Part:
• Education
• B.Sc., “Politehnica” University of Bucharest, CS Dept., Romania
• M.Sc., “Politehnica” University of Bucharest, CS Dept., Romania
• Ph.D., Natural Language Processing & Technology-Enhanced Learning,
“Politehnica” University of Bucharest, CS Dept., Romania
• Over 25 articles published at world-wide top conferences:
• http://www.informatik.uni-trier.de/~ley/db/indices/a-
tree/r/Rebedea:Traian.html
• 4 book chapters on NLP & Technology Enhanced Learning
• Jobs:
• Lecturer, “Politehnica” University of Bucharest, CS Dept., Romania
• Teaching Assistant, “Politehnica” University of Bucharest, CS Dept.,
Romania
Intro to Deep Learning for Question Answering 230 January 2017
About Me
• The Industrial Part
• Jobs
• PeopleGraph, Bucharest, Romania – Researcher, Natural Language Processing, Machine
Learning & Information Retrieval
• TeamNet, Bucharest, Romania – Research Consultant, Opinion Mining & Natural
Language Processing
• Create IT, Bucharest, Romania – Founder & Web Developer
• ProSoft Solutions, Bucharest, Romania – Java Developer
• Various collaborations with other companies: Bitdefender, Adobe, Treeworks,
UberVU
• Other
• Tutor for the Erasmus-Mundus DMKM Information Retrieval course (taught by
Ricard Gavalda from UPC)
3Intro to Deep Learning for Question Answering30 January 2017
Overview
• Why question answering (QA)?
• Previous work in QA (before deep learning)
• Deep learning for QA (intro)
• Simple CNN
• Dependency tree – RNN
• LSTM-based solution
Intro to Deep Learning for Question Answering 430 January 2017
Why Question Answering?
• QA systems have been around for quite some time
• In the 60s-80s, mostly domain-dependent QA
• Quite related to conversational agents, at least at the beginning
• Open domain QA systems received larger attention in the 90s
• Combination of NLP and IR/IE techniques
• One of the most famous: MIT START system (http://start.csail.mit.edu/index.php)
• Wolfram Alpha (https://www.wolframalpha.com/)
• Advanced systems use a combination of “shallow” methods together with
knowledge bases and more complex NLP methods
Intro to Deep Learning for Question Answering 530 January 2017
Why Question Answering?
• In the last 20 years, TREC and ACL provided workshops and tracks for
various flavor of QA tasks (closed and open-domain)
• Lately, a large number of new datasets and tasks have become available
which have improved the performance of (open-domain) QA systems
• QALD: Question-Answering for Linked Data
(http://qald.sebastianwalter.org/)
• Given a knowledge base and a question in natural language, extract the correct
answers from the knowledge base
• Small corpus: each year ~ 100 Q-A pairs for training and 100 for evaluation, 6 years
=> ~ 600 Q-A pairs for training and 600 for evaluation
• Allen AI Question Answering (http://allenai.org/data.html)
• (Open-domain) QA task which contains questions asked to primary/secondary
students in different topics (science, maths, etc.)
• Several datasets ~ 400-1000 Q-A pairs
Intro to Deep Learning for Question Answering 630 January 2017
Why Question Answering?
• SQuAD - Stanford QA Dataset (https://rajpurkar.github.io/SQuAD-explorer/)
• Open-domain answer sentence selection
• 100,000+ Q-A pairs on 500+ articles
• VisualQA (http://www.visualqa.org/)
• Given an image and a question in natural language, provide the correct answer (open-
domain)
• 600,000+ questions on more than 200,000 images
• MovieQA (http://movieqa.cs.toronto.edu/home/)
• Given a movie and a question in natural language, provide the correct answer (open-domain)
• almost 15,000 multiple choice question answers obtained from over 400 movies
• Several others
• Right now we are building a dataset similar to QALD, however it is aimed at
answering questions from databases
Intro to Deep Learning for Question Answering 730 January 2017
Previous work in Question Answering
• Before deep-learning / non deep-learning
• Use NLP techniques to find best match between question and candidate
answers: feature engineering or use expensive semantic resources
• Lexical / IR: similarity measures (cosine + tf/idf, stemming, lemmatization, BM25,
other retrieval models)
• Semantic: use non-neural word emdeddings (e.g. Latent Semantic Analysis - LSA), use
additional resources (linguistic ontologies – WordNet, other databases, thesauri,
ontologies – Freebase, DBpedia)
• Syntactic: compute constituency/dependency trees of question and answer – try to
align/match the two trees
• Mixed/other: string kernels, tree kernels, aligh/match based both on syntax and
semantics, classifiers using a mix of several features discussed until now
Intro to Deep Learning for Question Answering 830 January 2017
Discussed Question Answering Tasks
• Answer sentence selection
• Given a question
• Several possible sentences that also contain the answer (and anything else)
• Find the ones containing the answer
• Usually the sentences (answers) are longer than the questions
Q: When did Amtrak begin operations?
A: Amtrak has not turned a profit since it was founded in 1971.
• Factoid question answering (“quiz-bowl”)
• Given a longer description of the factoid answer
(usually an entity, event, etc.) - question
• Find the entity as “fast” as possible - answer
(using as few information/sentences/words
as possible from the description)
• Question is longer than answer
Q: A:
Holy Roman Empire
Intro to Deep Learning for Question Answering 930 January 2017
Deep learning for QA (intro)
• Simple CNN
• Yu, Lei, Karl Moritz Hermann, Phil Blunsom, and Stephen Pulman. "Deep learning for
answer sentence selection." arXiv preprint arXiv:1412.1632 (2014) (Oxford U. &
Google DeepMind)
• Extension (good study): Feng, Minwei, Bing Xiang, Michael R. Glass, Lidan Wang, and
Bowen Zhou. "Applying deep learning to answer selection: A study and an open
task." In Automatic Speech Recognition and Understanding (ASRU), 2015 IEEE
Workshop on, pp. 813-820. IEEE, 2015 (IBM Watson)
• Dependency tree – RNN
• Iyyer, Mohit, Jordan L. Boyd-Graber, Leonardo Max Batista Claudino, Richard Socher,
and Hal Daumé III. "A Neural Network for Factoid Question Answering over
Paragraphs." In EMNLP, pp. 633-644. 2014 (Maryland & Colorado & Stanford U.)
• LSTM-based solution
• Tan, Ming, Bing Xiang, and Bowen Zhou. "LSTM-based Deep Learning Models for
non-factoid answer selection." arXiv preprint arXiv:1511.04108 (2015) (IBM Watson)
Intro to Deep Learning for Question Answering 1030 January 2017
Simple CNN for Answer Sentence Selection
• (qi, aij, yij)
• Binary classification problem
• qi – question
• aij – candidate sentences
• yij = 1 if aij contains the answer to question qi
0 o.w.
• Assumption: correct answers have high semantic similarity to
questions
• No (actually few) hand-crafted features
• Focus on modeling questions and answers as vectors, and evaluate
the relatedness of each QA pair in a shared vector space
Intro to Deep Learning for Question Answering 1130 January 2017
Simple CNN for Answer Sentence Selection
• Given the QA pair is modelled in the same d-dimensional vector
space, the probability of the answer being correct is:
• Intuition: transform the answer into the question-space q’ = M a,
then use dot-product to assess the similarity between q and q’
• Finally, the sigmoid function transforms the generated scores (dot-
products are not normalized!) to a probability (number between 0..1)
• Training by minimizing cross-entropy on training/labelled set
Intro to Deep Learning for Question Answering 1230 January 2017
Simple CNN for Answer Sentence Selection
• Bag-of-words model (simplest model, just embedddings, no NN here)
• Uses word embeddings for the vector space
• Then averages over all the words in the text (question or answer)
Intro to Deep Learning for Question Answering 1330 January 2017
Simple CNN for Answer Sentence Selection
• Bigram model
• Uses a simple CNN (Convolutional NN)
• Sensitive to word order
• Can capture information from n-grams
• Authors only use bigrams (adjacent words), but can be extended
• Use a single convolutional layer + average (sum) pooling layer
• Convolution vector (filter) is shared by all bigrams
Intro to Deep Learning for Question Answering 1430 January 2017
Simple CNN for Answer Sentence Selection
• Convolutional filter combines adjacent words (bigrams)
• Then average pooling combines all bigram features
• In practice, we just need to learn how
to combine the embedding of the words
in the bigram
Intro to Deep Learning for Question Answering 1530 January 2017
Simple CNN for Answer Sentence Selection
• Experiments on Text Retrieval Conference (TREC) QA track (8-13)
datasets, with candidate answers automatically selected from each
question’s document pool
• Task: rank candidate answers given question (IR specific task)
• Assess using Mean Average Precision (MAP) and Mean Reciprocal
Rank (MRR)
Intro to Deep Learning for Question Answering 1630 January 2017
What is MAP & MRR?
• IR metrics, more details here: https://web.stanford.edu/class/cs276/handouts/EvaluationNew-
handout-6-per.pdf OR any IR Book
Intro to Deep Learning for Question Answering 1730 January 2017
Simple CNN for Answer Sentence Selection
• Experimental results
• Used precomputed word embeddings (d=50) – details in paper, embeddings available online
• Embeddings could be improved for this task, but dataset is small
• Other weights randomly intitialised using a Gaussian distribution
• All hyperparameters were optimised via grid search
• AdaGrad for training
• And also added some hand-crafted features (there is a justification in paper, not very convincing):
• word co-occurrence count between Q & A
• word co-occurrence count weighted by IDF between Q & A
• Together with the QA matching probability as provided by the distributional model (CNN) used to
train a logistic regression classifier
Intro to Deep Learning for Question Answering 1830 January 2017
Simple CNN for Answer Sentence Selection
• Results were encouraging
• Co-occurance features are important
• Distributional model can assess semantics
Intro to Deep Learning for Question Answering 1930 January 2017
Dependency Tree – RNN
• Solution proposed for factoid “bowl quiz” QA
• Use a dependency tree recursive neural network (DT-RNN)
• Extend it to combine predictions across sentences to produce a
question answering neural network with trans-sentential averaging
(called QANTA)
Intro to Deep Learning for Question Answering 2030 January 2017
Dependency Tree – RNN
• Dependency trees are used to model syntax in NLP
• Two main types of (syntactic) parse trees: constituency and
dependency
• Dependencies are actually directed edges between words
Intro to Deep Learning for Question Answering 2130 January 2017
Dependency Tree – RNN
• DT-RNN is just briefly explained in the paper
• More details are available in another paper:
http://nlp.stanford.edu/~socherr/SocherKarpathyLeManningNg_TACL2013.pdf
• Key elements: original word embeddings, hidden representation for words (of the
same size as the original embeddings), one transformation for each dependency
type in the hidden space
For leaf nodes
For inner nodes
Intro to Deep Learning for Question Answering 2230 January 2017
Dependency Tree – RNN
• Example
Simpler formula
for inner nodes
Intro to Deep Learning for Question Answering 2330 January 2017
Dependency Tree – RNN
• Training: limit the number of possible answers => problem viewed as a multi-class
classication task
• Softmax can be used for the decision in the final layer by using features from question
and answer
• Improvement: word vectors associated with answers to be trained in the same vector
space as the question text
• Train both the answers and questions jointly in a single model
• Encourage vectors of question sentences to be near their correct answers and far away
from incorrect answers
• => Can use hinge loss
• => “While we are not interested in obtaining a ranked list of answers, we observe better
performance by adding the weighted approximaterank pairwise (WARP) loss”
Intro to Deep Learning for Question Answering 2430 January 2017
Dependency Tree – RNN
• Correct answer c
• Sample randomly j incorrect answers from the set of all incorrect answers
and denote this subset as Z
• S – set of all nods in a dependency tree
• Cost / lost function is WARP – a variation of hinge loss
• More details how to approximate L(rank(c, s, Z)) in section 3.2
• Training using backpropagation through structure
Intro to Deep Learning for Question Answering 2530 January 2017
Dependency Tree – RNN
• QANTA: Previous model + average the representations of each sentence seen so far in a
particular question
• This was the best aggregation found by the authors
• Datasets:
• History questions: training set of 3,761 questions with 14,217 sentences and a test set of 699
questions with 2,768 sentences
• Literature questions: training set of 4,777 questions with 17,972 sentences and a test set of 908
questions with 3,577 sentences
• 451 history answers and 595 literature answers that occur on average twelve times in the corpus
• Word embeddings (We): word2vec trained on the preprocessed question text in our
training set, then optimized in the current model
• Embedding size: 100, num incorrect sampled answers: 100
Intro to Deep Learning for Question Answering 2630 January 2017
Dependency Tree – RNN
• Results on test sets
• Several baselines, including comparison with all the text in Wikipedia page for the
answer
• Also comparison with human players, after the first sentence in the question
Intro to Deep Learning for Question Answering 2730 January 2017
Dependency Tree – RNN
Intro to Deep Learning for Question Answering 2830 January 2017
LSTM Solution for Question Answering
• Work on sentence answer selection
• Use a sequence NN model to model the representation of Q&A
• LSTM is the obvious choice
Intro to Deep Learning for Question Answering 2930 January 2017
LSTM Solution for Question Answering
• Use a bidirectional LSTM (BiLSTM)
• Both the previous and future context by processing the sequence on two
directions
• Generate two independent sequences of LSTM output vectors
• One processes the input sequence forward, and one backward
• The input sequence contains the word embeddings for the analyzed
text (Q&A)
• Output at each step contains the concatenation of the output vectors
for both directions
Intro to Deep Learning for Question Answering 3030 January 2017
LSTM Solution for Question Answering
• Basic QA-LSTM model
• Compute BiLSTM representation for Q&A, then use a pooling method and cosine similarity for
comparison
• Dropout on the last layer, before cosine
• Hinge loss for training
Intro to Deep Learning for Question Answering 3130 January 2017
LSTM Solution for Question Answering
• Best model when Q & A sides share the same network parameters
• Significantly better than the one that the question and answer sides
own their own parameters
• Converges much faster
Intro to Deep Learning for Question Answering 3230 January 2017
LSTM Solution for Question Answering
• First improvement: QA-LSTM/CNN
• Put a CNN on top of the outputs of the BiLSTM
• Filter size m, output of the CNN for one filter is:
Intro to Deep Learning for Question Answering 3330 January 2017
LSTM Solution for Question Answering
• “The intuition of this structure is, instead of evenly considering the
lexical information of each token as the previous subsection, we
emphasize on certain parts of the answer, such that QA-LSTM/CNN
can more effectively differentiate the ground truths and incorrect
answers.”
Intro to Deep Learning for Question Answering 3430 January 2017
LSTM Solution for Question Answering
• Second improvement: Attention-based QA-LSTM
• “The fixed width of hidden vectors becomes a bottleneck, when the
bidirectional LSTM models must propagate dependencies over long
distances over the questions and answers.
• An attention mechanism is used to alleviate this weakness by dynamically
aligning the more informative parts of answers to the questions.”
• Simple attention mechanism over the basic QA-LSTM model
• Prior to pooling, each biLSTM output vector for the answer will be
multiplied by a softmax weight, which is determined by the question
embedding from biLSTM
Intro to Deep Learning for Question Answering 3530 January 2017
LSTM Solution for Question Answering
• Conceptually, the attention mechanism gives more weight on certain
words, just like tf-idf for each word
• But it computes the weights according to question information
Intro to Deep Learning for Question Answering 3630 January 2017
LSTM Solution for Question Answering
• Experiment 1: InsuranceQA
• Grid search for hyper-parameter tuning
• Word embedding is initialized using word2vec, size 100. They are
further optimized as well during the training
• LSTM output vectors is 141 for one direction
• Also tried various norms
• SGD training
Intro to Deep Learning for Question Answering 3730 January 2017
LSTM Solution for Question Answering
• QA-LSTM compared against several baselines
• Metric is accuracy
Intro to Deep Learning for Question Answering 3830 January 2017
LSTM Solution for Question Answering
• Models’ performance by ground answer length
Intro to Deep Learning for Question Answering 3930 January 2017
LSTM Solution for Question Answering
• TREC-QA results
Intro to Deep Learning for Question Answering 4030 January 2017
CNN for QA – extended study
• Feng, Minwei, Bing Xiang, Michael R. Glass, Lidan Wang, and Bowen Zhou. "Applying deep
learning to answer selection: A study and an open task." In Automatic Speech Recognition and
Understanding (ASRU), 2015 IEEE Workshop on, pp. 813-820. IEEE, 2015 – online here:
https://arxiv.org/pdf/1508.01585.pdf
• Proposes several CNN architectures for QA
Intro to Deep Learning for Question Answering 4130 January 2017
• [1] Yu, Lei, Karl Moritz Hermann, Phil Blunsom, and Stephen Pulman. "Deep learning for
answer sentence selection." arXiv preprint arXiv:1412.1632 (2014).- online
here: https://arxiv.org/pdf/1412.1632.pdf
• [2] - Iyyer, Mohit, Jordan L. Boyd-Graber, Leonardo Max Batista Claudino, Richard Socher,
and Hal Daumé III. "A Neural Network for Factoid Question Answering over Paragraphs."
In EMNLP, pp. 633-644. 2014 - online
here: https://cs.umd.edu/~miyyer/pubs/2014_qb_rnn.pdf
• [3] - Tan, Ming, Bing Xiang, and Bowen Zhou. "LSTM-based Deep Learning Models for
non-factoid answer selection." arXiv preprint arXiv:1511.04108 (2015) - online
here: https://arxiv.org/pdf/1511.04108v4.pdf
• [4] - Feng, Minwei, Bing Xiang, Michael R. Glass, Lidan Wang, and Bowen Zhou. "Applying
deep learning to answer selection: A study and an open task." In Automatic Speech
Recognition and Understanding (ASRU), 2015 IEEE Workshop on, pp. 813-820. IEEE, 2015
– online here: https://arxiv.org/pdf/1508.01585.pdf
References
Intro to Deep Learning for Question Answering 4230 January 2017
Thank you!
traian.rebedea@cs.pub.ro
Intro to Deep Learning for Question Answering
_____
_____
4330 January 2017
1 of 43

More Related Content

What's hot(20)

Similar to Intro to Deep Learning for Question Answering(20)

Relation-wise Automatic Domain-Range Information Management for Knowledge Ent...Relation-wise Automatic Domain-Range Information Management for Knowledge Ent...
Relation-wise Automatic Domain-Range Information Management for Knowledge Ent...
National Inistitute of Informatics (NII), Tokyo, Japann166 views
Deep learning for NLPDeep learning for NLP
Deep learning for NLP
Shishir Choudhary375 views
Lingvist - Statistical Methods in Language LearningLingvist - Statistical Methods in Language Learning
Lingvist - Statistical Methods in Language Learning
André Karpištšenko1.6K views

More from Traian Rebedea(20)

AI @ Wholi - Bucharest.AI Meetup #5AI @ Wholi - Bucharest.AI Meetup #5
AI @ Wholi - Bucharest.AI Meetup #5
Traian Rebedea552 views
What is word2vec?What is word2vec?
What is word2vec?
Traian Rebedea22.3K views
Practical machine learning - Part 1Practical machine learning - Part 1
Practical machine learning - Part 1
Traian Rebedea3.7K views

Recently uploaded(20)

Microsoft Fabric.pptxMicrosoft Fabric.pptx
Microsoft Fabric.pptx
Shruti Chaurasia19 views
PTicketInput.pdfPTicketInput.pdf
PTicketInput.pdf
stuartmcphersonflipm314 views
Building Real-Time Travel AlertsBuilding Real-Time Travel Alerts
Building Real-Time Travel Alerts
Timothy Spann102 views
How Leaders See Data? (Level 1)How Leaders See Data? (Level 1)
How Leaders See Data? (Level 1)
Narendra Narendra10 views
MOSORE_BRESCIAMOSORE_BRESCIA
MOSORE_BRESCIA
Federico Karagulian5 views
Introduction to Microsoft Fabric.pdfIntroduction to Microsoft Fabric.pdf
Introduction to Microsoft Fabric.pdf
ishaniuudeshika21 views
RuleBookForTheFairDataEconomy.pptxRuleBookForTheFairDataEconomy.pptx
RuleBookForTheFairDataEconomy.pptx
noraelstela166 views
ColonyOSColonyOS
ColonyOS
JohanKristiansson69 views
3196 The Case of The East River3196 The Case of The East River
3196 The Case of The East River
ErickANDRADE9011 views
RIO GRANDE SUPPLY COMPANY INC, JAYSON.docxRIO GRANDE SUPPLY COMPANY INC, JAYSON.docx
RIO GRANDE SUPPLY COMPANY INC, JAYSON.docx
JaysonGarabilesEspej6 views
Data structure and algorithm. Data structure and algorithm.
Data structure and algorithm.
Abdul salam 12 views

Intro to Deep Learning for Question Answering

  • 1. Intro to Deep Learning for Question Answering Traian Rebedea, Ph.D. Department of Computer Science, UPB traian.rebedea@cs.pub.ro / trebedea@gmail.com
  • 2. About Me • The Academic Part: • Education • B.Sc., “Politehnica” University of Bucharest, CS Dept., Romania • M.Sc., “Politehnica” University of Bucharest, CS Dept., Romania • Ph.D., Natural Language Processing & Technology-Enhanced Learning, “Politehnica” University of Bucharest, CS Dept., Romania • Over 25 articles published at world-wide top conferences: • http://www.informatik.uni-trier.de/~ley/db/indices/a- tree/r/Rebedea:Traian.html • 4 book chapters on NLP & Technology Enhanced Learning • Jobs: • Lecturer, “Politehnica” University of Bucharest, CS Dept., Romania • Teaching Assistant, “Politehnica” University of Bucharest, CS Dept., Romania Intro to Deep Learning for Question Answering 230 January 2017
  • 3. About Me • The Industrial Part • Jobs • PeopleGraph, Bucharest, Romania – Researcher, Natural Language Processing, Machine Learning & Information Retrieval • TeamNet, Bucharest, Romania – Research Consultant, Opinion Mining & Natural Language Processing • Create IT, Bucharest, Romania – Founder & Web Developer • ProSoft Solutions, Bucharest, Romania – Java Developer • Various collaborations with other companies: Bitdefender, Adobe, Treeworks, UberVU • Other • Tutor for the Erasmus-Mundus DMKM Information Retrieval course (taught by Ricard Gavalda from UPC) 3Intro to Deep Learning for Question Answering30 January 2017
  • 4. Overview • Why question answering (QA)? • Previous work in QA (before deep learning) • Deep learning for QA (intro) • Simple CNN • Dependency tree – RNN • LSTM-based solution Intro to Deep Learning for Question Answering 430 January 2017
  • 5. Why Question Answering? • QA systems have been around for quite some time • In the 60s-80s, mostly domain-dependent QA • Quite related to conversational agents, at least at the beginning • Open domain QA systems received larger attention in the 90s • Combination of NLP and IR/IE techniques • One of the most famous: MIT START system (http://start.csail.mit.edu/index.php) • Wolfram Alpha (https://www.wolframalpha.com/) • Advanced systems use a combination of “shallow” methods together with knowledge bases and more complex NLP methods Intro to Deep Learning for Question Answering 530 January 2017
  • 6. Why Question Answering? • In the last 20 years, TREC and ACL provided workshops and tracks for various flavor of QA tasks (closed and open-domain) • Lately, a large number of new datasets and tasks have become available which have improved the performance of (open-domain) QA systems • QALD: Question-Answering for Linked Data (http://qald.sebastianwalter.org/) • Given a knowledge base and a question in natural language, extract the correct answers from the knowledge base • Small corpus: each year ~ 100 Q-A pairs for training and 100 for evaluation, 6 years => ~ 600 Q-A pairs for training and 600 for evaluation • Allen AI Question Answering (http://allenai.org/data.html) • (Open-domain) QA task which contains questions asked to primary/secondary students in different topics (science, maths, etc.) • Several datasets ~ 400-1000 Q-A pairs Intro to Deep Learning for Question Answering 630 January 2017
  • 7. Why Question Answering? • SQuAD - Stanford QA Dataset (https://rajpurkar.github.io/SQuAD-explorer/) • Open-domain answer sentence selection • 100,000+ Q-A pairs on 500+ articles • VisualQA (http://www.visualqa.org/) • Given an image and a question in natural language, provide the correct answer (open- domain) • 600,000+ questions on more than 200,000 images • MovieQA (http://movieqa.cs.toronto.edu/home/) • Given a movie and a question in natural language, provide the correct answer (open-domain) • almost 15,000 multiple choice question answers obtained from over 400 movies • Several others • Right now we are building a dataset similar to QALD, however it is aimed at answering questions from databases Intro to Deep Learning for Question Answering 730 January 2017
  • 8. Previous work in Question Answering • Before deep-learning / non deep-learning • Use NLP techniques to find best match between question and candidate answers: feature engineering or use expensive semantic resources • Lexical / IR: similarity measures (cosine + tf/idf, stemming, lemmatization, BM25, other retrieval models) • Semantic: use non-neural word emdeddings (e.g. Latent Semantic Analysis - LSA), use additional resources (linguistic ontologies – WordNet, other databases, thesauri, ontologies – Freebase, DBpedia) • Syntactic: compute constituency/dependency trees of question and answer – try to align/match the two trees • Mixed/other: string kernels, tree kernels, aligh/match based both on syntax and semantics, classifiers using a mix of several features discussed until now Intro to Deep Learning for Question Answering 830 January 2017
  • 9. Discussed Question Answering Tasks • Answer sentence selection • Given a question • Several possible sentences that also contain the answer (and anything else) • Find the ones containing the answer • Usually the sentences (answers) are longer than the questions Q: When did Amtrak begin operations? A: Amtrak has not turned a profit since it was founded in 1971. • Factoid question answering (“quiz-bowl”) • Given a longer description of the factoid answer (usually an entity, event, etc.) - question • Find the entity as “fast” as possible - answer (using as few information/sentences/words as possible from the description) • Question is longer than answer Q: A: Holy Roman Empire Intro to Deep Learning for Question Answering 930 January 2017
  • 10. Deep learning for QA (intro) • Simple CNN • Yu, Lei, Karl Moritz Hermann, Phil Blunsom, and Stephen Pulman. "Deep learning for answer sentence selection." arXiv preprint arXiv:1412.1632 (2014) (Oxford U. & Google DeepMind) • Extension (good study): Feng, Minwei, Bing Xiang, Michael R. Glass, Lidan Wang, and Bowen Zhou. "Applying deep learning to answer selection: A study and an open task." In Automatic Speech Recognition and Understanding (ASRU), 2015 IEEE Workshop on, pp. 813-820. IEEE, 2015 (IBM Watson) • Dependency tree – RNN • Iyyer, Mohit, Jordan L. Boyd-Graber, Leonardo Max Batista Claudino, Richard Socher, and Hal Daumé III. "A Neural Network for Factoid Question Answering over Paragraphs." In EMNLP, pp. 633-644. 2014 (Maryland & Colorado & Stanford U.) • LSTM-based solution • Tan, Ming, Bing Xiang, and Bowen Zhou. "LSTM-based Deep Learning Models for non-factoid answer selection." arXiv preprint arXiv:1511.04108 (2015) (IBM Watson) Intro to Deep Learning for Question Answering 1030 January 2017
  • 11. Simple CNN for Answer Sentence Selection • (qi, aij, yij) • Binary classification problem • qi – question • aij – candidate sentences • yij = 1 if aij contains the answer to question qi 0 o.w. • Assumption: correct answers have high semantic similarity to questions • No (actually few) hand-crafted features • Focus on modeling questions and answers as vectors, and evaluate the relatedness of each QA pair in a shared vector space Intro to Deep Learning for Question Answering 1130 January 2017
  • 12. Simple CNN for Answer Sentence Selection • Given the QA pair is modelled in the same d-dimensional vector space, the probability of the answer being correct is: • Intuition: transform the answer into the question-space q’ = M a, then use dot-product to assess the similarity between q and q’ • Finally, the sigmoid function transforms the generated scores (dot- products are not normalized!) to a probability (number between 0..1) • Training by minimizing cross-entropy on training/labelled set Intro to Deep Learning for Question Answering 1230 January 2017
  • 13. Simple CNN for Answer Sentence Selection • Bag-of-words model (simplest model, just embedddings, no NN here) • Uses word embeddings for the vector space • Then averages over all the words in the text (question or answer) Intro to Deep Learning for Question Answering 1330 January 2017
  • 14. Simple CNN for Answer Sentence Selection • Bigram model • Uses a simple CNN (Convolutional NN) • Sensitive to word order • Can capture information from n-grams • Authors only use bigrams (adjacent words), but can be extended • Use a single convolutional layer + average (sum) pooling layer • Convolution vector (filter) is shared by all bigrams Intro to Deep Learning for Question Answering 1430 January 2017
  • 15. Simple CNN for Answer Sentence Selection • Convolutional filter combines adjacent words (bigrams) • Then average pooling combines all bigram features • In practice, we just need to learn how to combine the embedding of the words in the bigram Intro to Deep Learning for Question Answering 1530 January 2017
  • 16. Simple CNN for Answer Sentence Selection • Experiments on Text Retrieval Conference (TREC) QA track (8-13) datasets, with candidate answers automatically selected from each question’s document pool • Task: rank candidate answers given question (IR specific task) • Assess using Mean Average Precision (MAP) and Mean Reciprocal Rank (MRR) Intro to Deep Learning for Question Answering 1630 January 2017
  • 17. What is MAP & MRR? • IR metrics, more details here: https://web.stanford.edu/class/cs276/handouts/EvaluationNew- handout-6-per.pdf OR any IR Book Intro to Deep Learning for Question Answering 1730 January 2017
  • 18. Simple CNN for Answer Sentence Selection • Experimental results • Used precomputed word embeddings (d=50) – details in paper, embeddings available online • Embeddings could be improved for this task, but dataset is small • Other weights randomly intitialised using a Gaussian distribution • All hyperparameters were optimised via grid search • AdaGrad for training • And also added some hand-crafted features (there is a justification in paper, not very convincing): • word co-occurrence count between Q & A • word co-occurrence count weighted by IDF between Q & A • Together with the QA matching probability as provided by the distributional model (CNN) used to train a logistic regression classifier Intro to Deep Learning for Question Answering 1830 January 2017
  • 19. Simple CNN for Answer Sentence Selection • Results were encouraging • Co-occurance features are important • Distributional model can assess semantics Intro to Deep Learning for Question Answering 1930 January 2017
  • 20. Dependency Tree – RNN • Solution proposed for factoid “bowl quiz” QA • Use a dependency tree recursive neural network (DT-RNN) • Extend it to combine predictions across sentences to produce a question answering neural network with trans-sentential averaging (called QANTA) Intro to Deep Learning for Question Answering 2030 January 2017
  • 21. Dependency Tree – RNN • Dependency trees are used to model syntax in NLP • Two main types of (syntactic) parse trees: constituency and dependency • Dependencies are actually directed edges between words Intro to Deep Learning for Question Answering 2130 January 2017
  • 22. Dependency Tree – RNN • DT-RNN is just briefly explained in the paper • More details are available in another paper: http://nlp.stanford.edu/~socherr/SocherKarpathyLeManningNg_TACL2013.pdf • Key elements: original word embeddings, hidden representation for words (of the same size as the original embeddings), one transformation for each dependency type in the hidden space For leaf nodes For inner nodes Intro to Deep Learning for Question Answering 2230 January 2017
  • 23. Dependency Tree – RNN • Example Simpler formula for inner nodes Intro to Deep Learning for Question Answering 2330 January 2017
  • 24. Dependency Tree – RNN • Training: limit the number of possible answers => problem viewed as a multi-class classication task • Softmax can be used for the decision in the final layer by using features from question and answer • Improvement: word vectors associated with answers to be trained in the same vector space as the question text • Train both the answers and questions jointly in a single model • Encourage vectors of question sentences to be near their correct answers and far away from incorrect answers • => Can use hinge loss • => “While we are not interested in obtaining a ranked list of answers, we observe better performance by adding the weighted approximaterank pairwise (WARP) loss” Intro to Deep Learning for Question Answering 2430 January 2017
  • 25. Dependency Tree – RNN • Correct answer c • Sample randomly j incorrect answers from the set of all incorrect answers and denote this subset as Z • S – set of all nods in a dependency tree • Cost / lost function is WARP – a variation of hinge loss • More details how to approximate L(rank(c, s, Z)) in section 3.2 • Training using backpropagation through structure Intro to Deep Learning for Question Answering 2530 January 2017
  • 26. Dependency Tree – RNN • QANTA: Previous model + average the representations of each sentence seen so far in a particular question • This was the best aggregation found by the authors • Datasets: • History questions: training set of 3,761 questions with 14,217 sentences and a test set of 699 questions with 2,768 sentences • Literature questions: training set of 4,777 questions with 17,972 sentences and a test set of 908 questions with 3,577 sentences • 451 history answers and 595 literature answers that occur on average twelve times in the corpus • Word embeddings (We): word2vec trained on the preprocessed question text in our training set, then optimized in the current model • Embedding size: 100, num incorrect sampled answers: 100 Intro to Deep Learning for Question Answering 2630 January 2017
  • 27. Dependency Tree – RNN • Results on test sets • Several baselines, including comparison with all the text in Wikipedia page for the answer • Also comparison with human players, after the first sentence in the question Intro to Deep Learning for Question Answering 2730 January 2017
  • 28. Dependency Tree – RNN Intro to Deep Learning for Question Answering 2830 January 2017
  • 29. LSTM Solution for Question Answering • Work on sentence answer selection • Use a sequence NN model to model the representation of Q&A • LSTM is the obvious choice Intro to Deep Learning for Question Answering 2930 January 2017
  • 30. LSTM Solution for Question Answering • Use a bidirectional LSTM (BiLSTM) • Both the previous and future context by processing the sequence on two directions • Generate two independent sequences of LSTM output vectors • One processes the input sequence forward, and one backward • The input sequence contains the word embeddings for the analyzed text (Q&A) • Output at each step contains the concatenation of the output vectors for both directions Intro to Deep Learning for Question Answering 3030 January 2017
  • 31. LSTM Solution for Question Answering • Basic QA-LSTM model • Compute BiLSTM representation for Q&A, then use a pooling method and cosine similarity for comparison • Dropout on the last layer, before cosine • Hinge loss for training Intro to Deep Learning for Question Answering 3130 January 2017
  • 32. LSTM Solution for Question Answering • Best model when Q & A sides share the same network parameters • Significantly better than the one that the question and answer sides own their own parameters • Converges much faster Intro to Deep Learning for Question Answering 3230 January 2017
  • 33. LSTM Solution for Question Answering • First improvement: QA-LSTM/CNN • Put a CNN on top of the outputs of the BiLSTM • Filter size m, output of the CNN for one filter is: Intro to Deep Learning for Question Answering 3330 January 2017
  • 34. LSTM Solution for Question Answering • “The intuition of this structure is, instead of evenly considering the lexical information of each token as the previous subsection, we emphasize on certain parts of the answer, such that QA-LSTM/CNN can more effectively differentiate the ground truths and incorrect answers.” Intro to Deep Learning for Question Answering 3430 January 2017
  • 35. LSTM Solution for Question Answering • Second improvement: Attention-based QA-LSTM • “The fixed width of hidden vectors becomes a bottleneck, when the bidirectional LSTM models must propagate dependencies over long distances over the questions and answers. • An attention mechanism is used to alleviate this weakness by dynamically aligning the more informative parts of answers to the questions.” • Simple attention mechanism over the basic QA-LSTM model • Prior to pooling, each biLSTM output vector for the answer will be multiplied by a softmax weight, which is determined by the question embedding from biLSTM Intro to Deep Learning for Question Answering 3530 January 2017
  • 36. LSTM Solution for Question Answering • Conceptually, the attention mechanism gives more weight on certain words, just like tf-idf for each word • But it computes the weights according to question information Intro to Deep Learning for Question Answering 3630 January 2017
  • 37. LSTM Solution for Question Answering • Experiment 1: InsuranceQA • Grid search for hyper-parameter tuning • Word embedding is initialized using word2vec, size 100. They are further optimized as well during the training • LSTM output vectors is 141 for one direction • Also tried various norms • SGD training Intro to Deep Learning for Question Answering 3730 January 2017
  • 38. LSTM Solution for Question Answering • QA-LSTM compared against several baselines • Metric is accuracy Intro to Deep Learning for Question Answering 3830 January 2017
  • 39. LSTM Solution for Question Answering • Models’ performance by ground answer length Intro to Deep Learning for Question Answering 3930 January 2017
  • 40. LSTM Solution for Question Answering • TREC-QA results Intro to Deep Learning for Question Answering 4030 January 2017
  • 41. CNN for QA – extended study • Feng, Minwei, Bing Xiang, Michael R. Glass, Lidan Wang, and Bowen Zhou. "Applying deep learning to answer selection: A study and an open task." In Automatic Speech Recognition and Understanding (ASRU), 2015 IEEE Workshop on, pp. 813-820. IEEE, 2015 – online here: https://arxiv.org/pdf/1508.01585.pdf • Proposes several CNN architectures for QA Intro to Deep Learning for Question Answering 4130 January 2017
  • 42. • [1] Yu, Lei, Karl Moritz Hermann, Phil Blunsom, and Stephen Pulman. "Deep learning for answer sentence selection." arXiv preprint arXiv:1412.1632 (2014).- online here: https://arxiv.org/pdf/1412.1632.pdf • [2] - Iyyer, Mohit, Jordan L. Boyd-Graber, Leonardo Max Batista Claudino, Richard Socher, and Hal Daumé III. "A Neural Network for Factoid Question Answering over Paragraphs." In EMNLP, pp. 633-644. 2014 - online here: https://cs.umd.edu/~miyyer/pubs/2014_qb_rnn.pdf • [3] - Tan, Ming, Bing Xiang, and Bowen Zhou. "LSTM-based Deep Learning Models for non-factoid answer selection." arXiv preprint arXiv:1511.04108 (2015) - online here: https://arxiv.org/pdf/1511.04108v4.pdf • [4] - Feng, Minwei, Bing Xiang, Michael R. Glass, Lidan Wang, and Bowen Zhou. "Applying deep learning to answer selection: A study and an open task." In Automatic Speech Recognition and Understanding (ASRU), 2015 IEEE Workshop on, pp. 813-820. IEEE, 2015 – online here: https://arxiv.org/pdf/1508.01585.pdf References Intro to Deep Learning for Question Answering 4230 January 2017
  • 43. Thank you! traian.rebedea@cs.pub.ro Intro to Deep Learning for Question Answering _____ _____ 4330 January 2017