Venue: ACL 2017

# Answering Complex Questions Using Open Information Extraction

Tushar Khot

Ashish Sabharwal

Peter Clark

Allen Institute for Artificial Intelligence, Seattle, WA, U.S.A. {tushark,ashishs,peterc}@allenai.org

###### Abstract

While there has been substantial progress in factoid question-answering (QA), answering complex questions remains challenging, typically requiring both a large body of knowledge and inference techniques. Open Information Extraction (Open IE) provides a way to generate semi-structured knowledge for QA, but to date such knowledge has only been used to answer simple questions with retrieval-based methods. We overcome this limitation by presenting a method for reasoning with Open IE knowledge, allowing more complex questions to be handled. Using a recently proposed support graph optimization framework for QA, we develop a new inference model for Open IE, in particular one that can work effectively with multiple short facts, noise, and the relational structure of tuples. Our model significantly outperforms a state-of-the-art structured solver on complex questions of varying difficulty, while also removing the reliance on manually curated knowledge.

+
Footnote †: Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Short Papers), pages 311–316 Vancouver, Canada, July 30 - August 4, 2017. ©2017 Association for Computational Linguistics [https://doi.org/10.18653/v1/P17-2049](https://doi.org/10.18653/v1/P17-2049)

## 1 Introduction

Effective question answering (QA) systems have been a long-standing quest of AI research. Structured curated KBs have been used successfully for this task Berant et al. (2013); Berant and Liang (2014). However, these KBs are expensive to build and typically domain-specific. Automatically constructed open vocabulary _(subject; predicate; object)_ style tuples have broader coverage, but have only been used for simple questions where a single tuple suffices Fader et al. (2014); Yin et al. (2015).

Our goal in this work is to develop a QA system that can perform reasoning with Open IE Banko et al. (2007) tuples for complex multiple-choice questions that require tuples from multiple sentences. Such a system can answer complex questions in resource-poor domains where curated knowledge is unavailable. Elementary-level science exams is one such domain, requiring complex reasoning Clark (2015). Due to the lack of a large-scale structured KB, state-of-the-art systems for this task either rely on shallow reasoning with large text corpora Clark et al. (2016); Cheng et al. (2016) or deeper, structured reasoning with a small amount of automatically acquired Khot et al. (2015) or manually curated Khashabi et al. (2016) knowledge.

Consider the following question from an Alaska state 4th grade science test:

_Which object in our solar system reflects light and is a satellite that orbits around one planet? (A) Earth (B) Mercury (C) the Sun (D) the Moon_

This question is challenging for QA systems because of its complex structure and the need for multi-fact reasoning. A natural way to answer it is by combining facts such as _(Moon; is; in the solar system)_, _(Moon; reffects; light)_, _(Moon; is; satellite)_, and _(Moon; orbits; around one planet)_.

A candidate system for such reasoning, and which we draw inspiration from, is the TableILP system of Khashabi et al. (2016). TableILP treats QA as a search for an optimal subgraph that connects terms in the question and answer via rows in a set of curated tables, and solves the optimization problem using Integer Linear Programming (ILP). We similarly want to search for an optimal subgraph. However, a large, automatically extracted tuple KB makes the reasoning context different on three fronts: (a) unlike reasoning with tables, chaining tuples is less important and reliable as join rules aren't

available; (b) conjunctive evidence becomes paramount, as, unlike a long table row, a single tuple is less likely to cover the entire question; and (c) again, unlike table rows, tuples are noisy, making combining redundant evidence essential. Consequently, a table-knowledge centered inference model isn't the best fit for noisy tuples.

To address this challenge, we present a new ILP-based model of inference with tuples, implemented in a reasoner called TupleInf. We demonstrate that TupleInf significantly outperforms TableILP by 11.8% on a broad set of over 1,300 science questions, without requiring manually curated tables, using a substantially simpler ILP formulation, and generalizing well to higher grade levels. The gains persist even when both solvers are provided identical knowledge. This demonstrates for the first time how Open IE based QA can be extended from simple lookup questions to an effective system for complex questions.

## 2 Related Work

We discuss two classes of related work: retrieval-based web question-answering (simple reasoning with large scale KB) and science questionnaire (complex reasoning with small KB).

Web QA:There exist several systems for retrieval-based Web QA problems Ferrucci et al. (2010); Brill et al. (2002). While structured KBs such as Freebase have been used in many Berant et al. (2013); Berant and Liang (2014); Kwiatkowski et al. (2013), such approaches are limited by the coverage of the data. QA systems using semi-structured Open IE tuples Fader et al. (2013); Yin et al. (2015) or automatically extracted web tables Sun et al. (2016); Pasupat and Liang (2015) have broader coverage but are limited to simple questions with a single query.

Science QA:Elementary-level science QA tasks require reasoning to handle complex questions. Markov Logic Networks Richardson and Domingos (2006) have been used to perform probabilistic reasoning over a small set of logical rules Khot et al. (2015). Simple IR techniques have also been proposed for science tests Clark et al. (2016) and Gaokao tests (equivalent to the SAT exam in China) Cheng et al. (2016).

The work most related to TupleInf is the aforementioned TableIIP solver. This approach focuses on building inference chains using manually defined join rules for a small set of curated tables. While it can also use open vocabulary tuples (as we assess in our experiments), its efficacy is limited by the difficulty of defining reliable join rules for such tuples. Further, each row in some complex curated tables covers all relevant contextual information (e.g., each row of the _adaptation_ table contains (animal, adaptation, challenge, explanation)), whereas recovering such information requires combining multiple Open IE tuples.

## 3Tuple Inference Solver

We first describe the tuples used by our solver. We define a tuple as _(subject; predicate; objects)_ with zero or more objects. We refer to the subject, predicate, and objects as the fields of the tuple.

### Tuple KB

We use the text corpora (\(S\)) from Clark et al. (2016) to build our tuple KB. \(S\) contains \(5\times 10^{10}\) tokens (280 GB of plain text) extracted from Web pages as well as around 80,000 sentences from various domain-targeted sources. For each test set, we use the corresponding training questions \(Q_{tr}\) to retrieve domain-relevant sentences from S. Specifically, for each multiple-choice question \((q,A)\in Q_{tr}\) and each choice \(a\in A\), we use all non-stopword stemmed tokens in \(q\) and \(a\) as an ElasticSearch1 query against S. We take the top 200 hits, run Open IE v4,2 and aggregate the resulting tuples over all \(a\in A\) and over all questions in \(Q_{tr}\) to create the tuple KB (\(T\)).3

Footnote 1: [https://www.elastic.co/products/elasticsearch](https://www.elastic.co/products/elasticsearch)

Footnote 2: [http://knowitall.github.io/openie](http://knowitall.github.io/openie)

Footnote 3: Available at _[http://sallenai.org/data.html_](http://sallenai.org/data.html_)

### Tuple Selection

Given a multiple-choice question \(qa\) with question text \(q\) and answer choices A=\(\{a_{i}\}\), we select the most relevant tuples from \(T\) and \(S\) as follows.

**Selecting from Tuple KB:** We use an inverted index to find the 1,000 tuples that have the most overlapping tokens with question tokens \(tok(qa)\).4 We also filter out any tuples that overlap only with \(tok(q)\) as they do not support any answer. We compute the normalized TF-IDF score by treating the question, \(q\), as a query and each tuple, \(t\), as a 

document:

\[\textit{tf}(x,q) =1~{}\text{if}~{}x\in q,~{}0~{}\text{otherwise}\] \[\textit{idf}(x) =\log\left(1+N/n_{x}\right)\] \[\textit{tf-idf}(t,q) =\sum_{x\in t\cap q}\textit{idf}(x)\]

where \(N\) is the total number of tuples in the KB and \(n_{x}\) is the number of tuples containing \(x\). We normalize the _tf-idf_ score by the number of tokens in \(t\) and \(q\), and take the 50 top-scoring tuples \(T_{qa}\).

**On-the-fly tuples from text:** To handle questions from new domains not covered by the training set, we extract additional tuples _on the fly_ from S (similar to Sharma et al. (2015)). We perform the same ElasticSearch query described earlier for building T. We ignore sentences that cover none or all answer choices as they are not discriminative. We also ignore long sentences (>300 characters) and sentences with negation6 as they tend to lead to noisy inference. We then run Open IE on these sentences and re-score the resulting tuples using the Jaccard score7 due to the lossy nature of Open IE, and finally take the 50 top-scoring tuples \(T^{\prime}_{qa}\).

Footnote 6: \(|~{}tok(t)\cap tok(qa)~{}|~{}/~{}!~{}tok(t)\cup tok(qa)~{}|\)

### Support Graph Search

Similar to TableIIP, we view the QA task as searching for a graph that best connects the terms in the question (qterms) with an answer choice via the knowledge; see Figure 1 for a simple illustrative example. Unlike standard alignment models used for tasks such as Recognizing Textual Entailment (RTE) Dagan et al. (2010), however, we must score alignments between a set \(T_{qa}\cup T^{\prime}_{qa}\) of structured tuples and a (potentially multi-sentence) multiple-choice question \(qa\).

The qterms, answer choices, and tuples fields form the set of possible vertices, \(\mathcal{V}\), of the support graph. Edges connecting qterms to tuple fields and tuple fields to answer choices form the set of possible edges, \(\mathcal{E}\). The support graph, \(G(V,E)\), is a subgraph of \(\mathcal{G}(\mathcal{V},\mathcal{E})\) where \(V\) and \(E\) denote "active" nodes and edges, resp. We define an ILP optimization model to search for the best support graph (i.e., the active nodes and edges) as follows.

#### Variables

The ILP has a binary variable for each qterm (\(x_{q}\)), tuple (\(x_{t}\)), tuple field (\(x_{f}\)), and answer choice (\(x_{a}\)), indicating whether the corresponding graph node is active. There is a binary activity variable (\(x_{e}\)) for each edge \(e\in\mathcal{E}\). For efficiency, we only create a qterm\(\rightarrow\)field edge and a field\(\rightarrow\)choice edge if the corresponding coefficient is no smaller than a certain threshold (0.1 and 0.2, resp.).

#### Objective Function

The objective function coefficient \(c_{e}\) of each edge \(e(t,h)\) is determined by a word-overlap score.8 While TableIIP used WordNet Miller (1995) paths to compute the edge weight, this measure results in unreliable scores when faced with longer phrases found in Open IE tuples.

Footnote 8: \(w(t,h)=\mid tok(t)\cap tok(h)~{}|~{}/~{}!~{}tok(h)~{}|\)

Compared to a curated KB, it is easy to find Open IE tuples that match irrelevant parts of the questions. To mitigate this issue, we scale the coefficients \(c_{q}\) of qterms in our ILP objective to focus on important terms. Since the later terms in a question tend to provide the most critical information, we scale qterm coefficients based on their position in the question. Also, qterms that appear in almost all of the selected tuples tend not to be discriminative as any tuple would support such a qterm. Hence we scale qterm coefficients inversely by the frequency with which they occur in the selected tuples. Appendix A describes the coefficient for qterm as well as other variables in detail.

#### Constraints

Since Open IE tuples do not come with schema and join rules, we can define a substantially simpler model compared to TableIIP. This reduces the reasoning capability but also eliminates the reliance on hand-authored join rules and regular expressions used in TableIIP. We discovered (see empirical evaluation) that this simple model can achieve the same score as TableIIP on the Regents test (target test set used by TableIIP) and generalizes better to different grade levels.

We start with a few constraints defining what is an active node or edge, shown as the first groups of constraints in Table 1. To avoid positive edge coefficients in the objective function resulting in

Figure 1: An example support graph linking a question (top), two tuples from the KB (colored) and an answer option (nitrogen).

 

spurious edges in the support graph, we limit the number of active edges from an active tuple, question choice, tuple fields, and qterms (second group of constraints in Table 1). Our model is also capable of using multiple tuples to support different parts of the question as illustrated in Figure 1. To avoid spurious tuples that only connect with the question (or choice) or ignore the relation being expressed in the tuple, we add constraints that require each tuple to connect aqterm with an answer choice (third group of constraints in Table 1).

We also define new constraints based on the Open IE tuple structure. Since an Open IE tuple expresses a fact about the tuple's subject, we require that the subject must be active. To avoid issues such as _(Planet; orbit; Sun)_ matching the sample question in the introduction ("Which object...orbits around a planet"), we also add an ordering constraint (fourth group in Table 1).

We note that TupleInf only combines parallel evidence, i.e., each tuple must individually connect words in the question to the answer choice. For reliable multi-hop reasoning using OpenIE tuples, one can add inter-tuple connections to the support graph search, controlled by a small number of rules over Open IE predicates. Learning such rules for the Science domain is an open problem and potential avenue for future work.

## 4 Experiments

Comparing our method with two state-of-the-art systems for 4th and 8th grade science exams, we demonstrate that (a)TupleInf with only automatically extracted tuples significantly outperforms TableILP with its original curated knowledge as well as with additional tuples, and (b)TupleInf's complementary approach to IR leads to an improved ensemble. Numbers in bold indicate statistical significance based on the Binomial exact test Howell (2012) at \(p=0.05\).

We consider two question sets. (1) **4th Grade set** (1220 train, 1304 test) is a 10x larger superset of the NY Regents questions Clark et al. (2016), and includes professionally written licensed questions. (2) **8th Grade set** (293 train, 282 test) contains 8th grade questions from various states.8

Footnote 8: See the _Middle School Without Diagrams_ set from AI2 Science Questions vl Feb 2016 at [http://allenai.org/data/science-exam-questions.html](http://allenai.org/data/science-exam-questions.html) for the 8th Grade set. For future comparisons, we also report our score on their smaller 4th Grade set: _Elementary School Without Diagrams_ (432 train, 339 test).

We consider two knowledge sources:

(1) The **Sentence corpus** (S) consists of domain-targeted 80K sentences and 280 GB of plain text extracted from web pages used by Clark et al. (2016). This corpus is used as a collection of sentences by the IR solver. It is also used to create the tuple KB T (Sec. 3.1) and on-the-fly questionnaire tuples \(T^{\prime}_{qa}\) (Sec. 3.2) for TupleInf.

(2) TableIIP uses \(\sim\)70 **Curated tables** (C) containing about 7,600 rows, designed for 4th grade NY Regents exams.

We compare TupleInf with two state-of-the-art baselines. **IR** is a simple yet powerful information-retrieval baseline Clark et al. (2016) that selects the answer option with the best matching sentence in a corpus. **TableILP** is the state-of-the-art structured inference baseline Khashabi et al. (2016) developed for science questions.

### Results

Table 2 shows that TupleInf, with no curated knowledge, outperforms TableIIP on both question sets by more than 11%. The lower half of the table shows th

\begin{table}
\begin{tabular}{c c} \hline Active variable must have an active edge \\ Active edge must have an active source node \\ Active edge must have an active target node \\ Exactly on answer choice must be active \\ Active field implies tuple must be active \\ \hline Active field must have \(<w_{1}\) connected edges \\ Active choice must have \(<w_{2}\) edges \\ Active term must have \(<w_{3}\) edges \\ Support graph must have \(<w_{4}\) active tuples \\ \hline Active tuple must have \(\geq w_{5}\) active fields \\ Active tuple must have an edge to some determ \\ Active tuple must have an edge to some choice \\ \hline Active tuple must have active subject \\ If a tuple predicate aligns to \(q\), the subject (object) must align to a term preceding (following, resp.) \(q\) \\ \hline \end{tabular}
\end{table}
Table 1: High-level ILP constraints; we report results for \(\vec{w}=(2,4,4,4,2)\); the model can be improved with more careful parameter selection

\begin{table}
\begin{tabular}{l l l} \hline Solvers & 4th Grade & 8th Grade \\ \hline \multicolumn{3}{l}{TableILP(C)} & 39.9 & 34.1 \\ \multicolumn{3}{l}{TupleInF(t+T)} & **51.7** & **51.6** \\ \hline \multicolumn{3}{l}{TableILP(C+T)} & 42.1 & 37.9 \\ \multicolumn{3}{l}{TupleInf(C+T)} & **47.5** & **48.0** \\ \hline \end{tabular}
\end{table}
Table 2: TupleInf is significantly better at structured reasoning than TableILP.9 

the same knowledge (C+T),10 the improved selection and simplified model of TupleInf11 results in a statistically significant improvement. Our simple model, TupleIf(C + T), also achieves scores comparable to TableILP on the latter's target Regents questions (61.4% vs TableILP's reported 61.5%) without any specialized rules.

Footnote 10: See Appendix B for how tables (and tuples) are used by TupleInf (and TableILP).

Table 3 shows that while TupleInf achieves similar scores as the IR solver, the approaches are complementary (structured lossy knowledge reasoning vs. lossless sentence retrieval). The two solvers, in fact, differ on 47.3% of the training questions. To exploit this complementarity, we train an ensemble system Clark et al. (2016) which, as shown in the table, provides a substantial boost over the individual solvers. Further, IR + TupleInf is consistently better than IR + TableILP.

Finally, in combination with IR and the statistical association based PMI solver (which scores 54.1% by itself) of Clark et al. (2016), TupleInf achieves a score of 58.2% on the 4th grade set. This compares favorably to TableILP's ensemble score of 56.7%, again attesting to Tupleinf's strength.12

Footnote 11: On average, TableILP (TupleInf) has 3,403 (1,628, resp.) constraints and 982 (588, resp.) variables. TupleFs ILP can be solved in half the time taken by TableILP, reducing the overall question answering time by 68.6%.

## 5 Error Analysis

We describe four classes of failure of TupleInf, and the future work they suggest.

Missing Important Words:_Which material will spread out to completely fill a larger container? (A) air (B) ice (C) sand (D) water_ In this question, we have tuples that support that water will spread out and fill a larger container, but miss the critical word "completely". A method for detecting salient question words would help here.

Lossy IE:_Which action is the best method to separate a mixture of salt and water? ..._ The IR solver correctly answers this question by using the sentence: _Separate the salt and water mixture by evaporating the water._ However, TupleInf is not able to answer this question as Open IE is unable to extract tuples from this imperative sentence. While the additional structure from Open IE is generally helpful for more robust matching, the conversion to tuples sometimes loses important bits of information.

Bad Alignment:_Which of the following gases is necessary for humans to breathe in order to live? (A) Oxygen (B) Carbon dioxide (C) Helium (D) Water vapor_ TupleInf returns "Carbon dioxide" as the answer because of the tuple _(humans; breathe out; carbon dioxide)_. The chunk "to breathe" in the question has a high alignment score to the "breathe out" relation in the tuple, even though they have completely different meaning. An improved phrase alignment module can mitigate this issue.

Out of Scope:_Deer live in forest for shelter. If the forest was cut down, which situation would most likely happen? ..._ Such questions require modeling a state presented in the question and reasoning over this state, which is out of scope of our solver.

## 6 Conclusion

We presented a new QA system, TupleInf, that can reason over a large, potentially noisy knowledge base of (subject, predicate, object) style tuples, in order to answer complex questions. Our results establish TupleInf as a new state-of-the-art structured reasoning solver for elementary-level science that does not rely on curated knowledge and generalizes to higher grade levels. Our error analysis points to lossy IE and textual misalignments as two main causes of failure, suggesting future work around incorporating tuple context and distributional similarity measures.

## Acknowledgments

The authors would like to thank Oren Etzioni for valuable feedback on an early draft of this paper, and Colin Arenz and Michal Guerquin for helping us develop this system.

\begin{table}
\begin{tabular}{l c c} Solvers & 4th Grade & 8th Grade \\ \hline IR(S) & 52.0 & 52.8 \\ IR(S) + TableILP(C) & 53.3 & 54.5 \\ IR(S) + TupleInf(T+T) & **55.3** & 55.1 \\ \end{tabular}
\end{table}
Table 3: TupleInf is complementarity to IR, resulting in a strong ensemble 



## References

* Achterberg (2009) Tobias Achterberg. 2009. SCIP: solving constraint integer programs. _Math. Prog. Computation_ 1(1):1-41.
* Banko et al. (2007) Michele Banko, Michael J. Cafarella, Stephen Soderland, Matthew Broadhead, and Oren Etzioni. 2007. Open information extraction from the web. In _IJCAI_.
* Berant et al. (2013) Jonathan Berant, Andrew Chou, Roy Frostig, and Percy Liang. 2013. Semantic parsing on Freebase from question-answer pairs. In _Empirical Methods in Natural Language Processing (EMNLP)_.
* Berant and Liang (2014) Jonathan Berant and Percy Liang. 2014. Semantic parsing via paraphrasing. In _ACL_. Brill et al. (2002) Eric Brill, Susan Dumais, and Michele Banko. 2002. An analysis of the AskMSR question-answering system. In _Proceedings of EMNLP_. pages 257-264.
* Cheng et al. (2016) Gong Cheng, Weixi Zhu, Ziwei Wang, Jianghui Chen, and Yuzhong Qu. 2016. Taking up the Goakao Challenge: An information retrieval approach. In _IJCAI_.
* Clark (2015) Peter Clark. 2015. Elementary school science and math tests as a driver for AI: take the Aristo challenge! In _29th AAAI/IAAI_. Austin, TX, pages 4019-4021.
* Clark et al. (2016) Peter Clark, Oren Etzioni, Tushar Khot, Ashish Sabharwal, Oyvind Tafjord, Peter Turney, and Daniel Khashabi. 2016. Combining retrieval, statistics, and inference to answer elementary science questions. In _30th AAAI_.
* Dagan et al. (2010) Ido Dagan, Bill Dolan, Bernardo Magnini, and Dan Roth. 2010. Recognizing textual entailment: Rational, evaluation and approaches-erratum. _Natural Language Engineering_ 16(01):105-105.
* Fader et al. (2013) Anthony Fader, Luke S. Zettlemoyer, and Oren Etzioni. 2013. Paraphrase-driven learning for open question answering. In _ACL_.
* Fader et al. (2014) Anthony Fader, Luke S. Zettlemoyer, and Oren Etzioni. 2014. Open question answering over curated and extracted knowledge bases. In _KDD_.
* Ferrucci et al. (2010) David Ferrucci, Eric Brown, Jennifer Chu-Carroll, James Fan, David Gondek, Aditya A Kalyanpur, Adam Lally, J William Murdock, Eric Nyberg, John Prager, et al. 2010. Building Watson: An overview of the DeepQA project. _AI Magazine_ 31(3):59-79.
* Howell (2012) David Howell. 2012. _Statistical methods for psychology_. Cengage Learning.
* Khashabi et al. (2016) Daniel Khashabi, Tushar Khot, Ashish Sabharwal, Peter Clark, Oren Etzioni, and Dan Roth. 2016. Question answering via integer programming over semistructured knowledge. In _IJCAI_.
* Khot et al. (2015) Tushar Khot, Niranjan Balasubramanian, Eric Gribokoff, Ashish Sabharwal, Peter Clark, and Oren Etzioni. 2015. Exploring Markov logic networks for question answering. In _EMNLP_.
* Kwiatkowski et al. (2013) Tom Kwiatkowski, Eunsol Choi, Yoav Artzi, and Luke S. Zettlemoyer. 2013. Scaling semantic parsers with on-the-fly ontology matching. In _EMNLP_.
* Miller (1995) George Miller. 1995. WordNet: a lexical database for english. _Communications of the ACM_ 38(11):39-41.
* Pasupat and Liang (2015) Panupong Pasupat and Percy Liang. 2015. Compositional semantic parsing on semi-structured tables. In _ACL_.
* Richardson and Domingos (2006) Matthew Richardson and Pedro Domingos. 2006. Markov logic networks. _Machine learning_ 62(1-2):107-136.
* building and using a semantic parser and a knowledge hunting module. In _IJCAI_.
* Sun et al. (2016) Huan Sun, Hao Ma, Xiaodong He, Wen tau Yih, Yu Su, and Xifeng Yan. 2016. Table cell search for question answering. In _WWW_.
* Yin et al. (2015) Pengcheng Yin, Nan Duan, Ben Kao, Jun-Wei Bao, and Ming Zhou. 2015. Answering questions with complex semantic constraints on open knowledge bases. In _CIKM_.