Mapping to Declarative Knowledge for Word Problem Solving
Subhro Roy, Dan Roth
Introduction
Many natural language understanding situations require reasoning with respect to numbers or quantities – understanding financial news, sports results, or the number of casualties in a bombing. Math word problems form a natural abstraction to a lot of these quantitative reasoning problems. Consequently, there has been a growing interest in developing automated methods to solve math word problems [Kushman et al., 2014, Hosseini et al., 2014, Roy and Roth, 2015].
Understanding and solving math word problems involves interpreting natural language description of mathematical concepts, as well as understanding their interaction with the physical world. Consider the elementary school level arithmetic word problem shown in Fig 1. To solve the problem, one needs to understand that “apple pies” and “pecan pies” are kinds of “pies”, and hence, the number of apple pies and pecan pies needs to be summed up to get the total number of pies. Similarly, detecting that “5” represents “the number of pies per row” and applying dimensional analysis or unit compatibility knowledge, helps us infer that the total number of pies needs to be divided by to get the answer. Besides part-whole relationship and dimensional analysis, there are several other concepts that are needed to support reasoning in math word problems. Some of these involve understanding comparisons, transactions, and the application of math or physics formulas. Most of this knowledge can be encoded as declarative rules, as illustrated in this paper.
This paper introduces a framework for incorporating this “declarative knowledge” into word problem solving. We focus on arithmetic word problems, whose solution can be obtained by combining the numbers in the problem with basic operations (addition, subtraction, multiplication or division). For combining a pair of numbers or math sub-expressions, our method first predicts the math concept that is needed for it (e.g., subset relationship, dimensional analysis, etc.), and then predicts a declarative rule under that concept to infer the mathematical operation. We model the selection of declarative rules as a latent variable, which removes the need for expensive annotations for the intermediate steps.
The proposed approach has some clear advantages compared to existing work on word problem solving. First, it provides interpretability of the solution, without expensive annotations. Our method selects a declarative knowledge based inference rule for each operation needed in the solution. These rules provide an explanation for the operations performed. In particular, it learns to select relevant rules without explicit annotations for them. Second, each individual operation in the solution expression can be generated independently by a separate mathematical concept. This allows our method to handle multiple concepts in the same problem.
We show that existing datasets of arithmetic word problems suffer from significant vocabulary biases and, consequently, existing solvers do not do well on conceptually similar problems that are not biased in the same way. Our method, on the other hand, learns the right abstractions even in the presence of biases in the data. We also introduce a novel approach to gather word problems without these biases, creating a new dataset of problems.
The next section discusses related work. We next introduce the mathematical concepts required for arithmetic word problems, as well as the declarative rules for each concept. Section 4 describes our model – how we predict answers using declarative knowledge – and provides the details of our training paradigm. Finally, we provide experimental evaluation of our proposed method in Section 6, and then conclude with a discussion of future work.
Related Work
Our work is primarily related to three major strands of research - automatic word problem solving, semantic parsing, as well as approaches incorporating background knowledge in learning.
There has been a growing interest in automatically solving math word problems, with various systems focusing on particular types of problems. These can be broadly categorized into two types: arithmetic and algebra.
Arithmetic Word Problems Arithmetic problems involve combining numbers with basic operations (addition, subtraction, multiplication and division), and are generally directed towards elementary school students. ?), ?) as well as this work focus on this class of word problems. The works of ?) and ?) focus on arithmetic problems involving only addition and subtraction. Some of these approaches also try to incorporate some form of declarative or domain knowledge. ?) incorporates the transfer phenomenon by classifying verbs; ?) maps problems to a set of formulas. Both require extensive annotations for intermediate steps (verb classification for ?), alignment of numbers to formulas for ?), etc). In contrast, our method can handle a more general class of problems, while training only requires problem-equation pairs coupled with rate component annotations. ?) focuses only on using dimensional analysis knowledge, and handles the same class of problems as we do. In contrast, our method provides a framework for including any form of declarative knowledge, exemplified here by incorporating common concepts required for arithmetic problems.
Algebra Word Problems Algebra word problems are characterized by the use of (one or more) variables in contructing (one or more) equations. These are typically middle or high school problems. ?) looks at single equation problems, and ?) focuses on number word problems. ?) introduces a template based approach to handle general algebra word problems and several works have later proposed improvements over this approach [Zhou et al., 2015, Upadhyay et al., 2016, Huang et al., 2017]. There has also been work on generating rationale for word problem solving [Ling et al., 2017]. More recently, some focus turned to pre-university exam questions [Matsuzaki et al., 2017, Hopkins et al., 2017], which requires handling a wider range of problems and often more complex semantics.
2 Semantic Parsing
Our work is also related to learning semantic parsers from indirect supervision [Clarke et al., 2010, Liang et al., 2011]. The general approach here is to learn a mapping of sentences to logical forms, with the only supervision being the response of executing the logical form on a knowledge base. Similarly, we learn to select declarative rules from supervision that only includes the final operation (and not which rule generated it). However, in contrast to the semantic parsing work, in our case the selection of each declarative rule usually requires reasoning across multiple sentences. Also, we do not require an explicit grounding of words or phrases to logical variables.
3 Background Knowledge in Learning
Approaches to incorporate knowledge in learning started with Explanation based Learning (EBL) [DeJong, 1993, DeJong, 2014]. EBL uses domain knowledge based on observable predicates, whereas we learn to map text to predicates of our declarative knowledge. More recent approaches tried to incorporate knowledge in the form of constraints or expectations from the output [Roth and tau Yih, 2004, wei Chang et al., 2007, Chang et al., 2012, Ganchev et al., 2010, Smith and Eisner, 2006, Naseem et al., 2010, Bisk and Hockenmaier, 2012, Gimpel and Bansal, 2014].
Finally, we note that there has been some work in the context of Question Answering on perturbing questions or answers as a way to test or assure the robustness of the approach or lack of [Khashabi et al., 2016, Jia and Liang, 2017]. We make used of similar ideas in order to generate an unbiased test set for Math word problems (Sec. 6).
Knowledge Representation
We introduce here our representation of domain knowledge. We organize the knowledge hierarchically in two levels – concepts and declarative rules. A math concept is a phenomenon which needs to be understood to apply reasoning over quantities. Examples of concepts include part-whole relations, dimensional analysis, etc. Under each concept, there are a few declarative rules, which dictate which operation is needed in a particular context. An example of a declarative rule under part-whole concept can be that “if two numbers quantify “parts” of a larger quantity, the operation between them must be addition”. These rules use concept specific predicates, which we exemplify in the following subsections.
Since this work focuses on arithmetic word problems, we consider math concepts which are most common in these problems, as follows:
Transfer: This involves understanding the transfer of objects from one person to another. For example, the action described by the sentence “Tim gave 5 apples to Jim”, results in Tim losing “5 apples” and Jim gaining “5 apples”.
Dimensional Analysis: This involves understanding compatibility of units or dimensions. For example, “30 pies” can be divided by “5 pies per row” to get the number of rows.
Part-Whole Relation: This includes asserting that if two numbers quantify parts of a larger quantity, they are to be added. For example, the problem in Section 1 involves understanding “pecan pies” and “apple pies” are parts of “pies”, and hence must be added.
Explicit Math: Word problems often mention explicit math relationships among quantities or entities in the problem. For example, “Jim is 5 inches taller than Tim”. This concept captures the reasoning needed for such relationships.
Each of these concepts comprises a small number of declarative rules which determine the math operations; we describe them below.
Consider the following excerpt of a word problem exhibiting a transfer phenomenon: “Stephen owns books. Daniel gave him books. The goal of the declarative rules is to determine which operation is required between and , given that we know that a transfer is taking place. We note that a transfer usually involves two entities, which occur as subject and indirect object in a sentence. Also, the direction of transfer is determined by the verbs associated with the entities. We define a set of variables to denote these properties; we define as Subj1, Verb1, IObj1 the subject, verb and indirect object associated with the first number, and as Subj2, Verb2, IObj2 the subject, verb and indirect object related to the second number. For the above example, the assignment of the variables are shown below:
[Stephen]Subj1 [owns]Verb1 books. [Daniel]Subj2 [gave]Verb2 [him]IObj2 books.
In order to determine the direction of transfer, we require some classification of verbs. In particular, we classify each verb into one of five classes: HAVE, GET, GIVE, CONSTRUCT and DESTROY. The HAVE class consists of all verbs which signify the state of an entity, such as “have”, “own”, etc. The GET class contains verbs which indicate the gaining of things for the subject. Examples of such verbs are “acquire”, “borrow”, etc. The GIVE class contains verbs which indicate the loss of things for the subject. Verbs like “lend”, “give” belong to this class. Finally CONSTRUCT class constitutes verbs indicating construction or creation, like “build”, “fill”, etc., while DESTROY verbs indicate destruction related verbs like “destroy”, “eat”, “use”, etc. This verb classification is largely based on the work of [Hosseini et al., 2014].
Finally, the declarative rules for this concept have the following form:
2 Dimensional Analysis
We now look at the use of dimensional analysis knowledge in word problem solving. To use dimensional analysis, one needs to extract the units of numbers as well as the relations between the units. Consider the following excerpt of a word problem: “Stephen has bags. Each bag has apples. Knowing that the unit of is “bag” and the effective unit of is “apples per bag”, allows us to infer that the numbers can be multiplied to obtain the total number of apples.
To capture these dependencies, we first introduce a few terms. Whenever a number has a unit of the form “A per B”, we refer to “A” as the unit of the number, and refer to “B” as the rate component of the number. In our example, the unit of is “apple”, and the rate component of is “bag”. We define variables Unit1 and Rate1 to denote the unit and the rate component of the first number respectively. We similarly define Unit2 and Rate2. For the above example, the assignment of variables are shown below:
Stephen has [bags]Unit1. Each [bag]Rate2 has [apples]Unit2.
Finally, the declarative rule applicable for our example has the following form:
We only have rules for dimensional analysis. They generate multiplication or division operations.
3 Explicit Math
In this subsection, we want to capture the reasoning behind explicit math relationships expressed in word problems such as the one described in: “Stephen has apples. Daniel has more apples than Stephen”. We define by Math1 and Math2 any explicit math term associated with the first and second numbers respectively. As was the case for transfers, we also define Subj1, IObj1, Subj2, and IObj2 to denote the entities participating in the math relationship. The assignment of these variables in our example is:
[Stephen]Subj1 has apples. [Daniel]Subj2 has [more apples than]Math2 [Stephen]IObj2.
We classify explicit math terms into one of three classes - ADD, SUB and MUL. ADD comprises terms for addition, like “more than”, “taller than” and “heavier than”. SUB consists of terms for subtraction like“less than”, “shorter than”, etc., and MUL contains terms indicating multiplication, like “times”, “twice” and “thrice”. Finally, the declarative rule that applies for our example is:
We have only rules for explicit math.
4 Part-Whole Relation
Understanding part-whole relationship entails understanding whether two quantities are hyponym, hypernym or siblings (that is, co-hyponym, or parts of the same quantity). For example, in the excerpt “Mrs. Hilt has 5 pecan pies and 4 apple pies”, determining that pecan pies and apple pies are parts of all pies, helps inferring that addition is needed. We have 3 simple rules which directly map from Hyponym, Hypernym or Sibling detection to the corresponding math operation. For the above example, the applicable declarative rule is:
The rules for part-whole concept can generate addition and subtraction operations. Table 1 gives a list of all the declarative rules. Note that all the declarative rules are designed to determine an operation between two numbers only. We introduce a strategy in Section 4, which facilitates combining sub-expressions with these rules.
Mapping of Word Problems to Declarative Knowledge
Given an input arithmetic word problem , the goal is to predict the math expression , which generates the correct answer. In order to derive the expression from the word problem , we leverage math concepts and declarative rules that we introduced in Section 3. In order to combine two numbers mentioned in , we first predict a concept , and then we choose a declarative knowledge rule from . The rule generates the math operation needed to combine the two numbers. Consider the first example in Table 2. To combine and , we first decide on the transfer concept, and then choose an appropriate rule under transfer to generate the operation.
Next we need to combine the sub-expression with the number . However, our inference rules were designed for the combination of two numbers only. In order to combine a sub-expression, we choose a representative number from the sub-expression, and use that number to determine the operation. In our example, we choose the number as the representative number for , and decide the operation between and , following a similar procedure as before. This operation is now used to combine and .
The representative number for a sub-expression is chosen such that it preserves the reasoning needed for the combination of this sub-expression with other numbers. We follow a heuristic to choose a representative number from a sub-expression:
For transfers and part-whole relationship, we choose the representative number of the left subtree.
In case of rate relationship, we choose the number which does not have a rate component.
In case of explicit math, we choose the number which is not directly associated with the explicit math expression.
Given the input word problem , the solution math expression is constructed by combining numbers in with operations. We refer to the set of operations used in an expression as . Each operation in is generated by first choosing a concept , and then selecting a declarative rule from that concept.
In order to discriminate between multiple candidate solution expressions of a word problem , we score them using a linear model over features extracted from the derivation of the solution. Our scoring function has the following form:
where and are feature vectors related to concept , and declarative rule , respectively, and and are the corresponding weight vectors. The term is the score for the selection of , and the term is the score for the selection of . Finally, the total score is the sum of the scores of all concepts and rule choices, over all operations of .
2 Learning
We wish to estimate the parameters of the weight vectors and , such that our scoring function assigns a higher score to the correct math expression, and a lower score to other competing math expressions. For learning the parameters, we assume access to word problems paired with the correct math expression. We show in Section 5 that certain simple heuristics and rate component annotations can be used to create somewhat noisy annotations for the concepts needed for individual operations. Hence, we will assume for our formulation access to concept supervision as well. We thus assume access to examples of the following form: .
We do not have any supervision for declarative rule selection, which we model as a latent variable.
Two Stage Learning: A straightforward solution for our learning problem could be to jointly learn and using latent structured SVM. However, we found that this model does not perform well. Instead, we chose a two stage learning protocol. At the first stage, we only learn , the weight vector for scoring the declarative rule choice. Once learned, we fix the parameters for , and then learn the parameters for .
In order to learn the parameters for , we solve:
where implies that is a declarative rule for concept , signify that the declarative rule generates operation , and represents a measure of dissimilarity between operations and . The above objective is similar to that of latent structured SVM. For each operation in the solution expression , the objective tries to minimize the difference between the highest scoring rule from its concept , and highest scoring rule from which explains or generates the operation .
Next we fix the parameters of , and solve:
This is equivalent to a standard structured SVM objective. We use a loss for . Note that fixing the parameters of determines the scores for rule selection, removing the need for any latent variables at this stage.
3 Inference
Given an input word problem , inferring the best math expression involves computing , where is the set of all math expressions that can be created by combining the numbers in with basic math operations.
The size of is exponential in the number of quantities mentioned in . As a result, we perform approximate inference using beam search. We initialize the beam with the set of all numbers mentioned in the problem . At each step of the beam search, we choose two numbers (or sub-expressions) and from , and then select a math concept and a declarative rule to infer an operation . We create a new sub-expression by combining the sub-expressions and with operation . We finally create a new set from , by removing and from it, and adding to it. We remove from the beam, and add all such modified sets to the beam. We continue this process until all sets in the beam have only one element in them. We choose the highest scoring expression among these elements as the solution expression.
Model and Implementation Details
Each word problem in our dataset is annotated with the solution math expression, along with alignment of numbers from the problem to the solution expression. In addition, we also have annotations for the numbers which possess a rate component. An example is shown in Fig 2.
This is the same level of supervision used in [Roy and Roth, 2017]. Many of the annotations can be extracted semi-automatically. The number list is extracted automatically by a number detector, the alignments require human supervision only when the same numeric value is mentioned multiple times in the problem. Most of the rate component annotations can also be extracted automatically, see [Roy and Roth, 2017] for details.
We apply a few heuristics to obtain noisy annotations for the math concepts for operations. Consider the case for combining two numbers and , by operation . We apply the following rules:
If we detect an explicit math pattern in the neighborhood of or , we assign concept to be Explicit Math.
If is multiplication or division, and one of or has a rate component, we assign to be Dimensional Analysis.
If is addition or subtraction, we check if the dependent verb of both numbers are identical. If they are, we assign to be Part-Whole relationship, otherwise, we assign it to be Transfer. We extract the dependent verb using the Stanford dependency parser [Chen and Manning, 2014].
The annotations obtained via these rules are of course not perfect. We could not detect certain uncommon rate patterns like “dividing the cost ways”, and “I read same number of books days running”. There were part-whole relationships exhibited with complementary verbs, as in “I won games, and lost .”. Both these cases lead to noisy math concept annotations.
However, we tested a small sample of these annotations, and found less than of them to be wrong. As a result, we assume these annotations to be correct in our problem formulation.
2 Features
We use dependency parse labels and a small set of rules to extract subject, indirect object, dependent verb, unit and rate component of each number mentioned in the problem. Details of these extractions can be found in the released codebase. Using these extractions, we define two feature functions and , where is the input word problem, and and are the concept and the declarative rule for operation respectively. constitutes the following features:
For part-whole relationships, we add indicators for a list of words like “remaining”, “rest”, “either”, “overall”, “total”, conjoined with the part-whole function in (Hyponymy, Hypernymy, Sibling).
Unigrams from the neighborhood of numbers being combined.
Finally, generates the following features:
If is related to dimensional analysis, we add features indicating the presence of a rate component in the combining numbers.
If is part-whole, we add features indicating whether the verbs of combining numbers are identical.
Note that these features capture several interpretable functions like coreference, hyponymy, etc.
Experiments
We first evaluate our approach on the existing datasets of AllArith, AllArithLex, and AllArithTmpl [Roy and Roth, 2017]. AllArithLex and AllArithTmpl are subsets of the AllArith dataset, created to test the robustness to new vocabulary, and new equation forms respectively. We compare to the top performing systems for arithmetic word problems. They are as follows:
: Template based algebra word problem solver of [Kushman et al., 2014].
LCA++ : System of [Roy and Roth, 2015] based on lowest common ancestors of math expression trees.
: Unit dependency graph based solver of [Roy and Roth, 2017].
We refer to our approach as . For all solvers, we use the system released by the respective authors. The system of expects an equation as the answer, whereas our dataset contains only math expressions. We converted expressions to equations by introducing a single variable, and assigning the math expression to it. For example, an expression “(2 + 3)” gets converted to “X = (2 + 3)”.
The first few columns of Table 3 shows the performance of the systems on the aforementioned datasetsResults on the AllArith datasets are slightly different from [Roy and Roth, 2017], since we fixed several ungrammatical sentences in the dataset. The performance of is on par or lower than some of the existing systems. We analyzed the systems, and found most of them to be not robust to perturbations of the problem text; Table 4 shows a few examples. We further analyzed the datasets, and identified several biases in the problems (in both train and test). Systems which remember these biases get an undue advantage in evaluation. For example, the verb “give” only appears with subtraction, and hence the models are learning an erroneous correlation of “give” with subtraction. Since the test also exhibit the same bias, these systems get all the “give”-related questions correct. However, they fail to solve the problem in Table 4, where “give” results in addition.
We also tested on the addition subtraction problems dataset released by [Hosseini et al., 2014]. It achieved a cross validation accuracy of , which is competitive with the state of the art accuracy of achieved with the same level of supervision. The system of [Mitra and Baral, 2016] achieved accuracy on this dataset, but requires rich annotations for formulas and alignment of numbers to formulas.
2 New Dataset Creation
In order to remove the aforementioned biases from the dataset, we augment it with new word problems collected via a crowdsourcing platform. These new word problems are created by perturbing the original problems minimally, such that the answer is different from the original problem. For each word problem with an answer expression in our original dataset AllArith, we replace one operation in to create a new math expression . We ask annotators to modify problem minimally, such that is now the solution to the modified word problem.
We create from either by replacing an addition with subtraction or vice versa, or by replacing multiplication with division or vice versa. We do not replace addition and subtraction with multiplication or division, since there might not be an easy perturbation that supports this conversion. We only allowed perturbed expressions which evaluate to values greater than . For example, we generate the expression “(3+2)” from “(3-2)”, we generated expressions “(10+2)/4” and “(10-2)*4” for the expression “(10-2)/4”. We generate all possible perturbed expressions for a given answer expression, and ask for problem text modification for each one of them.
We show the annotators the original problem text paired with a perturbed answer . The instructions advised them to copy over the given problem text, and modify it as little as possible so that the given math expression is now the solution to this modified problem. They were also instructed to not add or delete the numbers mentioned in the problem. If the original problem mentions two “3”s and one “2”, the modified problem should also contain two “3”s and one “2”.
We manually pruned problems which did not yield the desired solution , or were too different from the input problem . This procedure gave us a set of new word problems, which we refer to as Perturb. Finally we augment AllArith with the problems of Perturb, and call this new dataset Aggregate. Aggregate has a total of problems.
The addition of the Perturb problems ensures that the dataset now has problems with similar lexical items generating different answers. This minimizes the bias that we discussed in subsection 6.1. To quantify this, consider the probability distribution over operations for a quantity , given that word is present in the neighborhood of . For an unbiased dataset, you will expect the entropy of this distribution to be high, since the presence of a single word in a number neighborhood will seldom be completely informative for the operation. We compute the average of this entropy value over all numbers and neighborhood words in our dataset. AllArith and Perturb have an average entropy of and respectively, whereas Aggregate’s average entropy is , indicating that, indeed, the complete data set is significantly less biased.
3 Generalization from Biased Dataset
First, we evaluate the ability of systems to generalize from biased datasets. We train all systems on AllArith, and test them on Perturb (which was created by perturbing AllArith problems). The last column of Table 3 shows the performance of systems in this setting. outperforms all other systems in this setting with around absolute improvement over . This shows that declarative knowledge allows the system to learn the correct abstractions, even from biased datasets.
4 Results on the New Dataset
Finally, we evaluate the systems on the Aggregate dataset. Following previous work [Roy and Roth, 2017], we compute two subsets of Aggregate comprising problems each, using the MAWPS [Koncel-Kedziorski et al., 2016] system. The first, called AggregateLex, is one with low lexical repetitions, and the second called AggregateTmpl is one with low repetitions of equation forms. We also evaluate on these two subsets on a 5-fold cross-valiation. Columns 4-6 of Table 3 show the performance of systems on this setting. significantly outperforms other systems on Aggregate and AggregateLex, and is similar to on AggregateTmpl. There is a absolute improvement on AggregateLex, showing that is significantly more robust to low lexical overlap between train and test. The last column of Table 4 also shows that the other systems do not learn the right abstraction, even when trained on Aggregate.
5 Analysis
Coverage of the Declarative Rules We chose math concepts and declarative rules based on their prevalance in arithmetic word problems. We found that the four concepts introduced in this paper cover almost all the problems in our dataset; only missing problems involving application of area formulas. We also checked earlier arithmetic problem datasets from the works of [Hosseini et al., 2014, Roy and Roth, 2015], and found that the math concepts and declarative rules introduced in this paper cover all their problems.
A major challenge in applying these concepts and rules to algebra word problems is the use of variables in constructing equations. Variables are often implicitly described, and it is difficult to extract units, dependent verbs, associated subjects and objects for the variables. However, we need these extractions in order to apply our declarative rules to combine variables. There has been some work to extract meaning of variables [Roy et al., 2016] in algebra word problems; an extension of this can possibly support the application of rules in algebra word problems. We leave this exploration to future work.
Higher standard word problems often require application of math formulas like ones related to area, interest, probability, etc. Extending our approach to handle such problems will involve encoding math formulas in terms of concepts and rules, as well as adding concept specific features to the learned predictors. The declarative rules under the Explicit Math category currently handles simple cases, this set needs to be augmented to handle complex number word problems found in algebra datasets.
Gains achieved by Declarative Rules Table 5 shows examples of problems which gets right, but does not. The gains can be attributed to the injection of declarative knowledge. Earlier systems like try to learn the reasoning required for these problems from the data alone. This is often difficult in the presence of limited data, and noisy output from NLP tools. In contrast, we learn probabilistic models for interpretable functions like coreference, hyponymy, etc., and then use declarative knowledge involving these functions to perform reasoning. This considerably reduces the complexity of the target function to be learnt, and hence we end up with a more robust model.
Effect of Beam Size We used a beam size of in all our experiments. However, we found that varying the beam size does not effect the performance significantly. Even lowering the beam size to reduced performance by only .
Weakness of Approach A weakness of our method is the requirement to have all relevant declarative knowledge during training. Many of the component functions (like coreference) are learnt through latent alignments with no explicit annotations. If too many problems are not explained by the knowledge, the model will learn noisy alignments for the component functions.
Table 6 shows the major categories of errors with examples. of the errors are due to extraneous number detection. We use a set of rules based on units of numbers, to detect such irrelevant numbers. As a result, we fail to detect numbers which are irrelevant due to other factors, like associated entities, or associated verb. We can potentially expand our rule based system to detect those, or replace it by a learned module like [Roy and Roth, 2015]. Another major source of errors is parsing of rate components, that is, understanding “earns per home”. Although we learn a model for coreference function, we make several mistakes related to coreference. For the example in Table 6, we fail to detect the coreference between “team member” and “people”.
Conclusion
In this paper, we introduce a framework for incorporating declarative knowledge in word problem solving. Our knowledge based approach outperforms all other systems, and also learns better abstractions from biased datasets. Given that the variability in text is much larger than the number of declarative rules that governs Math word problems, we believe that this is a good way to introduce Math knowledge to a natural language understanding system. Consequently, future work will involve extending our approach to handle a wider range of word problems, possibly by supporting better grounding of implicit variables and including a larger number of math concepts and declarative rules. An orthogonal exploration direction is to apply these techniques to generate summaries of financial or sports news, or generate statistics of war or gun violence deaths from news corpora. A straightforward approach can be to augment news documents with a question asking for the required information, and treating this augmented news document as a math word problem.
Code and dataset are available at https://github.com/CogComp/arithmetic.
Acknowledgments
This work is funded by DARPA under agreement number FA8750-13-2-0008, and a grant from the Allen Institute for Artificial Intelligence (allenai.org).