File Information

File: 05-lr/acl_arc_1_sum/cleansed_text/xml_by_section/metho/04/w04-2006_metho.xml

Size: 18,509 bytes

Last Modified: 2025-10-06 14:09:17

<?xml version="1.0" standalone="yes"?>
<Paper uid="W04-2006">
  <Title>A step towards incremental generation of logical forms</Title>
  <Section position="4" start_page="0" end_page="0" type="metho">
    <SectionTitle>
3 Our approach
</SectionTitle>
    <Paragraph position="0"/>
    <Section position="1" start_page="0" end_page="0" type="sub_section">
      <SectionTitle>
3.1 Brief overview
</SectionTitle>
      <Paragraph position="0"> A&amp;quot;it-Mokhtar (A&amp;quot;it-Mokhtar et al., 2002) defines an incremental rule as &amp;quot;a self-contained operation, whose result depends on the set of contextual restrictions stated in the rule itself. [...] If a sub-string matches the contextual restrictions, the corresponding operation applies without later backtracking&amp;quot; . This is the gold prop-erty we achieved for our semantic rules.</Paragraph>
      <Paragraph position="1"> Now the question is: how are we going to define an incremental rule if in our output we have predicates sharing variables, scope relations to define, and so on? We propose a solution based on the following: * we split each rule in three parts: a) the element or elements to transform (notice that each rule can transform more than one element); b) the context of the elements to transform (it can be seen as a set of conditions that, being verified, indicate that the rule can be applied); c) the output (specified by a set of functions that will transform the elements according to the chosen representation).</Paragraph>
      <Paragraph position="2"> * we assume that there is a set of fixed variables associated with each word. Each variable has the position the word occupies in the text as index. As a result, if two elements are connected (directly or not) they know each other variables, and they can be used to build their formulas.</Paragraph>
      <Paragraph position="3"> Moreover, in order to incrementally add new information to our system without having to rewrite more general rules, semantic rules are organised in a subsumption hierarchy. As a result, if a set of rules can be applied, only the rules that do not subsume other rules are triggered. null</Paragraph>
    </Section>
    <Section position="2" start_page="0" end_page="0" type="sub_section">
      <SectionTitle>
