Answer Extraction. NLP Systems and Applications Ling573 May 13, 2014

Similar documents
Natural Language Processing. SoSe Question Answering

Discriminative Training for Phrase-Based Machine Translation

Towards open-domain QA. Question answering. TReC QA framework. TReC QA: evaluation

Ghent University-IBCN Participation in TAC-KBP 2015 Cold Start Slot Filling task

The answer (circa 2001)

CS674 Natural Language Processing

Named Entity Detection and Entity Linking in the Context of Semantic Web

Sparse Feature Learning

Natural Language Processing SoSe Question Answering. (based on the slides of Dr. Saeedeh Momtazi)

Question Answering Systems

Learning to Answer Biomedical Factoid & List Questions: OAQA at BioASQ 3B

Information Retrieval. (M&S Ch 15)

Information Extraction Techniques in Terrorism Surveillance

NLP in practice, an example: Semantic Role Labeling

Query Evaluation Strategies

Semantic Web. Ontology Alignment. Morteza Amini. Sharif University of Technology Fall 95-96

AT&T: The Tag&Parse Approach to Semantic Parsing of Robot Spatial Commands

Search Engines. Information Retrieval in Practice

Question Answering Approach Using a WordNet-based Answer Type Taxonomy

Shrey Patel B.E. Computer Engineering, Gujarat Technological University, Ahmedabad, Gujarat, India

Automatic Summarization

Topics for Today. The Last (i.e. Final) Class. Weakly Supervised Approaches. Weakly supervised learning algorithms (for NP coreference resolution)

NTUBROWS System for NTCIR-7. Information Retrieval for Question Answering

Midterm Exam Search Engines ( / ) October 20, 2015

Machine Learning for Question Answering from Tabular Data

Topics in Parsing: Context and Markovization; Dependency Parsing. COMP-599 Oct 17, 2016

Sentence selection with neural networks over string kernels

CS 6320 Natural Language Processing

Natural Language Processing

Ngram Search Engine with Patterns Combining Token, POS, Chunk and NE Information

Data Collection & Data Preprocessing

CS474 Intro to NLP. List Questions. Context Task. Definition Questions. Question Answering. List questions

Automatic people tagging for expertise profiling in the enterprise

Classification and Comparative Analysis of Passage Retrieval Methods

Question answering. CS474 Intro to Natural Language Processing. History LUNAR

Text Analytics. Index-Structures for Information Retrieval. Ulf Leser

Better Contextual Suggestions in ClueWeb12 Using Domain Knowledge Inferred from The Open Web

Retrieval Evaluation. Hongning Wang

ResPubliQA 2010

Exam Marco Kuhlmann. This exam consists of three parts:

Grounded Compositional Semantics for Finding and Describing Images with Sentences

Watson & WMR2017. (slides mostly derived from Jim Hendler and Simon Ellis, Rensselaer Polytechnic Institute, or from IBM itself)

Taming Text. How to Find, Organize, and Manipulate It MANNING GRANT S. INGERSOLL THOMAS S. MORTON ANDREW L. KARRIS. Shelter Island

Tuning. Philipp Koehn presented by Gaurav Kumar. 28 September 2017

Final Project Discussion. Adam Meyers Montclair State University

Basic techniques. Text processing; term weighting; vector space model; inverted index; Web Search

JU_CSE_TE: System Description 2010 ResPubliQA

USING SEMANTIC REPRESENTATIONS IN QUESTION ANSWERING. Sameer S. Pradhan, Valerie Krugler, Wayne Ward, Dan Jurafsky and James H.

INTERNATIONAL JOURNAL OF COMPUTER ENGINEERING & TECHNOLOGY (IJCET) CONTEXT SENSITIVE TEXT SUMMARIZATION USING HIERARCHICAL CLUSTERING ALGORITHM

Natural Language Processing

Generating FrameNets of various granularities: The FrameNet Transformer

Information Retrieval

Natural Language Processing SoSe Question Answering. (based on the slides of Dr. Saeedeh Momtazi) )

Feature selection. LING 572 Fei Xia

University of Sheffield, NLP. Chunking Practical Exercise

It s time for a semantic engine!

Linguistic Graph Similarity for News Sentence Searching

