File Information
File: 05-lr/acl_arc_1_sum/cleansed_text/xml_by_section/metho/92/c92-1009_metho.xml
Size: 21,165 bytes
Last Modified: 2025-10-06 14:12:55
<?xml version="1.0" standalone="yes"?> <Paper uid="C92-1009"> <Title>Feature Structure Based Semantic Head Driven Generation</Title> <Section position="3" start_page="0" end_page="0" type="metho"> <SectionTitle> 2 Phrase Description(PD) </SectionTitle> <Paragraph position="0"> Generation knowledge is represented as a set of trees aunotated with feature structures, l,',ach tree is called a Phrase Description (PD).</Paragraph> <Paragraph position="1"> ALl example of a l)D is shown in Figure.1.</Paragraph> <Paragraph position="2"> A PD consists of two parts: a structure definition and feature structure annotation (Structure a.nd Annotation in Figure 1).</Paragraph> <Paragraph position="3"> The structure definition defines tile structure of a tree by using a list in which the first element corresl)onds to the mother node and tile rest of the elements correspond to daughters.</Paragraph> <Paragraph position="4"> l';ach daughter may t)e a tree rather than a sin> pie node.</Paragraph> <Paragraph position="5"> Acres DE COLING-92, NANTes, 23-28 AO6-r 1992 3 3 The annotation part specifies the feature structure of each symhol appearing in the structure definition. A feature structure description can contain tags or variables (symbols with &quot;?&quot; as a prefix in the figure), The scope of a tag in a PD is the entire PD.</Paragraph> <Paragraph position="6"> Each node should have a semmltic and syntactic feature structure. The semantic feature on the root node of a PD represents the semaattics of the PD; thus we call it the semantic structure of the PD.</Paragraph> <Paragraph position="7"> Although the description represents a tree, it is the same ms for a (partial) derivation structure of a unification-l)ased CFG, because tile current system does not allow adjoining operations. If the structure definition of every PD is restricted to mother-daughter relations only, the PD set is strictly equivalent to a unification-based CFG.</Paragraph> </Section> <Section position="4" start_page="0" end_page="0" type="metho"> <SectionTitle> 3 Generation Algorithm </SectionTitle> <Paragraph position="0"> Our algorithm is aal efficient extension of Semaattic Head Driven Generation. 3?he major extensions are: 1) it handles feature structures directly, and 2) it creates all possible phrase structures in parallel. These extensions are embodied mainly in the t'l) activation and ambiguity handling mechanisms discussed in this section.</Paragraph> <Section position="1" start_page="0" end_page="0" type="sub_section"> <SectionTitle> 3.1 Overview of the algorithm </SectionTitle> <Paragraph position="0"> The main part of the generation process is expansion process, which iterates through expanding node selection, activation, prccombination, and application, using an e~Tmnding node agenda.</Paragraph> <Paragraph position="1"> Input to the process is a feature structure conraining syntactic, semantic and pragmatic features as an initial constraint on the root node.</Paragraph> <Paragraph position="2"> q'he Cxl)auding node agenda contains tim unlexicalized leaf nodes of the tree under creation.</Paragraph> <Paragraph position="3"> At the beginning of the process, it conta.ins only one node, which has the feature structure giveu as an initial constraint.</Paragraph> <Paragraph position="4"> The expanding node selection step picks up one node, say expanding node, from the agenda.</Paragraph> <Paragraph position="5"> If no node is picked ill) , the expaa~sinn process stops.</Paragraph> <Paragraph position="6"> The PD activation step activates all PD's whose senlantic strlLetures s~tlJs~tme the semantic structure of the expanding node.</Paragraph> <Paragraph position="7"> The precombination step makes PD sequences from activated PD's to satisfy some constraints. The application step instantiates the PD sequence(s) and applies it to tile expanding node.</Paragraph> <Paragraph position="9"> It also pushes unlexicMized leaf nodes into the expanding node agenda.</Paragraph> </Section> <Section position="2" start_page="0" end_page="0" type="sub_section"> <SectionTitle> 3.2 Expanding Node Selection </SectionTitle> <Paragraph position="0"> The expanding node selection step is for fetching one node from the expanding node agenda. From among the nodes whose semantic feature has been instamtiated, one is chosen. In this step, if tile fetched node satisfies some termination conditions (if~ for instance, it satisfies tile conditions for slash terminatim0, the node is discarded (i.e., not expanded any more). If the agenda is empty or contains no node with an instantiated semantic feature, the expansion process stops.</Paragraph> </Section> <Section position="3" start_page="0" end_page="0" type="sub_section"> <SectionTitle> 3.3 Activation </SectionTitle> <Paragraph position="0"> This step is responsible for selecting all PD's whose semantic structures subsume the semantic structure of an expanding node. The selection is done by traversing a multiple index network of PD's called the PD net.</Paragraph> <Paragraph position="1"> A set of PD's are pl'e-compiled into a PI) net. Suppose there are two PD's whose sema~ntic structures 2 are defined as the dags (i.e. directed acyelic graphs) in Figure 2. in the figure, fa,fl),fc,.., and vl,v2,., represent arc babels (feature names) and atomic values respectively. These PD's are coinpiled to the PD net shown in Figure 3.</Paragraph> <Paragraph position="2"> The uet has two kinds of nodes: path nodes@i), and PI) nodes (PDj). These nodes are linked by three kinds of labeled directed arcs: feature arcs(bold lines), vMue arcs(dashed), and tag arcs(with arrows).</Paragraph> <Paragraph position="3"> A path node is used to represent a particular feature path in one or more feature structure. As shown in Figure 3, path nodes are linked by bold feature arcs to form a tree. The sequence of arc labels from the root path node to a path node Pl is the path of Pi. \[It Figure 3, p3 and p5 show paths (Po N) and (re fd) respectively.</Paragraph> <Paragraph position="4"> Each PD node (rectangle) corresponds to a particular PD, which may have value ares and tag arcs.</Paragraph> <Paragraph position="5"> * Value Arcs: Which PD's contain which atomic vNues along certain paths ? A PD node may be linked to path nodes with value ares.</Paragraph> <Paragraph position="6"> If a (rectangular) PD node is linked to a.</Paragraph> <Paragraph position="7"> (round) path node pn with a dashed value are labeled v, then following the path leading to pn yields atomic value v in that PD.</Paragraph> <Paragraph position="8"> Consider the dashed value are vl in Figure 3. It indicates that following path fa in PDI yiehls an atomic value vl. This is just tim situation depicted in Figure 2.</Paragraph> <Paragraph position="9"> * Tag Arcs: In a given PD, which paths share a. cel't~in feature structure as a vaJue ? A PD node may also be linked to path nodes with tag arcs.</Paragraph> <Paragraph position="10"> If lowo tag arcs have the same label and they cdnnect ;~ PD node to two path nodes, say pnl and pn2, then tim feature structure of that PI) has a substrm;ture which is the value of both paths, that of phi and pn2.</Paragraph> <Paragraph position="11"> Am~s DE COLING-92, N^NTES, 23-28 ao~r 1992 3 4 Proc. OF COL/NG-92, NANTES, AU6. 23-28, 1992 t, br example, the two tag arcs from rectangular PDI node labeled &quot;tl&quot; in Figure 3 show that the semantic structure of PD1 has a substructure serving as the vMue of (~) and (fc).</Paragraph> <Paragraph position="12"> The data structure of nodes and arcs are shown ill. Figure 4.</Paragraph> <Paragraph position="14"> A path node has three slots: values, features, oatd dagstore. The values slot and the arcs slot contain value arcs and feature arcs respectively.</Paragraph> <Paragraph position="15"> The dagstore stot is initially empty; later it holds a pointer to a dag which passed the path node.</Paragraph> <Paragraph position="16"> Each PD node has a PD slot, a tagares slot, a valueNum slot, and a status slot. The PD slot contains a pointer to the represented PD itself.</Paragraph> <Paragraph position="17"> The tagarcs slot contains the data structure of the tagarcs (see below). The valueNum slot has the number of value arcs to the PD node. For example, the value of the number slot of PD1 node in Figure3 is 3, because the node has one value a.rc labeled vl and two value arcs labeled vl. The status slot holds integer and is initially set to 0.</Paragraph> <Paragraph position="18"> Every type of arc has two slots, 'label' and 'destination'. 'Label' is an atomic symbol which labels the arc, and 'destination' is a pointer to the node which is the destination of the arc.</Paragraph> <Paragraph position="19"> We use the PD net as a dataltow net. The entry point of the net is the root path node amd the token which flows is a dag of a semantic feature structure.</Paragraph> <Paragraph position="20"> The action of a path node is shown in Figure 5. &quot;faihn'e&quot; means there is no PD whose semantic structure subsumes the given dag. Thus the entire retrieval process fails.</Paragraph> <Paragraph position="21"> The action of a 1)D node is shown in Figure 6. The status is incremented each time the node receives a tokeu. As a result, if all atomic values in tl,e semantic structure of the PI) are satisfied, the status becomes equM to the valueNum (that is the nulnber of atomic values). Once this is detected, then uuifiability of shared structure is checked by cMling the tagtcst procedure.</Paragraph> <Paragraph position="22"> Tagtest tests unifiability of the dags in the dagstores of p(ath) nodes connected by tag arcs with the same label. Iu Figure 3, if the status of PD1 becomes 3 and if the dag in p2 and the dag in 114 are identical, then the PD becomes active. That is, the PD has been found to subsume the generation input. It may or may not actually be applied, depending on later events.</Paragraph> <Paragraph position="24"> If there is a PI) node whose wdueNums is 0 (i.e. No a,tomic value is specified iu the semantic structure), node action of the PD node is invoked</Paragraph> </Section> <Section position="4" start_page="0" end_page="0" type="sub_section"> <SectionTitle> 3.4 Precombination </SectionTitle> <Paragraph position="0"> The precombiuation step is responsible for making sequences of PD's from activated PD's under certain constraints. A PD sequence is a rough plan for a potential structure which can realize a semantic specification of the node being expanded a. If no sequence is obtained, the ambiguity resolution process, discussed later, is invoked. null We divide PD's into two groups: propagation type and non-propagation type. A propagation type PD has has one propagation node. A propagation node of a PD is a leaf node whose semantic structure is identical with the semantic structure of the root node of the PD 4. The rest of the PD's, which have no propagation nodes, are classified as non-propagation type PD's. This distinction is an extension of Shieber's chain rule and non-chain rule distinction.</Paragraph> <Paragraph position="1"> A PD sequence PD1 ..... PD,~ must satisfy the following constraints.</Paragraph> <Paragraph position="2"> 1. semantic structure sharing constraints (a) PDi(1 <_ i < n) is a propagation PD, (b) PD~ is a non-propagation PD, Under these constraints, the system can make a partial phrase structure by unifying the propagation node of PDI with the root uode of PDi+l. Tile root node of the created structure contains the unified semantic structure of all semantic structures of PD's in the sequence.</Paragraph> <Paragraph position="3"> 2. local unifiability constraints (a) the root node of PDI is unifiable with tile expanding node (b) t>Di and t)Di+l are connectable where PDI is connectable to PD 5 if PDI is a propagation P\]), and tim propagation node of PDi is unitiable with the root node of PDj.</Paragraph> <Paragraph position="4"> These constraints are necessary conditions for unifiability throughout the entire PD sequence, which is called the global nnifiability of a PD sequence. In contrast to such global uni/iability constraints, the local vnifiability can be pre-computed, or compiled, before generation process.</Paragraph> <Paragraph position="5"> aA PD sequence is roughly corresponds to a bottom-up chum in \[6} ~Our current system does not allow PD's with multiple semantic head covering constraint Let fsl be the unified semantic structure of all semantic structures of PD's in tile sequence. Fsl must contain every top feature of the semantic structure of the expanding node, where a top feature of a feature structure is defined as a top-level feature name. The covering constraint ensures complete generation \[6\]. If the constraint is not sarisfled, a given semantic structure may not be completely realized in the generation result. For example, if all input semantic strucure is (3) (in Section 1) and the unified semantic structure of a PD sequence is (1), then the resulting PD sequence lacks the locative phrase for the &quot;time&quot; feature, which will not appear in the generation result.</Paragraph> <Paragraph position="6"> disjointness constraints For each PD (PDi), there is no other PD (PDj(i # j)), such that PDI has a top arc whose label is included in the set of top arcs of PDj. The definition of top arc is given above.</Paragraph> <Paragraph position="7"> If this constraint is not satisfied, the generation result may contain duplicated or invalid expressions. For example, if a PD sequence contains two distinct PD's each of which is for a locative adjunct and has a &quot;time&quot; feature on the top level, the generation result will have two locative adjuncts for one semantic feature (i.e. tile &quot;time&quot; feature). The disjointness constraint also ensures compaetgeneration. Suppose a coherent and complete generator produces a string w, and the grammar assigns a semantic structure fso to w using a set of rules R. String w is minimal if every sub-structure of fso is supplied from one rule in R. The generator is compact if any string w is minimal.</Paragraph> <Paragraph position="8"> Ill general, completeness, &lid conlpactness cannot actually be judged until the entire generation fiulshes. Thus the last two constraints (3 and 4) do not reaiiy guarantee completeness and compactness; rather, they help to limit search space in a practical way.</Paragraph> </Section> <Section position="5" start_page="0" end_page="0" type="sub_section"> <SectionTitle> 3.5 PD Application </SectionTitle> <Paragraph position="0"> The PD application step is responsible for creating phrase structure(s) fl'om PD sequence(s) and attaching them to the expanding node. In this section, we restrict ourselves to the simple case ACRES DE COLING-92, NAN'YES, 23-28 AOt~T 1992 3 6 PROC. OF COLING-92, NANTES, AUG. 23-28, 1992 such that there is only one PD sequence obtained during the previous step. The case of multiple PI) sequences, (i.e., generation ambiguity), will be discussed in the next section.</Paragraph> <Paragraph position="1"> First, the module connects all PD's in the PD sequence PDI...PD,, by unifying the propagation node of PDi with the root node of PDI+1. All unification operations are quasi-destructive, or temporal \[7\]. The result of the unification is valid until the module copies it (see below).</Paragraph> <Paragraph position="2"> If this entire unification process succeeds (i.e., if every PI) in the sequence can indeed be unified, and the sequence thus proves to be globally unifiable; see 3.7), then the module makes a copy of the unified PD sequence. Otherwise expansion failure (see next section) is signified. The copy, which is a phrase structure tree, is called an instance of the PD sequence.</Paragraph> <Paragraph position="3"> Then the module attaches (unifies) the instantiatted PD sequence to the expanding node.</Paragraph> <Paragraph position="4"> Finally, the system stores in the exl)andiug node agenda leaf nodes of expanded structures which have no lexieal feature values..</Paragraph> </Section> <Section position="6" start_page="0" end_page="0" type="sub_section"> <SectionTitle> 3.6 Ambiguity Handling 3.6.1 Ambiguity packing </SectionTitle> <Paragraph position="0"> If multiple PD sequences are applicable to an expanding node, the substructure of the expanding node can not be uniquely determined, because each PD sequence indicates only an hypothesis for' the potential substructure.</Paragraph> <Paragraph position="1"> The system maintain these hyl)otheses in a special hypotheses slot on the undetermined expanding node.</Paragraph> <Paragraph position="2"> For each PD sequence, a copy of the expanding node (:ailed an hypothesis node is created. These copies are stored into the hypotheses slot of the original expanding node. Then the system ap plies each PD sequence to the corresponding hypothesis node, as described in the previous section, and continues expansion.</Paragraph> <Paragraph position="3"> In Figure 7, three suhtrees in the &quot;hypo&quot; slol. on the undetermined node have been created for' the hypothetical Pl) sequences.</Paragraph> <Paragraph position="4"> The hyl)othetical PI) sequences are not unb lied with the original expanding node, but unb tied with copies of the expanding node. This pre vents tire original feature structure of the undetermined node from being modilied by further expansion of the hypothetical structures (T I-T3 in Figure 7).</Paragraph> <Paragraph position="5"> q'he further expansion sometimes makes an hypothesis node inconsistent with the original node. This is detected in the ambiguity resohltion process described in the next section.</Paragraph> </Section> <Section position="7" start_page="0" end_page="0" type="sub_section"> <SectionTitle> 3.6.2 Expansion Failure and Ambiguity </SectionTitle> <Paragraph position="0"> ILesolution Expansion failure occurs when: 1. \]to PD is activated in the PD activation, or 2. no PD sequences are obtained in the pre combination, or 3. no PI) sequences satisfy global connectabil null ity in the application.</Paragraph> <Paragraph position="1"> The failure signifies that the feature strncture of the current exl)anding node is inconsistent with a set of Pl)'s given as generation knowledge. null The module searches tbr the ne;~rest (i.e., lowest) hypothesis node (Nh) dominating the failed expanding node and deletes Nh fi'om the hypotheses slot containing it.</Paragraph> <Paragraph position="2"> If the number of hyl)othetical structures in the hyl>otheses slot of a.n undetermined re>de (N,,) hecomes one, then N,~ and the root node. of the remaining structnre in the hypotheses slot are unified. If the unilication f~tils, amlriguity resoh> tion continues recursively upw~rd.</Paragraph> <Paragraph position="3"> An examt)le of ambiguity resolution is illus trated in Figure 8. The values of tire hyt)otheses slot of node VI' are the hypothetical nodes VPl, VP2, and vt'3, corresponding to hypothet ical trees TI, T2, 'I'3 respectively. If expansion failure occur in T I and '1'2, VP1 ;~nd V I'2 are removed from the hypothesis slot. Then, Vl'3 is unitied with VP, because there is only one hy pothesis node left in the slot VP node.</Paragraph> <Paragraph position="4"> If there is no hypothesis node dominating the failed expansion node, the entire generation l)r~)cess fails.</Paragraph> <Paragraph position="5"> perform adjunct operation \[9\].</Paragraph> <Paragraph position="6"> The algorithm is implemented in SL-Trans, a spoken language translation system \[8\].</Paragraph> </Section> </Section> <Section position="5" start_page="0" end_page="0" type="metho"> <SectionTitle> Acknowledgments </SectionTitle> <Paragraph position="0"> The author would like to thank M0zk Seligma~t for helpful comments on this paper and also would like to thank Akira Kurematsu, Tsuyoshi Morimoto and other members of ATR for their constant help and fruitful discussions.</Paragraph> <Section position="1" start_page="0" end_page="0" type="sub_section"> <SectionTitle> 3.7 Postprocess </SectionTitle> <Paragraph position="0"> Expansion halts when no node is selected in the expanding node selection step. This does not necessarily mean the agenda is empty, because there m~y be some nodes without instantiated smnantic structure.</Paragraph> <Paragraph position="1"> ltow do such semantically empty nodes arise? The problem is that feature structnres within hypotheticM nodes are not allowed to unify with the feature structure on the &quot;real&quot; dominating node.</Paragraph> <Paragraph position="2"> The solution is: for each hypothetical node, we create a complete tree using copies of the &quot;real&quot; dominating structure, Feature structures can then be permitted to unify with dominating structures. Then, the system collects all unlexicalized leaf re)des as initial values of the expanding node agenda and starts the normal expansion loop again.</Paragraph> </Section> </Section> class="xml-element"></Paper>