3.2 Semantic rules
3.2.1 Syntax
</SectionTitle>
      <Paragraph position="0"> Let W be a set of words, C a set of category labels, D a set of dependency labels and is used to represent an underspecified value.</Paragraph>
      <Paragraph position="1"> Element: elem(w, c) is an element, where:  * w [?] { } [?] W; * c [?] { } [?] C.</Paragraph>
      <Paragraph position="2"> Arrow: arrow(c1, c2, d, l) is a dependency, and no arrow(c1, c2, d, l) a non existing dependency where: * c1, c2 [?] C (c1 and c2 are, respectively, the source and the target); * d [?] { } [?] {L, R} (d is the dependency orientation: L if it goes from right to left, R from left to right); * l [?] { } [?] D (l is a possibly undefined dependency label).</Paragraph>
      <Paragraph position="3"> Semantic Rule: [Ri] S : Th mapsto- G is a semantic rule where: * S is a possibly empty set of elements (the elements to operate on); * Th is a possible empty set of existing and non existing dependencies (the rule's context); * G is a set of functions, that vary ac null cording to the chosen representation language.</Paragraph>
      <Paragraph position="4"> Extra constraints over semantic rules syntax can be found in (Coheur et al., 2003b; Coheur, 2004).</Paragraph>
      <Paragraph position="5">  In the following we define the subsumption relation between semantic rules. This relation establishes the hierarchy of rules and it is based on the subsumption relation between categories. Although we use labels to represent categories, each category is a set of attribute/value pairs organized in a subsumption hierarchy.</Paragraph>
      <Paragraph position="7"> Finally, if R1 subsumes R2, R2 is said to be more specific than R1. If both rules can apply, only the most specific rule does so.</Paragraph>
    </Section>
    <Section position="3" start_page="0" end_page="0" type="sub_section">
      <SectionTitle>
3.3 AsdeCopas
</SectionTitle>
      <Paragraph position="0"> AsdeCopas is integrated in a system called Javali (Coheur et al., 2003a), where a module called Ogre (Coheur, 2004) generates a graph, which is AsdeCopas' input. Given the question Qual a maior praia do Algarve(Which is the largest beach in Algarve?), the following figure shows the graph generated by Ogre: Each graph node is a triple, representing: a) a word; b) its associated category; c) its position (in the text). Each graph arrow is also a triple,  maintaining information about: a) the position associated with the source node; b) the position associated with the target node; c) the arrow label (possibly undefined)1.</Paragraph>
      <Paragraph position="1"> AsdeCopas is implemented in Prolog. It goes through each graph node and: * identifies the rules that can be applied; * chooses the most specific rules; * triggers the most specific rules.</Paragraph>
      <Paragraph position="2"> Then it continuous to the next node. Notice that since rules are self-contained, the way it goes through the graph and the order of rule's application is not relevant, and results remain the same. Notice also, that at each step more than one rule can be triggered.</Paragraph>
      <Paragraph position="3"> AsdeCopas is responsible for variable generation. Thus, instead of randomly generating variables, each variable is indexed by the position that the related word occupies in the text. Although apparently naive, this is an important feature of our system which allows different semantic processes to run at different times and results to be merged at the end.</Paragraph>
    </Section>
  </Section>
  <Section position="5" start_page="0" end_page="0" type="metho">
    <SectionTitle>
4 Case studies
</SectionTitle>
    <Paragraph position="0"> We present three applications. First we show how AsdeCopas can be used in a disambiguation process. Then we use it to build formulas in MRS (Copestake et al., 2001). Finally, we present an application where AsdeCopas generates logical forms from questions. Quantification is ignored in this last task.</Paragraph>
    <Paragraph position="1"> Notice, however, that in order to have a serious evaluation of AsdeCopas capabilities, it needs to be applied to more demanding tasks.</Paragraph>
    <Section position="1" start_page="0" end_page="0" type="sub_section">
      <SectionTitle>
4.1 Disambiguation process
</SectionTitle>
      <Paragraph position="0"> Consider again the quantifier qualquer. As we saw, it can take several semantic values. Sometimes the syntactic context allows to limit these 1Within our applications, dependencies are unlabelled, and go from dependents to the head. The motivation behind these structures came from the 5P Paradigm. possibilities. In some situations, one semantic value can be chosen, allowing a full desambiguation. null Let us assume that all is an underspecified value (Poesio, 1994) representing all of the semantic values. If no desambiguation takes place, this is the value that will represent this word's semantics. Alternatively, we could opt for a default value. For example, the universal value since it is the most common.</Paragraph>
      <Paragraph position="1"> Let us opt for the universal default value.</Paragraph>
      <Paragraph position="2"> We can write a default rule, as the following:</Paragraph>
      <Paragraph position="4"> Assuming again, as we did in section 2, that on the right of the main verb in the scope of negation, qualquer takes the value indiscriminate the following rule allows to choose the correct value for qualquer in that</Paragraph>
      <Paragraph position="6"> : {arrow(qt, n, L, ), arrow(n, v, L, ), arrow(neg, v, R, )} mapsto- {sem(qt) = indiscriminate} R2 is more specific than rule R1, thus it is  applied in these particular conditions. In order to disambiguate, or at least to limit semantic values, other semantic rules would have to be added.</Paragraph>
      <Paragraph position="7"> Consider now the Portuguese quantifier algum. When it appears on the left side of a noun (n), it means &amp;quot;some&amp;quot; (some). On the right side it means &amp;quot;none&amp;quot; (none), unless it is in the scope of negation. In this particular situation it has an universal value. The following rules allow the right values to be chosen - in this particular situations - for this quantifier (notice that rule R5 is more specific than rule R4):  [R3] {elem(algum, qt)} : {arrow(qt, n, R, )} mapsto- {sem(qt) = some}  an object with category v is the same object with category n that receives an arrow from a qt. An index is used when we need to distinguish two different objects with the same category.</Paragraph>
      <Paragraph position="9"> A precise study of the disambiguation of the word qualquer can be found in (Coheur, 2003) and (Coheur, 2004), where we try to go as far as possible in the disambiguation process of this word (an some paraphrases of it), by using its syntactic context. Obviously, there are limits to this task, as in some situations information from semantics and pragmatics should also be taken into account to find the correct semantic value.</Paragraph>
    </Section>
    <Section position="2" start_page="0" end_page="0" type="sub_section">
      <SectionTitle>
4.2 Logical forms generation
</SectionTitle>
      <Paragraph position="0"> Linking syntax with semantics is not an easy task. As Allen says in (Allen, 1995) there seems to be a structural inconsistency between syntactic structure and the structure of the logical form.</Paragraph>
      <Paragraph position="1"> We can ease this process by using an adequate representation language. In fact, although the concept is not new (Hobbs, 1983), state of the art frameworks such as (Moll'a et al., 2003; Baldridge and Kruijff, 2002) are using flat semantic representations, taht is formulas with no embedded structures (see (Moll'a, 2000) for details about flatness), which simplify the syntactic-semantic interface. At the same time, and because it is not reasonable to generate all the possible interpretations of a sentence, many frameworks are using representation languages that leave underspecified semantic interpretations (also an old concept (Woods, 1978)). MRS (Copestake et al., 2001) uses a flat representation with explicit pointers (called handles) to encode scope effects, corresponding to recursive structures in more conventional formal semantic representations.</Paragraph>
      <Paragraph position="2"> We have chosen this language because it has three fundamental characteristics: a) it is a flat language; b) it allows the treatment of quantification; c) it allows underspecification. Un3Notice, that by choosing the universal value, in the final formula this quantifier will no longer be in the scope of negation.</Paragraph>
      <Paragraph position="3"> derspecified MRS structures can be converted into scope-resolved structures that, according to (Copestake et al., 1997), &amp;quot;correspond to those obeyed by a conventionally written bracketed structure&amp;quot;.</Paragraph>
      <Paragraph position="4"> As an example, MRS represents Qualquer menino adora algum c~ao(Every boy adores some dog) in the following underspecified structure (the =q constraint stands for the equality modulo quantifiers and relates a handle in an argument position to a label (Copestake et al., 2001)):</Paragraph>
      <Paragraph position="6"> where h1 outscopes h3 and h5 outscopes h7.</Paragraph>
      <Paragraph position="7"> Then, by means of a set of constraints, such that an MRS structure must be a tree, there should be a unique top-level handle, etc., the following readings are obtained: p=h1 (wide scope &amp;quot;every&amp;quot;)</Paragraph>
      <Paragraph position="9"> In the next section we will show how to reach these formulas.</Paragraph>
      <Paragraph position="10">  We will show how to reach an underspecified MRS representation for constructions as</Paragraph>
      <Paragraph position="12"> c~ao682. Notice that, for expository reasons, we are simplifying the process. Actual rules use fine grained categories for quantifiers, and scope restrictions are imposed differently (Coheur, 2004).</Paragraph>
      <Paragraph position="13"> In order to perform this task we use the following functions:  ex: sem(Maria) = Maria6; * var returns a variable ex: var(Maria) = x71; * handle returns a variable for an handle ex: handle(Maria) = h71; * restrictor returns a variable for a restrictor ex: restrictor(Maria) = r71; * scope returns a scope variable ex: scope(Maria) = s71.</Paragraph>
      <Paragraph position="14">  The following rule applies to nouns, either common nouns (nc) or proper nouns (npr), everytime it finds one (because the arrow set is empty).</Paragraph>
      <Paragraph position="15"> [R1]{elem( , n)} : [?] mapsto- {handle(n): sem(n)(var(n)} If only this rule is defined, the first sentence is translated into:  con, in this application they are generated from sentence words.</Paragraph>
      <Paragraph position="16"> Notice that a new rule needs to be defined for the situations where the npr arrows an nc and not a v, since we want to translate m~ae807 Maria81 into m~ae(x80), NAME(x80, Maria) and not into m~ae(x80), NAME(x81, Maria). In order to do this, we need only to add a rule for npr (like the previous rule) to be applied when a npr arrows an nc. This rule, being more specific than rule R2, is applied in this particular situation. As the npr is connected with the nc, it &amp;quot;knows&amp;quot; its variable, which can be used is the associated formula.</Paragraph>
      <Paragraph position="17"> The next rule is applied to a verb (v) when the verb has an n arrowing from left (typically the subject) and an n arrowing from right (typically the direct object), and no preposition arrows these nouns.</Paragraph>
      <Paragraph position="18"> [R3]{elem( , v)} : {arrow(ni, v, R, ), arrow(nj, v, L, ), no arrow(prep, ni, R), no arrow(prep, nj, R)} mapsto- {handle(v):sem(v)(var(v),var(ni), var(nj))} As a result, in the first sentence, adora is translated into: h69:adora(x69, x68, x71) and, in the second one, it is translated into: h680:adora(x680, x679, x682).</Paragraph>
      <Paragraph position="19"> Notice that, at this point, although we don't have rules for all the elements within the example sentences, we already have a partial representation.</Paragraph>
      <Paragraph position="20"> Consider now, a generic rule for quantifiers (qt): [R4] {elem( ,qt)} : {arrow(qt, nc, , )} mapsto-{handle(qt): sem(qt)(var(nc), restrictor(qt), scope(qt)), restrictor(qt) =q handle(nc)} Now, the results depend on previous processing: if the disambiguation task described in the previous section was performed, sem(qualquer) = every and sem(algum) = some. Otherwise, underspecified values are used.</Paragraph>
      <Paragraph position="21"> 7mother.</Paragraph>
      <Paragraph position="22"> Let us consider that the disambiguation stage took place before. Thus, this rule adds to the first sentence: h67: every(x68, r67, s67), r67 =q h68 and to the second sentence: h678: every(x679, r678, s678), r678 =q h679 and h681: some(x682, r681, s681), r681 =q h682.</Paragraph>
      <Paragraph position="23"> Notice that we reach the underspecified formula from 4.2.1 for the first sentence. We will conclude now this example. It should be clear that additional rules could impose extra constraints to the formula, avoiding spurious ambiguities.</Paragraph>
    </Section>
    <Section position="3" start_page="0" end_page="0" type="sub_section">
      <SectionTitle>
4.3 Question interpretation
</SectionTitle>
      <Paragraph position="0"> From system Edite we inherited a corpus of 680 questions about tourist resources and we made a preliminar evaluation over 30 questions.</Paragraph>
      <Paragraph position="1"> There was no pre-processing of these questions, no compound terms were detected, no mistakes were corrected.</Paragraph>
      <Paragraph position="2"> Let &amp;quot;correct representation&amp;quot; be a set of formulas representing a question, where the exact number of expected predicates are produced, and variables are in the correct places.</Paragraph>
      <Paragraph position="3"> Let &amp;quot;system representation&amp;quot; be the set of formulas that the system suggests as the question representation. Each question can have more than one &amp;quot;system representation&amp;quot;. Moreover, a correct &amp;quot;system representation&amp;quot; is a &amp;quot;system representation&amp;quot; that is equal to the &amp;quot;correct representation&amp;quot;. null A general evaluation (of the whole system) results in a precision of 0,19 (number of correct &amp;quot;system representations&amp;quot;/number of total &amp;quot;system representations&amp;quot;) and a recall of 0,77 (number of correct &amp;quot;system representations&amp;quot;/30). If we eliminate two particularly bad results (one associated 42 &amp;quot;system representations&amp;quot; to a question and the other 21), we have a precision of 0,37.</Paragraph>
      <Paragraph position="4"> The low precision results from previous stages, as several graphs are associated with each question. In fact, with the actual set of semantic rules only one representation is associated with each graph.</Paragraph>
      <Paragraph position="5"> Nevertheless, the analysis is not over. The majority of &amp;quot;system representations&amp;quot; produced by AsdeCopas are just incomplete and result from unknown words. For example, the statement Quais os roteiros pedestres sinalizados em Lisboa?(Which are the signalised footways in Lisbon?), originated the following formula, where AM is the predicate for adjectival modification and ? indicates the focus of the question:</Paragraph>
      <Paragraph position="7"> As the word sinalizados was not recognised, the &amp;quot;system representation&amp;quot; is not correct, because a predicate associated with this word is missing. Nevertheless, most of the information contained in the question is retrieved.</Paragraph>
      <Paragraph position="8"> Within AsdeCopas framework a special effort was made with paraphrastic relations. As an example, both phrases Quais os hot'eis com piscina?(Which are the hotels with a swimming pool?) and Em que hot'eis h'a piscina?(In which hotels is there a swimming pool?), result in the following formulas:</Paragraph>
      <Paragraph position="10"> Note that in order to reach this result, we had just to look into the particular syntactic conditions that make verb haver (to have) behave as the preposition com (with).</Paragraph>
    </Section>
  </Section>
class="xml-element"></Paper>
Download Original XML