Search Engines. Information Retrieval in Practice

What is this Song About?: Identification of Keywords in Bollywood Lyrics

On the automatic classification of app reviews

Object-oriented Compiler Construction

MACHINE LEARNING FOR SOFTWARE MAINTAINABILITY

Unsupervised Rank Aggregation with Distance-Based Models

QUALIFIER: Question Answering by Lexical Fabric and External Resources

Large Scale Semantic Annotation, Indexing, and Search at The National Archives Diana Maynard Mark Greenwood

Text Analytics. Index-Structures for Information Retrieval. Ulf Leser

Semantic Dependency Graph Parsing Using Tree Approximations

Chapter 4. Processing Text

Chapter 27 Introduction to Information Retrieval and Web Search

Web Search. Lecture Objectives. Text Technologies for Data Science INFR Learn about: 11/14/2017. Instructor: Walid Magdy

Query Languages. Berlin Chen Reference: 1. Modern Information Retrieval, chapter 4

QANUS A GENERIC QUESTION-ANSWERING FRAMEWORK

Knowledge Engineering with Semantic Web Technologies

University of Virginia Department of Computer Science. CS 4501: Information Retrieval Fall 2015

Finding Related Entities by Retrieving Relations: UIUC at TREC 2009 Entity Track

FLL: Answering World History Exams by Utilizing Search Results and Virtual Examples

A Multilingual Social Media Linguistic Corpus

Introduction to CRFs. Isabelle Tellier

Concept-Based Document Similarity Based on Suffix Tree Document

Information Retrieval. Chap 7. Text Operations

Improving Suffix Tree Clustering Algorithm for Web Documents

Let s get parsing! Each component processes the Doc object, then passes it on. doc.is_parsed attribute checks whether a Doc object has been parsed

Presented by: Dimitri Galmanovich. Petros Venetis, Alon Halevy, Jayant Madhavan, Marius Paşca, Warren Shen, Gengxin Miao, Chung Wu

Natural Language Processing Tutorial May 26 & 27, 2011

ΕΠΛ660. Ανάκτηση µε το µοντέλο διανυσµατικού χώρου

Semantic Web. Ontology Alignment. Morteza Amini. Sharif University of Technology Fall 94-95

CS473: Course Review CS-473. Luo Si Department of Computer Science Purdue University

slide courtesy of D. Yarowsky Splitting Words a.k.a. Word Sense Disambiguation Intro to NLP - J. Eisner 1

Relational Approach. Problem Definition

From Passages into Elements in XML Retrieval

An Interactive Framework for Document Retrieval and Presentation with Question-Answering Function in Restricted Domain

Elementary IR: Scalable Boolean Text Search. (Compare with R & G )

Passage Reranking for Question Answering Using Syntactic Structures and Answer Types

Chapter 8. Evaluating Search Engine

A CASE STUDY: Structure learning for Part-of-Speech Tagging. Danilo Croce WMR 2011/2012

Jan Pedersen 22 July 2010

Definitions. Lecture Objectives. Text Technologies for Data Science INFR Learn about main concepts in IR 9/19/2017. Instructor: Walid Magdy

The Goal of this Document. Where to Start?

Large-Scale Syntactic Processing: Parsing the Web. JHU 2009 Summer Research Workshop

Charles University at CLEF 2007 CL-SR Track

Transcription:

Answer Extraction NLP Systems and Applications Ling573 May 13, 2014

Answer Extraction Goal: Given a passage, find the specific answer in passage Go from ~1000 chars -> short answer span Example: Q: What is the current population of the United States? Pass: The United States enters 2011 with a population of more than 310.5 million people, according to a U.S. Census Bureau estimate. Answer: 310.5 million

Challenges ISI s answer extraction experiment: Given: Question: 413 TREC-2002 factoid questions Known answer type All correct answer passages Task: Pin-point specific answer string Accuracy: Systems: 68.2%, 63.4%, 56.7% Still missing 30%+ answers Oracle (any of 3 right): 78.9% (20% miss)

Basic Strategies Answer-type matching: Build patterns for answer locations Restrict by answer type Information for pattern types: Lexical: word patterns Syntactic/structural: Syntactic relations b/t question and answer Semantic: Semantic/argument relations b/t question and answer Combine with machine learning to select

Pattern Matching Example Answer type: Definition Answer type: Birthdate Question: When was Mozart born? Answer: Mozart was born on. Pattern: <QP> was born on <AP> Pattern: <QP> (<AP> -..)

N-gram tiling: Basic Strategies Typically as part of answer validation/verification Integrated with web-based retrieval Based on retrieval of search snippets Identifies frequently occurring, overlapping n-grams Of correct type

N-gram Tiling Scores 20 15 10 Charles Dickens Mr Charles Dickens merged, discard old n-grams Score 45 Mr Charles Dickens N-Grams tile highest-scoring n-gram N-Grams Repeat, until no more overlap 7

Automatic Pattern Learning Ravichandran and Hovy 2002; Echihabi et al, 2005 Inspiration (Soubottin and Soubottin 01) Best TREC 2001 system: Based on extensive list of surface patterns Mostly manually created Many patterns strongly associated with answer types E.g. <NAME> (<DATE>-<DATE>) Person s birth and death

Pattern Learning S & S 01 worked well, but Manual pattern creation is a hassle, impractical Can we learn patterns? Supervised approaches: Not much better, Have to tag training samples, need training samples Bootstrapping approaches: Promising: Guidance from small number of seed samples Can use answer data from web

Finding Candidate Patterns For a given question type Identify an example with qterm and aterm Submit to a search engine Download top N web docs (N=1000) Select only sentences w/qterm and aterm Identify all substrings and their counts Implemented using suffix trees for efficiency Select only phrases with qterm AND aterm Replace qterm and aterm instances w/generics

Example Q: When was Mozart born? A: Mozart (1756 Qterm: Mozart; Aterm: 1756 The great composer Mozart (1756 1791) achieved fame Mozart (1756 1791) was a genius Indebted to the great music of Mozart (1756 1791) Phrase: Mozart (1756-1791); count =3 Convert to : <Name> (<ANSWER>

Patterns Typically repeat with a few more examples Collect more patterns: E.g. for Birthdate a. born in <ANSWER>, <NAME> b. <NAME> was born on <ANSWER>, c. <NAME> ( <ANSWER> - d. <NAME> ( <ANSWER> - ) Is this enough? No some good patterns, but Probably lots of junk, too; need to filter

Computing Pattern Precision For question type: Search only on qterm Download top N web docs (N=1000) Select only sentences w/qterm For each pattern, check if a) matches w/any aterm; C o b) matches/w right aterm: C a Compute precision P = C a /C o Retain if match > 5 examples

Pattern Precision Example Qterm: Mozart Pattern: <NAME> was born in <ANSWER> Near-Miss: Mozart was born in Salzburg Match: Mozart born in 1756. Precisions: 1.0 <NAME> (<ANSWER> - ) 0.6 <NAME> was born in <ANSWER>.

Nuances Alternative forms: Need to allow for alternate forms of question or answer E.g. dates in different formats, full names, etc Use alternate forms in pattern search Precision assessment: Use other examples of same type to compute Cross-checks patterns

Answer Selection by Pattern Identify question types and terms Filter retrieved passages, replace qterm by tag Try to match patterns and answer spans Discard duplicates and sort by pattern precision

Pattern Sets WHY-FAMOUS 1.0 <ANSWER> <NAME> called 1.0 laureate <ANSWER> <NAME> 1.0 by the <ANSWER>, <NAME>, 1.0 <NAME> - the <ANSWER> of 1.0 <NAME> was the <ANSWER> of BIRTHYEAR 1.0 <NAME> ( <ANSWER> - ) 0.85 <NAME> was born on <ANSWER>, 0.6 <NAME> was born in <ANSWER> 0.59 <NAME> was born <ANSWER> 0.53 <ANSWER> <NAME> was born

Results Improves, though better with web data

Limitations & Extensions Where are the Rockies?..with the Rockies in the background Should restrict to semantic / NE type London, which., lies on the River Thames <QTERM> word* lies on <ANSWER> Wildcards impractical Long-distance dependencies not practical Less of an issue in Web search Web highly redundant, many local dependencies Many systems (LCC) use web to validate answers

Limitations & Extensions When was LBJ born? Tower lost to Sen. LBJ, who ran for both the Requires information about: Answer length, type; logical distance (1-2 chunks) Also, Can only handle single continuous qterms Ignores case Needs handle canonicalization, e.g of names/dates

Integrating Patterns II Fundamental problem: What if there s no pattern?? No pattern -> No answer!!! More robust solution: Not JUST patterns Integrate with machine learning MAXENT!!! Re-ranking approach

Answering w/maxent P(a {a 1, a 2,...a A }, q) = M m=1 a" exp[ M λ m m=1 M λ m f m (a,{a 1, a 2,...a A }, q)] exp[ f m ( a ",{a 1, a 2,...a A }, q)] m=1 a = argmax[ λ m f m (a,{a 1, a 2,...a A }, q)] a

Pattern fired: Binary feature Feature Functions Answer frequency/redundancy factor: # times answer appears in retrieval results Answer type match (binary) Question word absent (binary): No question words in answer span Word match: Sum of ITF of words matching b/t questions & sent

Training & Testing Trained on NIST QA questions Train: TREC 8,9; Cross-validation: TREC-10 5000 candidate answers/question Positive examples: NIST pattern matches Negative examples: NIST pattern doesn t match Test: TREC-2003: MRR: 28.6%; 35.6% exact top 5

Noisy Channel QA Employed for speech, POS tagging, MT, summ, etc Intuition: Question is a noisy representation of the answer Basic approach: Given a corpus of (Q,S A ) pairs Train P(Q S A ) Find sentence with answer as S i,aij that maximize P(Q S i,aij )

QA Noisy Channel A: Presley died of heart disease at Graceland in 1977, and.. Q: When did Elvis Presley die? Goal: Align parts of Ans parse tree to question Mark candidate answers Find highest probability answer

Approach Alignment issue: Answer sentences longer than questions Minimize length gap Represent answer as mix of words/syn/sem/ne units Create cut through parse tree Every word or an ancestor in cut Only one element on path from root to word Presley died of heart disease at Graceland in 1977, and.. Presley died PP PP in DATE, and.. When did Elvis Presley die?

Approach (Cont d) Assign one element in cut to be Answer Issue: Cut STILL may not be same length as Q Solution: (typical MT) Assign each element a fertility 0 delete the word; > 1: repeat word that many times Replace A words with Q words based on alignment Permute result to match original Question Everything except cut computed with OTS MT code

Schematic Assume cut, answer guess all equally likely

Training Sample Generation Given question and answer sentences Parse answer sentence Create cut s.t.: Words in both Q & A are preserved Answer reduced to A_ syn/sem class label Nodes with no surface children reduced to syn class Keep surface form of all other nodes 20K TREC QA pairs; 6.5K web question pairs

Selecting Answers For any candidate answer sentence: Do same cut process Generate all candidate answer nodes: Syntactic/Semantic nodes in tree What s a bad candidate answer? Stopwords Question words! Create cuts with each answer candidate annotated Select one with highest probability by model

Example Answer Cuts Q: When did Elvis Presley die? S A1 : Presley died A_PP PP PP, and S A2 : Presley died PP A_PP PP, and. S A3 : Presley died PP PP in A_DATE, and Results: MRR: 24.8%; 31.2% in top 5

Error Analysis Component specific errors: Patterns: Some question types work better with patterns Typically specific NE categories (NAM, LOC, ORG..) Bad if vague Stats based: No restrictions on answer type frequently it Patterns and stats: Blatant errors: Select bad strings (esp. pronouns) if fit position/pattern

Combining Units Linear sum of weights? Problematic: Misses different strengths/weaknesses Learning! (of course) Maxent re-ranking Linear

48 in total Feature Functions Component-specific: Scores, ranks from different modules Patterns. Stats, IR, even QA word overlap Redundancy-specific: # times candidate answer appears (log, sqrt) Qtype-specific: Some components better for certain types: type+mod Blatant errors : no pronouns, when NOT DoW

Experiments Per-module reranking: Use redundancy, qtype, blatant, and feature from mod Combined reranking: All features (after feature selection to 31) Patterns: Exact in top 5: 35.6% -> 43.1% Stats: Exact in top 5: 31.2% -> 41% Manual/knowledge based: 57% Combined: 57%+