<?xml version="1.0"?><!DOCTYPE article SYSTEM "/project/take/software/searchbench_offline_processing/paperxml_generator/aclextractor/src/python/../resource/dtd/paperxml.dtd"><article><header><firstpageheader><page local="1"/><title>Hierarchical Phrase-Based Translation</title><pubinfo>© 2007 Association for Computational Linguistics</pubinfo><author surname="Chiang" givenname="David"><org  name="University of Southern California" country="USA" city="Marina del Rey"/></author></firstpageheader><frontmatter><p><b>Hierarchical Phrase-Based Translation</b></p><p>David Chiang* Information Sciences Institute University of Southern California</p></frontmatter><abstract><i>We present a statistical machine translation model that uses </i>hierarchical phrases—<i>phrases that contain subphrases. The model is formally a synchronous context-free grammar but is learned from a parallel text without any syntactic annotations. Thus it can be seen as combining fundamental ideas from both syntax-based translation and phrase-based translation. We describe our system's training and decoding methods in detail, and evaluate it for translation speed and translation accuracy. Using BLEU as a metric of translation accuracy, we find that our system performs significantly better than the Alignment Template System, a state-of-the-art phrase-based system.</i> </abstract></header><body><section number="1." title="Introduction"><p>The alignment template translation model (Och and Ney 2004) and related phrase-based models advanced the state of the art in machine translation by expanding the basic unit of translation from words to <b>phrases, </b>that is, substrings of potentially unlimited size (but not necessarily phrases in any syntactic theory). These phrases allow a model to learn local reorderings, translations of multiword expressions, or insertions and deletions that are sensitive to local context. This makes them a simple and powerful mechanism for translation.</p><p>The basic phrase-based model is an instance of the noisy-channel approach (Brown et al. 1993). Following convention, we call the source language "French" and the target language "English"; the translation of a French sentence <i>f </i>into an English sentence <i>e </i>is modeled as:</p><doubt alpha="60.0" length="30" tooSmall="False" monospace="0.0">argmaxP(e |f)= argmaxP(e,f)(1)</doubt><doubt alpha="66.7" length="3" tooSmall="False" monospace="0.0">e e</doubt><doubt alpha="46.2" length="26" tooSmall="False" monospace="0.0">= arg max(P(e)xP(f| e))(2)</doubt><doubt alpha="100.0" length="1" tooSmall="False" monospace="0.0">e</doubt><p>The phrase-based translation model <i>P( </i><i>f|</i><i> e) </i>"encodes" <i>e </i>into <i>f</i>by the following steps:</p><p>1.     segment <i>e</i><i> </i>into phrases ei <i>■</i><i> </i><i>■</i><i> </i><i>■</i><i> </i><i>e\</i>, typically with a uniform distribution over segmentations;</p><p>* 4676 Admiralty Way, Suite 1001, Marina del Rey, CA 90292, USA. E-mail: chiang@isi.edu. Much of the research presented here was carried out while the author was at the University of Maryland Institute for Advanced Computer Studies.</p><p>Submission received: 1 May 2006; accepted for publication: 3 October 2006.</p><page local="2" global="202"/></section><section number="2." title="reorder the e i  according to some distortion model;"><p>3. translate each of the <i>ei </i>into French phrases according to a model <i>P( f | e) </i>estimated from the training data.</p><p>Other phrase-based models model the joint distribution P(e,f) (Marcu and Wong 2002) or make <i>P(e</i>)and<i>P( </i><i>f|</i><i> e) </i>into features of a log-linear model (Och and Ney 2002). But the basic architecture of phrase segmentation (or generation), phrase reordering, and phrase translation remains the same.</p><p>Phrase-based models can robustly perform translations that are localized to sub­strings that are common enough to have been observed in training. But Koehn, Och, and Marcu (2003) find that phrases longer than three words improve performance little for training corpora of up to 20 million words, suggesting that the data may be too sparse to learn longer phrases. Above the phrase level, some models perform no reordering (Zens and Ney 2004; Kumar, Deng, and Byrne 2006), some have a simple distortion model that reorders phrases independently of their content (Koehn, Och, and Marcu 2003; Och and Ney 2004), and some, for example, the Alignment Template System (Och et al. 2004; Thayer et al. 2004), hereafter ATS, and the IBM phrase-based system (Tillmann 2004; Tillmann and Zhang 2005), have phrase-reordering models that add some lexical sensitivity. But, as an illustration of the limitations of phrase reordering, consider the following Mandarin example and its English translation:</p><p>Australia is with North Korea have dipl. rels. that few       countries one of . Australia is one of the few countries that have diplomatic relations with North Korea.</p><p>If we count <i>zhiyi </i>(literally, 'of-one') as a single token, then translating this sentence correctly into English requires identifying a sequence of five word groups that need to be reversed. When we run a phrase-based system, ATS, on this sentence (using the experimental setup described herein), we get the following phrases with translations:</p><doubt alpha="65.0" length="160" tooSmall="False" monospace="0.0">[Aozhou] [shi]1[yu Beihan]2[you] [bangjiao] [de shaoshu guojia zhiyi] [.] [Australia] [has] [dipl. rels.] [with North Korea]2[is]1[one of the few countries] [.]</doubt><p>where we have used subscripts to indicate the reordering of phrases. The phrase-based model is able to order "has diplomatic relations with North Korea" correctly (using phrase reordering) and "is one of the few countries" correctly (using a combination of phrase translation and phrase reordering), but does not invert these two groups as it should.</p><p>We propose a solution to these problems that does not interfere with the strengths of the phrase-based approach, but rather capitalizes on them: Because phrases are good for learning reorderings of words, we can use them to learn reorderings of phrases as well. In order to do this we need <b>hierarchical phrases </b>that can contain other phrases. For example, a hierarchical phrase pair that might help with the above example is where CD and 0 are placeholders for subphrases (Chiang 2005). This would capture the fact that Chinese prepositional phrases almost always modify verb phrases on the</p><doubt alpha="71.4" length="7" tooSmall="False" monospace="0.0">mms¥ im</doubt><p>Aozhou shi yu Beihan<page local="3" global="203"/></p><doubt alpha="58.6" length="29" tooSmall="False" monospace="0.0">(yuE you 03, have C3 with CD)</doubt><doubt alpha="0.0" length="3" tooSmall="False" monospace="0.0">(3)</doubt><p>left, whereas English prepositional phrases usually modify verb phrases on the right. Because it generalizes over possible prepositional objects and direct objects, it acts both as a discontinuous phrase pair and as a phrase-reordering rule. Thus it is considerably more powerful than a conventional phrase pair. Similarly, the hierarchical phrase pair would capture the fact that Chinese relative clauses modify NPs on the left, whereas English relative clauses modify on the right; and the pair would render the construction <i>zhiyi </i>in English word order. These three rules, along with some conventional phrase pairs, suffice to translate the sentence correctly:</p><doubt alpha="66.7" length="21" tooSmall="False" monospace="0.0">{mdem,themthat CO)(4)</doubt><doubt alpha="58.3" length="24" tooSmall="False" monospace="0.0">(CD zhiyi, one of CO)(5)</doubt><doubt alpha="65.1" length="166" tooSmall="False" monospace="0.0">[Aozhou] [shi] [[[yu [Beihanjjyou [bangjiao]2] de [shaoshu guojia]3] zhiyi] [Australia] [is] [one of [the [few countries]3that [have [dipl. rels.]2with [N. Korea]j]]]</doubt><p>The system we describe in this article uses rules like (3), (4), and (5), which we formalize in the next section as rules of a <b>synchronous context-free grammar </b>(CFG).<footnote anchor="1"/> Moreover, the system is able to learn them automatically from a parallel text without syntactic annotation.</p><p>Because our system uses a synchronous CFG, it could be thought of as an example of syntax-based statistical machine translation (MT), joining a line of research (Wu 1997; Alshawi, Bangalore, and Douglas 2000; Yamada and Knight 2001) that has been fruitful but has not previously produced systems that can compete with phrase-based systems in large-scale translation tasks such as the evaluations held by NIST. Our approach differs from early syntax-based statistical translation models in combining the idea of hierarchical structure with key insights from phrase-based MT: Crucially, by incorpo­rating the use of elementary structures with possibly many words, we hope to inherit phrase-based MT's capacity for memorizing translations from parallel data. Other in­sights borrowed from the current state of the art include minimum-error-rate training of log-linear models (Och and Ney 2002; Och 2003) and use of an m-gram language model.</p><p>The conjunction of these various elements presents a considerable challenge for implementation, which we discuss in detail in this article. The result is the first system employing a grammar (to our knowledge) to perform better than phrase-based systems in large-scale evaluations.<footnote anchor="2"/></p><p>1 The actual derivation used varies in practice. A previous version of the model selected precisely the derivation shown in the text, although the version described in this article happens to select a less intuitive one:</p><doubt alpha="65.3" length="72" tooSmall="False" monospace="0.0">[Aozhou shi] [[[yu]1Beihan [you [bang'iao^ de [shaoshu]3guojia]] zhiyi.]</doubt><p>[Australia is] [one of the [[[few]3 countries having [diplomatic relations^] [with]1 North Korea] .]</p><p>2 An earlier version of the system described in this article was entered by the University of Maryland as its primary system in the 2005 NIST MT Evaluation. The results can be found at http://uuu.nist.gov/speech/tests/mt/mt05eva^officia^result^^eleas^2005080^v3.html<b>.</b></p><page local="4" global="204"/></section><section number="2." title="Related Work"><p>Approaches to syntax-based statistical MT have varied in their reliance on syntactic theories, or annotations made according to syntactic theories. At one extreme are those, exemplified by that of Wu (1997), that have no dependence on syntactic the­ory beyond the idea that natural language is hierarchical. If these methods distin­guish between different categories, they typically do not distinguish very many. Our approach, as presented here, falls squarely into this family. By contrast, other ap­proaches, exemplified by that of Yamada and Knight (2001), do make use of parallel data with syntactic annotations, either in the form of phrase-structure trees or de­pendency trees (Ding and Palmer 2005; Quirk, Menezes, and Cherry 2005). Because syntactically annotated corpora are comparatively small, obtaining parsed parallel text in quantity usually entails running an automatic parser on a parallel corpus to produce noisy annotations.</p><p>Both of these strands of research have recently begun to explore extraction of larger rules, guided by word alignments. The extraction method we use, which is a straightforward generalization of phrase extraction from word-aligned parallel text, has been independently proposed before in various settings. The method of Block (2000) is the earliest instance we are aware of, though it is restricted to rules with one variable. The same method has also been used by Probst et al. (2002) and Xia and McCord (2004) in conjunction with syntactic annotations to extract rules that are used for reordering prior to translation. Finally, Galley et al. (2004) use the same method to extract a very large grammar from syntactically annotated data. The discontinuous phrases used by Simard et al. (2005) have a similar purpose to synchronous grammar rules; but they have variables that stand for single words rather than subderivations, and they can interleave in non-hierarchical ways.</p></section><section number="3." title="Grammar"><p>The model is based on a synchronous CFG, elsewhere known as a <b>syntax-directed transduction grammar </b>(Lewis and Stearns 1968). We give here an informal definition and then describe in detail how we build a synchronous CFG for our model.</p><subsection number="3.1" title="Synchronous CFG"><p>In a synchronous CFG the elementary structures are rewrite rules with aligned pairs of right-hand sides:</p><p>where <i>X </i>is a nonterminal, y and <i>a </i>are both strings of terminals and nonterminals, and ~ is a one-to-one correspondence between nonterminal occurrences in y and nonterminal occurrences in a. For example, the hierarchical phrase pairs (3), (4), and (5) previously presented could be formalized in a synchronous CFG as:</p><doubt alpha="30.0" length="10" tooSmall="False" monospace="0.0">X —(y,a,~)</doubt><doubt alpha="0.0" length="3" tooSmall="False" monospace="0.0">(6)</doubt><doubt alpha="50.0" length="28" tooSmall="False" monospace="0.0">X — (X0de X@,the     that Xg</doubt><doubt alpha="0.0" length="3" tooSmall="False" monospace="0.0">(7)</doubt><page local="5" global="205"/><doubt alpha="60.9" length="23" tooSmall="False" monospace="0.0">X—(X0zhiyi,one ofXm)(8)</doubt><p>where we have used boxed indices to indicate which nonterminal occurrences are linked by ~. The conventional phrase pairs would be formalized as:</p><doubt alpha="64.0" length="25" tooSmall="False" monospace="0.0">X—(Aozhou, Australia) (9)</doubt><doubt alpha="60.7" length="28" tooSmall="False" monospace="0.0">X—(Beihan, North Korea) (10)</doubt><doubt alpha="40.0" length="15" tooSmall="False" monospace="0.0">X—(shi,is) (11)</doubt><p>X <i>— </i>(bang'iao, diplomatic relations) (12)</p><p>X <i>— </i>(shaoshu guojia, few countries) (13)</p><p>Two more rules complete our example:</p><doubt alpha="39.4" length="33" tooSmall="False" monospace="0.0">S—(SEQXEa,^EXE)(14)S—&lt;X0,X0&gt; (15)</doubt><p>A synchronous CFG derivation begins with a pair of linked start symbols. At each step, two linked nonterminals are rewritten using the two components of a single rule. When denoting links with boxed indices, we must consistently reindex the newly introduced symbols apart from the symbols already present. For an example using these rules, see Figure 1.</p></subsection><subsection number="3.2" title="Rule Extraction"><p>The bulk of the grammar consists of automatically extracted rules. The extraction process begins with a word-aligned corpus: a set of triples (/, e, ~), where <i>f </i>is a French sentence, <i>e </i>is an English sentence, and ~ is a (many-to-many) binary relation between positions off and positions of e. The word alignments are obtained by running GIZA++ (Och and Ney 2000) on the corpus in both directions, and forming the union of the two sets of word alignments.</p><p>We then extract from each word-aligned sentence pair a set of rules that are consistent with the word alignments. This can be thought of in two steps. First, we identify <b>initial phrase </b>pairs using the same criterion as most phrase-based systems (Och and Ney 2004), namely, there must be at least one word inside one phrase aligned to a word inside the other, but no word inside one phrase can be aligned to a word outside the other phrase. For example, suppose our training data contained the fragment</p><doubt alpha="50.0" length="6" tooSmall="False" monospace="0.0">30mWM-</doubt></subsection></section><section number="30" title="duonianlai       de youhao hezou"></section><section number="30" title="plus-years-past of friendly cooperation"><p>friendly cooperation over the last 30 years ^ (Aozhou shi <b>X^, </b>Australia is <b>X^ )</b> ^&gt; (Aozhou shi <i>X^ </i>zhiyi, Australia is one of <b>Xr^ )</b> ^&gt; (Aozhou shi <b>X^ </b>de <b>X^ </b>zhiyi, Australia is one of the <b>X^ </b>that <b>Xr^ )</b> ^&gt; (Aozhou shi yu <b>Xrjj </b>you <b>Xr^ </b>de <b>X^ </b>zhiyi,<page local="6" global="206"/></p><doubt alpha="57.1" length="7" tooSmall="False" monospace="0.0">&lt;sm,sm&gt;</doubt><doubt alpha="35.0" length="20" tooSmall="False" monospace="0.0">^ (s0%X[1'SExl5]x[!)</doubt><doubt alpha="52.0" length="25" tooSmall="False" monospace="0.0">^ &lt;X[I]XL1]XE'XM]XLI]XH])</doubt><doubt alpha="62.5" length="32" tooSmall="False" monospace="0.0">5&gt;(AozhouX[|] Xrj],AustraliaX^ )</doubt><p>Australia is one of the <b>X^ </b>that have <b>X^ </b>with <b>Xrjj)</b></p><doubt alpha="65.1" length="43" tooSmall="False" monospace="0.0">^ (Aozhou shi yu Beihan you      deX^zhiyi,</doubt><p>Australia is one of the <b>X^ </b>that have <b>Xnj] </b>with North Korea) ^ (Aozhou shi yu Beihan you bangjiao de <b>X^ </b>zhiyi,</p><p>Australia is one of the <b>X^ </b>that have diplomatic relations with North Korea) ^ (Aozhou shi yu Beihan you bangjiao de shaoshu guojia zhiyi,</p><p>Australia is one of the few countries that have diplomatic relations with North Korea) <b>Figure 1</b></p><p>Example derivation of a synchronous CFG. Numbers above arrows are rules used at each step.</p><p>with word alignments as shown in Figure 2a. The initial phrases that would be extracted are shown in Figure 2b. More formally:</p><p><b>Definition 1</b></p><p>Given a word-aligned sentence pair <i>(</i>f <i>e, </i>~),let <i>fj </i>stand for the substring of <i>f </i>from position <i>i </i>to position <i>j </i>inclusive, and similarly for <i>ej</i>. Then a rule <i>( </i><i>fj</i>, <i>e</i><i>l, </i><i>) </i>is an initial phrase pair of <i>(</i><i>f, e, </i><i>~) </i>iff:</p><p>Second, in order to obtain rules from the phrases, we look for phrases that contain other phrases and replace the subphrases with nonterminal symbols. For example, given the initial phrases shown in Figure 2b, we could form the rule<page local="7" global="207"/></p><doubt alpha="63.2" length="57" tooSmall="False" monospace="0.0">X — (X^ duonianlai de X^X^ over the last Xrjj years) (16)</doubt><doubt alpha="33.3" length="3" tooSmall="False" monospace="0.0">2Q6</doubt><table class="main" frame="box" rules="all" border="0" regular="False"><tr class="row"><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>l.</p></td><td class="cell"><p><i>f</i><i>k -</i></p></td><td class="cell"><p></p></td><td class="cell"><p>for some <i>k</i><i> </i><i>G </i>[i,;]and <i>k'</i><i> </i><i>G </i><i>[i'</i>, <i>f </i>];</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>2.</p></td><td class="cell"><p><i>f</i><i>k -</i></p></td><td class="cell"><p><i>ek&gt;</i></p></td><td class="cell"><p>for all <i>k</i><i> </i><i>G </i>[i,f]and <i>k!</i><i> </i>G <i>[i'</i>, <i>f </i>];</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>S.</p></td><td class="cell"><p><i>f</i><i>k -</i></p></td><td class="cell"><p></p></td><td class="cell"><p>for all <i>k</i><i> </i><i>G </i>[i,f]and <i>k!</i><i> </i><i>G </i><i>[i'</i>, <i>f </i>].</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td></tr></table><p><b>Figure 2</b></p><p>Grammar extraction example: (a) Input word alignment. (b) Initial phrases. (c) Example rule.</p><page local="8" global="208"/><p>as shown in Figure 2c. More formally: <b>Definition 2</b></p><p>The set of rules of <i>(f, e, ~) </i>is the smallest set satisfying the following:</p><p>1. If <i>(</i>f, <i>e\,)</i><i> </i>is an initial phrase pair, then is a rule of <i>(f, e, </i>~).</p><doubt alpha="28.6" length="7" tooSmall="False" monospace="0.0">x—(f,4)</doubt><doubt alpha="62.9" length="105" tooSmall="False" monospace="0.0">2. If (X—(y,a))isarule of(f,e,^)and(f\,e\,)is an initial phrase pair such thaty= Y1fY2anda=a1e,i,a2, then</doubt><p>where <i>k </i>is an index not used in y and a,isarule of <i>(f, e, </i>~).</p><p>This scheme generates a very large number of rules, which is undesirable not only because it makes training and decoding very slow, but also because it creates <b>spurious ambiguity</b>—a situation where the decoder produces many derivations that are distinct yet have the same model feature vectors and give the same translation. This can result in <i>k</i>-best lists with very few different translations or feature vectors, which is problematic for the minimum-error-rate training algorithm (see Section 4.3). To avoid this, we filter our grammar according to the following constraints, chosen to balance grammar size and performance on our development set:</p><p>1. If there are multiple initial phrase pairs containing the same set of alignments, only the smallest is kept. That is, unaligned words are not allowed at the edges of phrases.</p><p>2. Initial phrases are limited to a length of 10 words on either side.</p><p>3. Rules are limited to five nonterminals plus terminals on the French side.</p><p>4. Rules can have at most two nonterminals, which simplifies the decoder implementation. This also makes our grammar weakly equivalent to an inversion transduction grammar (Wu 1997), although the conversion would create a very large number of new nonterminal symbols.</p><p>5. It is prohibited for nonterminals to be adjacent on the French side, a major cause of spurious ambiguity.</p><p>6. A rule must have at least one pair of aligned words, so that translation decisions are always based on some lexical evidence.</p><p>Variations of constraints (1) and (2) are also commonly used in phrase-based systems.</p><page local="9" global="209"/><subsection number="3.3" title="Other Rules"><p><i>Glue rules. </i>Having extracted rules from the training data, we could let X be the gram­mar's start symbol and translate new sentences using only the extracted rules. But for robustness and for continuity with phrase-based translation models, we allow the grammar to divide a French sentence into a sequence of chunks and translate one chunk at a time. We formalize this inside a synchronous CFG using the rules (14) and (15), which we call the <b>glue rules, </b>repeated here:</p><doubt alpha="35.3" length="34" tooSmall="False" monospace="0.0">S—(SEQXi],^13Xl)(14)S—&lt;X0,XS&gt; (15)</doubt><p>These rules analyze an S (the start symbol) as a sequence of Xs which are translated without reordering. Note that if we restricted our grammar to comprise only the glue rules and conventional phrase pairs (that is, rules without nonterminal symbols on the right-hand side), the model would reduce to a phrase-based model with monotone translation (no phrase reordering).</p><p><i>Entity rules. </i>Finally, for each sentence to be translated, we run some specialized transla­tion modules to translate the numbers, dates, numbers, and bylines in the sentence, and insert these translations into the grammar as new rules.<footnote anchor="3"/> Such modules are often used by phrase-based systems as well, but here their translations can plug into hierarchical phrases, for example, into the rule</p><p>X <i>— </i>(Xg duonianlai, over the last Xjg years) (17) allowing it to generalize over numbers of years.</p></subsection></section><section number="4." title="Model"><p>Given a French sentence <i>f, </i>a synchronous CFG will have, in general, many derivations that yield <i>f</i>on the French side, and therefore (in general) many possible translations <i>e. </i>We now define a model over derivations <i>D </i>to predict which translations are more likely than others.</p><subsection number="4.1" title="Definition"><p>Following Och and Ney (2002), we depart from the traditional noisy-channel approach and use a more general log-linear model over derivations <i>D:</i></p><doubt alpha="57.1" length="21" tooSmall="False" monospace="0.0">P(D)ocJJ cfc(D)Ai(18)</doubt><doubt alpha="100.0" length="1" tooSmall="False" monospace="0.0">i</doubt><p>3 These modules are due to U. Germann and F. J. Och. In a previous paper (Chiang et al. 2005) we reported on translation modules for numbers and names. The present modules are not the same as those, though the mechanism for integrating them is identical.</p><page local="10" global="210"/><p>where the fa are features defined on derivations and the A; are feature weights. One of the features is an m-gram language model <i>Pim</i>(e); the remainder of the features we will define as products of functions on the rules used in a derivation:</p><doubt alpha="33.3" length="24" tooSmall="False" monospace="0.0">fa(D)=n*i(X-(Y, a)) (19)</doubt><p>Thus we can rewrite <i>P(D</i>)as</p><doubt alpha="45.0" length="40" tooSmall="False" monospace="0.0">P(D)«Plm(e)ALMxH      II(X-(Y, a))Ai(20)</doubt><p>The factors other than the language model factor can be put into a particularly con­venient form. A <b>weighted synchronous CFG </b>is a synchronous CFG together with a function <i>w </i>that assigns weights to rules. This function induces a weight function over derivations:</p><doubt alpha="31.8" length="22" tooSmall="False" monospace="0.0">w(D)=Hw(X-(y, a)) (21)</doubt><p>If we define then the probability model becomes</p><doubt alpha="34.4" length="32" tooSmall="False" monospace="0.0">w(X-(y, a)) =H*i(X-(Y, a))Ai(22)</doubt><doubt alpha="75.0" length="4" tooSmall="False" monospace="0.0">i=LM</doubt><doubt alpha="52.2" length="23" tooSmall="False" monospace="0.0">P(D)«Plm(e)ALMxw(D)(23)</doubt><p>It is easy to write dynamic-programming algorithms to find the highest-weight transla­tion or <i>k</i>-best translations with a weighted synchronous CFG. Therefore it is problematic that <i>w(D) </i>does not include the language model, which is extremely important for translation quality. We return to this challenge in Section 5.</p></subsection><subsection number="4.2" title="Features"><p>For our experiments, we use a feature set analogous to the default feature set of Pharaoh (Koehn, Och, and Marcu 2003). The rules extracted from the training bitext have the following features:</p><p>•     P(y | a)and P(a | y), the latter of which is not found in the noisy-channel model, but has been previously found to be a helpful feature (Och and</p><doubt alpha="30.0" length="10" tooSmall="False" monospace="0.0">Ney 2002);</doubt><page local="11" global="211"/><p>• the lexical weights <i>Pw</i>(y | a)and <i>Pw</i>(a | y), which estimate how well the words in a translate the words in y (Koehn, Och, and Marcu 2003);<footnote anchor="4"/></p><p>• a penalty exp(—1) for extracted rules, analogous to Koehn's phrase penalty (Koehn 2003), which allows the model to learn a preference for longer or shorter derivations.</p><p>Next, there are penalties exp(—1) for various other classes of rules:</p><p>• for the glue rule (14), so that the model can learn a preference for hierarchical phrases over a serial combination of phrases,</p><p>• for each of the four types of rules (numbers, dates, names, bylines) inserted by the specialized translation modules, so that the model can learn how much to rely on each of them.</p><p>Finally, for all the rules, there is a word penalty exp(—#T(a)), where #T just counts terminal symbols. This allows the model to learn a general preference for shorter or longer outputs.</p></subsection><subsection number="4.3" title="Training"><p>In order to estimate the parameters of the phrase translation and lexical-weighting features, we need counts for the extracted rules. For each sentence pair in the training data, there is in general more than one derivation of the sentence pair using the rules extracted from it. Because we have observed the sentence pair but have not observed the derivations, we do not know how many times each derivation has been seen, and therefore we do not actually know how many times each rule has been seen.</p><p>Following Och and others, we use heuristics to hypothesize a distribution of possi­ble rules as though we observed them in the training data, a distribution that does not necessarily maximize the likelihood of the training data.<footnote anchor="5"/> Och's method gives a count of one to each extracted phrase pair occurrence. We likewise give a count of one to each initial phrase pair occurrence, then distribute its weight equally among the rules obtained by subtracting subphrases from it. Treating this distribution as our observed data, we use relative-frequency estimation to obtain P(y | a)and P(a | y).</p><p>Finally, the parameters Ai of the log-linear model (18) are learned by minimum-error-rate training (Och 2003), which tries to set the parameters so as to maximize the BLEU score (Papineni et al. 2002) of a development set. This gives a weighted synchronous CFG according to (22) that is ready to be used by the decoder.</p><p>4 This feature uses word alignment information, which is discarded in the final grammar. If a rule occurs in training with more than one possible word alignment, Koehn, Och, and Marcu take the maximum lexical weight; we take a weighted average.</p><p>5 This approach is similar to that taken by many parsers, such as SPATTER (Magerman 1995) and its successors, which use heuristics to hypothesize an augmented version of the training data, but it is especially reminiscent of the Data Oriented Parsing method (Bod 1992), which hypothesizes a distribution over many possible derivations of each training example from subtrees of varying sizes.</p><page local="12" global="212"/></subsection></section><section number="5." title="Decoding"><p>In brief, our decoder is a CKY (Cocke-Kasami-Younger) parser with beam search to­gether with a postprocessor for mapping French derivations to English derivations. Given a French sentence /, it finds the English yield of the single best derivation that has French yield <i>f </i>:</p><doubt alpha="55.9" length="34" tooSmall="False" monospace="0.0">e =elargmaxP(D)I(24)\Ds.t.f(D) =fJ</doubt><p>Note that this is not necessarily the highest-probability English string, which would require a more expensive summation over derivations.</p><p>We now discuss the details of the decoder, focusing attention on efficiently calculat­ing English language-model probabilities for possible translations, which is the primary technical challenge.</p><subsection number="5.1" title="Basic Algorithm"><p>In the following we present several parsers as deductive proof systems (Shieber, Schabes, and Pereira 1995; Goodman 1999). A parser in this notation defines a space of weighted <b>items, </b>in which some items are designated axioms and some items are designated <b>goals </b>(the items to be proven), and a set of inference rules of the form which means that if all the items <i>I</i><i>i </i>(called the <b>antecedents) </b>are provable, with weight <i>w</i><i>i, </i>then <i>I </i>(called the <b>consequent) </b>is provable, with weight w, provided the side condition * holds. The parsing process grows a set of provable items: It starts with the axioms, and proceeds by applying inference rules to prove more and more items until a goal is proven.</p><doubt alpha="50.0" length="12" tooSmall="False" monospace="0.0">h:w1■■■Ik:wk</doubt><doubt alpha="40.0" length="5" tooSmall="False" monospace="0.0">-nw-*</doubt><p>For example, the well-known CKY algorithm for CFGs in Chomsky normal form can be thought of as a deductive proof system whose items can take one of two forms:</p><p>• [X, i, <i>j], </i>indicating that a subtree rooted in <i>X </i>has been recognized spanning from <i>i </i>to <i>j </i>(that is, spanningf+1), or</p><p>• (X - y), if a rule <i>X — </i>y belongs to the grammar.<footnote anchor="6"/>The axioms would be</p><doubt alpha="44.4" length="9" tooSmall="False" monospace="0.0">- (X—Y)eG</doubt><doubt alpha="50.0" length="6" tooSmall="False" monospace="0.0">X -y:w</doubt><p>6 Treating grammar rules as axioms is not standard practice, but advocated by Goodman (1999). Here, it has the benefit of simplifying the presentation in Section 5.3.4.</p><page local="13" global="213"/><p>and the inference rules would be and the goal would be [S,0, <i>n], </i>where <i>S </i>is the start symbol of the grammar and <i>n </i>is the length of the input string <i>f </i>.</p><doubt alpha="50.0" length="8" tooSmall="False" monospace="0.0">Z-fi+1:w</doubt><doubt alpha="26.7" length="15" tooSmall="False" monospace="0.0">[Z, i,i+ 1] : w</doubt><doubt alpha="36.4" length="33" tooSmall="False" monospace="0.0">Z -XY: w   [X, i,k]:w1[Y, k,j]:w2</doubt><doubt alpha="42.9" length="14" tooSmall="False" monospace="0.0">[Z, i,j]:w1w2w</doubt><p>Given a synchronous CFG, we could convert its French-side grammar into Chomsky normal form, and then for each sentence, we could find the best parse using CKY. Then it would be a straightforward matter to revert the best parse from Chomsky normal form into the original form and map it into its corresponding English tree, whose yield is the output translation. However, because we have already restricted the number of nonterminal symbols in our rules to two, it is more convenient to use a modified CKY algorithm that operates on our grammar directly, without any conversion to Chomsky normal form. The axioms, inference rules, and goals for the basic decoder are shown in Figure 3. Its time complexity is <i>O</i>(n<footnote anchor="3"/>), just as CKY's is. Because this algorithm does not yet incorporate a language model, let us call it the — LM parser.</p><p>The actual search procedure is given by the pseudocode in Figure 4. It organizes the proved items into an array <i>chart </i>whose cells <i>chart[X, i, j] </i>are sets of items. The cells are ordered such that every item comes after its possible antecedents: smaller spans before</p><p>Then the parser can proceed by visiting the chart cells in order and trying to prove all the items for each cell. Whenever it proves a new item, it adds the item to the</p><p><b>Figure 3</b></p><p>Inference rules for the — LM parser.</p><page local="14" global="214"/><p><b>Figure 4</b></p><p>Search procedure for the — LM parser.</p><p>appropriate chart cell; in order to reconstruct the derivations later, it must also store, with each item, a tuple of back-pointers to the antecedents from which the item was deduced (for axioms, an empty tuple is used). If two items are added to a cell that are equivalent except for their weights or back-pointers, then they are merged (in the MT decoding literature, this is also known as <b>hypothesis recombination), </b>with the merged item taking its weight and back-pointers from the better of the two equivalent items. (However, if we are interested in finding the k-best derivations, the merged item gets the multiset of all the tuples of back-pointers from the equivalent items. These back­pointers are used below in Section 5.2.)</p><p>The algorithm in Figure 4 does not completely search the space of proofs, because it has a constraint that prohibits any X from spanning a substring longer than a fixed limit A on the French side, corresponding to the maximum length constraint on initial rules during training. This gives the decoding algorithm an asymptotic time complexity of <i>O(n</i>). In principle A should match the initial phrase length limit used in training (as it does in our experiments), but in practice it can be adjusted separately to maximize accuracy or speed.</p></subsection><subsection number="5.2" title="Generating k-best Lists"><p>We often want to find not only the best derivation for a French sentence but a list of the k-best derivations. These are used for minimum-error-rate training and for rescoring with a language model (Section 5.3.1). We describe here how to do this using the lazy algorithm of Huang and Chiang (2005). Part of this method will also be reused in our algorithm for fast parsing with a language model (Section 5.3.4).</p><p>If we conceive of lists as functions from indices to values, we may create a <b>virtual list, </b>a function that computes member values on demand instead of storing all the values statically. The heart of the k-best algorithm is a function MERGEPRODUCTS, which takes a set <i>L </i>of tuples of (virtual) lists with an operator <i>0 </i>and returns a virtual list:</p><doubt alpha="0.0" length="4" tooSmall="False" monospace="0.0">(25)</doubt><page local="15" global="215"/><p><b>Figure 5</b></p><p>Example illustrating MERGEPRODUCTS,where <i>L1 = </i>{1,2,6,10} and L2negative log-probabilities.</p><doubt alpha="52.6" length="19" tooSmall="False" monospace="0.0">{1,4,7}.Numbers are</doubt><p>It assumes that the input lists are sorted and returns a sorted list. A naive im­plementation of MERGEPRODUCTS would simply calculate all possible products and sort; however, if we are only interested in the top part of the result, we can implement MERGEPRODUCTS so that the output values are computed lazily and the input lists are accessed only as needed. To do this, we must assume that the multiplication operator <i>0 </i>is monotonic in each of its arguments. By way of motivation, consider the simple case <i>L </i>= {(L1, L2)}. The full set of possible products can be arranged in a two-dimensional grid (see Figure 5a), which we could then sort to obtain MERGEPRODUCTS(L). But because of our assumptions, we know that the first element of MergeProducts(L) must be L1[1] <i>0 </i>L2[1]. Moreover, we know that the second element must be either L1[1] <i>0 </i>L2[2] or L1[2] <i>0 </i>L2[1]. In general (see Figure 5b), if some of the cells have been previously enumerated, the next cell must be one of the cells (shaded gray) adjacent to the previously enumerated ones and we need not consider the others (shaded white). In this way, if we only want to compute the first few elements of MERGEPRODUCTS(L), we can do so by performing a small number of products and discarding the rest of the grid.</p><p>Figure 6 shows the pseudocode for MERGEPRODUCTS.<footnote anchor="7"/> In lines 2-5, a priority queue is initialized with the best element from each <b>L </b><i>e </i><i>L, </i>where <b>L </b>ranges over tuples of lists, and <b>1 </b>stands for a vector whose elements all have the value 1 (the dimensionality of the vector should be evident from the context). The rest of the function creates the virtual list: To enumerate the next element of the list, we first insert the elements adjacent to the previously enumerated element, if any (lines 9-13, where <i>bl </i>stands for the vector whose <i>i</i>th element is 1 and is zero elsewhere), and then enumerate the best element in the priority queue, if any (lines 14-18). We assume standard implementations of</p><p>7 This version corrects the behavior of the previously published version in some boundary conditions. Thanks to D. Smith and J. May for pointing those cases out. In the actual implementation, an earlier version is used which has the correct behavior but not for cyclic forests (which the parser never produces).</p><page local="16" global="216"/><p><i>v.</i><i> </i><b>function </b>MergeProducts(£, &lt;g&gt;) 5: HEAPlFY(cand) 7: <b>function </b>LlST(n) &gt; creates a closure including <i>cand, result, L, </i><b>r</b> 16: append x to rcsnZf 18: <b>return </b>undefined 19: <b>return </b><i>result[n]</i> 20: <b>return </b>List <b>Figure 6</b></p><doubt alpha="47.6" length="21" tooSmall="False" monospace="0.0">2:cand&lt;—\\,result&lt;—[]</doubt><doubt alpha="58.3" length="12" tooSmall="False" monospace="0.0">3:for LG £do</doubt><doubt alpha="45.5" length="33" tooSmall="False" monospace="0.0">4:append      Lz-(1), L,1)to cand</doubt><doubt alpha="40.0" length="15" tooSmall="False" monospace="0.0">6:L&lt;—nz7,r&lt;—nz7</doubt><doubt alpha="66.7" length="21" tooSmall="False" monospace="0.0">8:while\result\ &lt; ndo</doubt><doubt alpha="64.3" length="14" tooSmall="False" monospace="0.0">9:ifL7^nz7then</doubt><doubt alpha="38.9" length="18" tooSmall="False" monospace="0.0">10:forz&lt;—1...|L|do</doubt><doubt alpha="30.8" length="13" tooSmall="False" monospace="0.0">11:r'&lt;—r + bf</doubt><doubt alpha="55.8" length="52" tooSmall="False" monospace="0.0">12:ifLf (r-) defined and(®z-Lz-(r-), L,r')^ candthen</doubt><doubt alpha="52.9" length="34" tooSmall="False" monospace="0.0">13:Insert(cand,((g)fLf(rJ')/L/r'))</doubt><doubt alpha="47.6" length="21" tooSmall="False" monospace="0.0">14:if| cand | &gt; 0then</doubt><doubt alpha="58.6" length="29" tooSmall="False" monospace="0.0">15:(*,L,r)&lt;—EXTRACTBEST(cand)</doubt><doubt alpha="57.1" length="7" tooSmall="False" monospace="0.0">17:else</doubt><p>Function for computing the union of products of sorted lists (Huang and Chiang 2005).</p><p>the priority queue subroutines HEAPIFY,INSERT,and EXTRACTBEST (Cormen et al.</p><p>2001).</p><p>The k-best list generator is then easy to define (Figure 7). First, we generate a parse forest; then we simply apply MERGEPRODUCTS recursively to the whole forest, using memoization to ensure that we generate only one <i>k</i>-best list for each item in the forest. The pseudocode in Figure 7 will find only the weights for the k-best derivations; extend­ing it to output the translations as well is a matter of modifying line 5 to package the English sides of rules together with the weights w, and replacing the real multiplication operator <i>x </i>in line 9 with one that not only multiplies weights but also builds partial translations out of subtranslations.</p><p>1: <b>function </b>KBEST(y) 2: <b>if </b><i>best[v] </i>not defined <b>then</b> 4: <b>if </b><i>v </i>an axiom <b>then</b> 5: <i>best[v] </i><i>&lt;—</i><i> </i><i>{</i><i> </i><i>w</i><i> </i><i>|</i><i> </i><i>v</i><i> </i>is an axiom with weight <i>w</i><i> }, </i>sorted best-first 7: <b>for u </b>s.t. <i>v </i>was inferred from <b>u do</b> 10: <b>return </b><i>best[v]</i> <b>Figure 7</b></p><doubt alpha="0.0" length="5" tooSmall="False" monospace="0.0">3:£^0</doubt><doubt alpha="66.7" length="6" tooSmall="False" monospace="0.0">6:else</doubt><doubt alpha="55.6" length="36" tooSmall="False" monospace="0.0">8:add(KBest(mi),. ..,KBest(m|u|))toC</doubt><doubt alpha="65.5" length="29" tooSmall="False" monospace="0.0">9:best[v]&lt;—MergeProducts(£,x)</doubt><p>Algorithm for computing <i>k</i>-best lists (Huang and Chiang 2005).</p><page local="17" global="217"/></subsection><subsection number="5.3" title="Adding the Language Model"><p>We now turn to the problem of incorporating the language model (LM), describing three methods: first, using the <i>— </i>LM parser to obtain a k-best list of translations and rescoring it with the LM; second, incorporating the LM directly into the grammar in a construction reminiscent of the intersection of a CFG with a finite-state automaton; third, a hybrid method which we call <b>cube pruning.</b></p><p><b>5.3.1 Rescoring. </b>One easy way to incorporate the LM into the model would be to decode first using the <i>— </i>LM parser to produce a k-best list of translations, then to rescore the <i>k</i>-best list using the LM. This method has the potential to be very fast: linear in <i>k. </i>However, because the number of possible translations is exponential in <i>n, </i>we may have to set <i>k </i>extremely high in order to find the true best translation (taking the LM into account) or something acceptably close to it.</p><p><b>5.3.2 Intersection. </b>A more principled solution would be to calculate the LM probabilities online. To do this, we view an m-gram LM as a weighted finite state machine <i>M </i>in which each state corresponds to a sequence of <i>(m — </i>1) English terminal symbols. We can then intersect the English side of our weighted CFG <i>G </i>with this finite-state machine to produce a new weighted CFG that incorporates M.Thus <i>PLM </i>would be part of the rule weights (22) just like the other features. (For notational consistency, however, we write the LM probabilities separately from the rule weights.) In principle this method should admit no search errors, though in practice the blow-up in the effective size of the grammar necessitates pruning of the search space, which can cause search errors.</p><p>The classic construction for intersecting a (non-synchronous) CFG with a finite-state machine is due to Bar-Hillel, Perles, and Shamir (1964), but we use a slightly different construction proposed by Wu (1996) for inversion transduction grammar and bigram LMs. We present an adaptation of his algorithm to synchronous CFGs with two nonterminals per right-hand side and general <i>m</i>-gram LMs. First, assume that the LM expects a whole sentence to be preceded by (m <i>— </i>1) start-of-sentence symbols <i>(s) </i>and followed by a single end-of-sentence symbol <i>(/s). </i>The grammar can be made to do this simply by adding a rule and making S' the new start symbol.</p><p>First, we define two functions <i>p </i>and <i>q </i>which operate on strings over <i>T </i>where <i>T </i>is the English terminal alphabet, and * is a special placeholder symbol that stands for an elided part of an English string.</p><doubt alpha="38.1" length="21" tooSmall="False" monospace="0.0">S' -&lt;Sa,(s)m-1Sm(/s))</doubt><doubt alpha="0.0" length="4" tooSmall="False" monospace="0.0">(26)</doubt><doubt alpha="18.2" length="11" tooSmall="False" monospace="0.0">p(«1- --«i)</doubt><doubt alpha="100.0" length="1" tooSmall="False" monospace="0.0">n</doubt><doubt alpha="47.6" length="21" tooSmall="False" monospace="0.0">PLM(ai\ai-m+1---ai-1)</doubt><doubt alpha="0.0" length="4" tooSmall="False" monospace="0.0">(27)</doubt><doubt alpha="23.1" length="13" tooSmall="False" monospace="0.0">q(«1- - - ai)</doubt><doubt alpha="50.0" length="46" tooSmall="False" monospace="0.0">«1- - -am-1 *ai-m+2- - -aiifI &gt;m a1aiotherwise</doubt><doubt alpha="0.0" length="4" tooSmall="False" monospace="0.0">(28)</doubt><page local="18" global="218"/><p>The function <i>p </i>calculates LM probabilities for all the complete <i>m</i>-grams in a string; the function <i>q </i>elides symbols when all their <i>m</i>-grams have been accounted for. These functions let us correctly calculate the LM score of a sentence piecemeal. For example, let m = 3 and "cgisf" stand for "colorless green ideas sleep furiously." Then Table 1 shows some values of <i>p </i>and <i>q.</i></p><p>Then we may extend the <i>— </i>LM parser as shown in Figure 8 to use <i>p </i>and <i>q </i>to calculate LM probabilities. We call this parser the +LM parser. The items are of the form [X, i,j; e], signifying that a subtree rooted in <i>X </i>has been recognized spanning from <i>i </i>to <i>j </i>on the French side, and its English translation (possibly with parts elided) is <i>e.</i></p><p>The theoretical running time of this algorithm is <i>O</i>(n<footnote anchor="3"/> \T\4(m-1)), because a deduc­tion can combine up to two starred strings, which each have up to 2 (m <i>— </i>1) terminal symbols. This is far too slow to use in practice, so we must use beam-search to prune the search space down to a reasonable size.</p><p><b>5.3.3 Pruning. </b>The chart is organized into cells, each of which contains all the items standing for <i>X </i>spanning <i>fj+1. </i>The rule items are also organized into cells, each of which contains all the rules with the same French side and left-hand side. From here on, let us</p><p><b>Figure 8</b></p><p>Inference rules for the +LM parser. Here <i>w[x/X]</i><i> </i>means the string <i>w</i><i> </i>with the string <i>x</i><i> </i>substituted for the symbol X. The function <i>q </i>is defined in the text.</p><table class="main" frame="box" rules="all" border="0" regular="False"><tr class="row"><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p><b>Table 1</b></p></td><td class="cell"><p></p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>Values of <i>p </i>and <i>q </i>in the "cgisf" example.</p></td><td class="cell"><p></p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p><i>a1 - - - </i><i>«i                                      </i><i>p(a1 - - - </i><i>«i</i>)</p></td><td class="cell"><p>q(a1<b>---ai</b>)</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p></p></td><td class="cell"><p>cg*gi</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>sf 1</p></td><td class="cell"><p>sf</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>cg*gisf <i>Plm</i>(s <i>\ </i>gi) <i>x </i><i>Plm</i>(f <i>\ </i>is)</p></td><td class="cell"><p>cg*sf</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p><i>(s)(s)</i><i> </i><i>cg*</i>sf <i>(/s)</i><i> </i><i>Plm</i>(c \ (s)(s)) x Plm(g \ (s) c) <i>x</i><i> </i><i>Plm</i><i>((/s)\</i><i> </i>sf)</p></td><td class="cell"><p>(s)(s) * f <i>(/s)</i></p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td></tr></table><page local="19" global="219"/><p>consider the item scores as costs, that is, negative log (base-10) probabilities. Then, for each cell, we throw out any item that has a score worse than:</p><p>• |3 plus the best score in the same cell, or</p><p>• the score of the <i>bth </i>best item in the same cell.</p><p>In the +LM parser, the score of an item [X, i, j; e] in the chart does not reflect the LM probability of generating the first (m <i>— </i>1) words of e. Thus two items [X, i, j; e] and [X, i, j; e'] are not directly comparable. To enable more meaningful comparisons, we define a heuristic</p><doubt alpha="51.9" length="81" tooSmall="False" monospace="0.0">h([X,i,j;e])=—log10Plm(e1---ei)     where t=min{m—1,\e\}(29) Similarly for rules,</doubt><doubt alpha="100.0" length="1" tooSmall="False" monospace="0.0">r</doubt><doubt alpha="45.5" length="44" tooSmall="False" monospace="0.0">h(X—(Y,W0X1W1---Wr-1XrWr))=—log^Plm(Wi) (30)</doubt><doubt alpha="33.3" length="3" tooSmall="False" monospace="0.0">i=0</doubt><p>When comparing items for pruning (and only for pruning), we add this heuristic function to the score of each item.</p><p><b>5.3.4 Cube Pruning. </b>Now we can develop a compromise between the rescoring and intersection methods. Consider Figure 9a. To the left of the grid we have four rules with the same French side, and above we have three items with the same category and span, that is, they belong to the same chart cell. Any of the twelve combinations of these rules and items can be used to deduce a new item (whose scores are shown in the grid), and all these new items will go into the same chart cell (partially listed on the right). The intersection method would compute all twelve items and add them to the new chart cell, where most of them will likely be pruned away. In actuality, the grid may be a cube (one dimension for rules and two dimensions for two nonterminals) with up to <i>b<footnote anchor="3"/> </i>elements, whereas the target chart cell can hold at most <i>b </i>items (where <i>b </i>is the limit on the size of the cell imposed during pruning). Thus the vast majority of computed items are pruned. But it is possible to compute only a small corner of the cube and preemptively prune the rest of the items without computing them, a method we refer to as <b>cube pruning.</b></p><p>The situation pictured in Figure 9a is very similar to <i>k</i>-best list generation. The four rules to the left of the grid can be thought of like a 4-best list for a single —LM rule item (X <i>— </i>cong X); the three items above the grid, like a 3-best list for the single <i>— </i>LM item [X, 6,8]; and the new items to be deduced, like a k-best list for [X,5,8], except that we don't know what <i>k </i>is in advance. If we could use MERGEPRODUCTS to enumerate the new items best-first, then we could enumerate them until one of them was pruned from the new cell; then the rest of items, which would have a worse score than the pruned item, could be preemptively pruned.</p><p>MERGEPRODUCTS expects its input lists to be sorted best-first, and the <i>&lt;S)</i><i> </i>operator to be monotonic in each of its arguments. For cube pruning, we sort items (both in the inputs to MERGEPRODUCTS and in the priority queue inside MERGEPRODUCTS) according to their +LM score, including the heuristic function h.The <i>&lt;S)</i><i> </i>operator we use takes one or more antecedent items and forms their consequent item according to<page local="20" global="220"/></p><doubt alpha="33.3" length="3" tooSmall="False" monospace="0.0">(a)</doubt><doubt alpha="16.7" length="6" tooSmall="False" monospace="0.0">&gt;i £ £</doubt><doubt alpha="0.0" length="3" tooSmall="False" monospace="0.0">147</doubt><doubt alpha="46.9" length="143" tooSmall="False" monospace="0.0">[X,5,8; from the ★ the scheme] : 2.1[X,5,8; from the ★ the plan] : 5.1[X,5,8; from the ★ the scheme] : 5.5[X,5,8; since the ★ the scheme] : 7.7</doubt><p><b>X </b><b>—</b>&gt; (cong <b>Xrrj</b>, from <b>Xrrj) </b>1 <b>X </b><b>—</b>&gt; (cong <b>Xrrj, </b>from the <b>Xrrj) </b>2 <b>X </b><b>—</b>&gt; (cong <b>Xrrj, </b>since <b>Xrrj) </b>6 <b>X     </b>(cong <b>Xrrj</b>, through <b>Xrrj) </b>10</p><p><b>Figure 9</b></p><p>Example illustrating hybrid method for incorporating the LM. Numbers are negative log-probabilities. (a) <i>k</i>-best list generation. (b) Cube pruning.</p><p>the +LM parser. Note that the LM makes this <i>0 </i>only approximately monotonic. This means that the enumeration of new items will not necessarily be best-first. To alleviate this problem, we stop the enumeration not as soon as an item falls outside the beam, but as soon as an item falls outside the beam by a margin of e. This quantity e expresses our guess as to how much the scores of the enumerated items can fluctuate because of the LM. A simpler approach, and probably better in practice, would be simply to set e = 0, that is, to ignore any fluctuation, but increase (3 and <i>b </i>to compensate.</p><p>See Figure 9b for an example of cube pruning. The upper-left grid cell is enumerated first, as in the k-best example in Section 5.2, but the choice of the second is different, be­cause of the added LM costs. Then, the third item is enumerated and merged with thefirst(unlikeinthe k-best algorithm). Supposing a threshold beam of (3 = 5and a margin of e = 0.<page local="21" global="221"/>5, we quit upon considering the next item, because, with a score of 7.7, it falls outside the beam by more than e. The rest of the grid is then discarded.</p><table class="main" frame="box" rules="all" border="0" regular="False"><tr class="row"><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>me</p></td><td class="cell"><p></p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p><b>CD</b></p></td><td class="cell"><p></p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p></p></td><td class="cell"><p></p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p><i>U</i></p></td><td class="cell"><p>u</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p><b>CD</b></p></td><td class="cell"><p><b>CD</b></p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p></p></td><td class="cell"><p></p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p></p></td><td class="cell"><p></p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p><b>CO</b></p></td><td class="cell"><p><b>CO</b></p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p></p></td><td class="cell"><p></p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td></tr></table><table class="main" frame="box" rules="all" border="1" regular="False"><tr class="row"><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>2.1</p></td><td class="cell"><p>5.1</p></td><td class="cell"><p>8.2</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>5.5</p></td><td class="cell"><p>8.5</p></td><td class="cell"><p>11.5</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>7.7</p></td><td class="cell"><p>10.6</p></td><td class="cell"><p>13.1</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>11.1</p></td><td class="cell"><p>14.3</p></td><td class="cell"><p>17.3</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td></tr></table><p>The pseudocode is given in Figure 10. The function INFER+LM is used as the <i>0 </i>op­erator; it takes a tuple of antecedent +LM items and returns a consequent +LM item according to the inference rules in Figure 8. The procedure REPARSE+LM takes a <i>— </i>LM chart <i>chart </i>as input and produces a +LM chart <i>chart'</i>. The variables <i>u, v </i>stand for items in <i>— </i>LM and <i>u'</i>, <i>v'</i>,for itemsin +LM, and the relation <i>v</i><i> </i>□ <i>v'</i><i> </i>is defined as follows:</p><doubt alpha="24.1" length="29" tooSmall="False" monospace="0.0">[X, i, j] □ [X, i, j; e] (31)</doubt><doubt alpha="22.7" length="22" tooSmall="False" monospace="0.0">(X—y) □ (X—(y,a)) (32)</doubt><p>For each cell in the input chart, it takes the single item from the cell and constructs the virtual list <i>L </i>of all of its +LM counterparts (lines 9-15). Then, it adds the top items of <i>L </i>to the target cell until the cell is judged to be full (lines 16-20).</p></subsection></section><section number="6." title="Experiments"><p>The implementation of our system, named Hiero, is in Python, a bytecode-interpreted language, and optimized using Psyco, a just-in-time compiler (Rigo 2004), and Pyrex, a Python-like compiled language, with C++ code from the SRI Language Modeling Toolkit (Stolcke 2002). In this section we report on experiments with Mandarin-to-English translation. Our evaluation metric is case-insensitive BLEU-4 (Papineni et al. 2002), as defined by NIST, that is, using the shortest (as opposed to closest) reference sentence length for the brevity penalty.</p><p><i>1: </i><b>function </b>lNFER+LM<b>(u/)</b></p><p>2: <b>return </b>the unique <i>v'</i><i> </i>inferable from <b>u' </b>in +LM 4: <b>procedure </b>Reparse+LM 9: <b>if </b><i>v </i>an axiom <b>then</b> 13: <b>for u </b>s.t. <i>v </i>was inferred from <b>u do</b> 15: L <b>&lt;— </b>MERGEPRODUCTS(£/lNFER+LM) 20: <b>until </b>L[z] falls outside beam by a margin of e</p><doubt alpha="0.0" length="2" tooSmall="False" monospace="0.0">3:</doubt><doubt alpha="40.0" length="15" tooSmall="False" monospace="0.0">5:for£&lt;—1...ndo</doubt><doubt alpha="51.9" length="27" tooSmall="False" monospace="0.0">6:for alli,js.t.j — i= £ do</doubt><doubt alpha="64.7" length="17" tooSmall="False" monospace="0.0">7:for allA= X,Sdo</doubt><doubt alpha="52.9" length="17" tooSmall="False" monospace="0.0">8:v&lt;—chart[A,i,j]</doubt><doubt alpha="51.4" length="37" tooSmall="False" monospace="0.0">10:L&lt;—{v'| v □ v1}, sorted best-first</doubt><doubt alpha="57.1" length="7" tooSmall="False" monospace="0.0">11:else</doubt><doubt alpha="12.5" length="8" tooSmall="False" monospace="0.0">12:C&lt;- 0</doubt><doubt alpha="52.8" length="36" tooSmall="False" monospace="0.0">14:add(chart[u\},...,chart[u\u\])toC</doubt><doubt alpha="12.5" length="8" tooSmall="False" monospace="0.0">16:i&lt;- 0</doubt><doubt alpha="66.7" length="9" tooSmall="False" monospace="0.0">17:repeat</doubt><doubt alpha="20.0" length="10" tooSmall="False" monospace="0.0">18:X&lt;—i+ 1</doubt><doubt alpha="52.0" length="25" tooSmall="False" monospace="0.0">19:add L [z] tochart' [v]</doubt><doubt alpha="66.7" length="9" tooSmall="False" monospace="0.0">Figure 10</doubt><p>Algorithm for faster integrated calculation of LM probabilities.</p><page local="22" global="222"/><subsection number="6.1" title="Experimental Setup"><p>We ran the grammar extractor of Section 3.2 on the parallel corpora listed in Table 2 with the exception of the United Nations data, for a total of 28 million words (English side).<footnote anchor="8"/> We then filtered this grammar for our development set, which was the 2002 NIST MT evaluation dry-run data, and our test sets, which were the data from the 2003-2005 NIST MT evaluations. Some example rules are shown in Table 3, and the sizes of the filtered grammars are shown in Table 4.</p><p>We also used the SRI Language Modeling Toolkit to train two trigram language models with modified Kneser-Ney smoothing (Kneser and Ney 1995; Chen and Goodman 1998): one on 2.8 billion words from the English Gigaword corpus, and the other on the English side of the parallel text (28 million words).</p></subsection><subsection number="6.2" title="Evaluating Translation Speed"><p>Table 5 shows the average decoding time on part of the development set for the three LM-incorporation methods described in Section 5.3, on a single processor of a dual 3 GHz Xeon machine. For these experiments, only the Gigaword language model was used. We set <i>b </i>= 30, |3 = 1 for X cells, <i>b </i>= 15, |3 = 1 for S cells, and <i>b </i>= 100 for rules except where noted in Table 5. Note that values for |3 and e are only meaningful relative to the scale of the feature weights; here, the language model weight was 0.06. The feature weights were obtained by minimum-error-rate training using the cube-pruning (e = 0.1) decoder. For the LM rescoring decoder, parsing and k-best list generation used feature weights optimized for the — LM model, but rescoring used the same weights as the other experiments.</p><p>We tested the rescoring method (k = 10<footnote anchor="3"/> and 10<footnote anchor="4"/>), the intersection method, and the cube-pruning method (e = 0, 0.1, and 0.2). The LM rescoring decoder (k = 10<footnote anchor="4"/>)isthe fastest but has the poorest BLEU score. Identifying and rescoring the <i>k</i>-best derivations is very quick; the execution time is dominated by reconstructing the output strings for the <i>k</i>-best derivations, so it is possible that further optimization could reduce these times. The intersecting decoder has the best score but runs very slowly. Finally, the cube-pruning decoder runs almost as fast as the rescoring decoder and translates almost as well as the intersecting decoder. Among these tests, e = 0.1 gives the best results, but in general the optimal setting will depend on the other beam settings and the scale of the feature weights.</p></subsection><subsection number="6.3" title="Evaluating Translation Accuracy"><p>We compared Hiero against two baselines: the state-of-the-art phrase-based system ATS (Och et al. 2004; Thayer et al. 2004), and Hiero itself run as a conventional phrase-based system with monotone translation (no phrase reordering).</p><p>The ATS baseline was trained on all the parallel data listed in Table 1, for a total of 159 million words (English side). The second language model was also trained on the English side of the whole bitext. Phrases of up to 10 in length on the French side were extracted from the parallel text, and minimum-error-rate training (Och 2003) was</p><p>8 We can train on the full training data shown if tighter constraints are placed on rule extraction for the United Nations data. For example, extracting only rules with no variables up to length 5 yields a grammar of 5.8M rules (filtered for the development set), which fits into memory easily.</p><page local="23" global="223"/><doubt alpha="71.4" length="7" tooSmall="False" monospace="0.0">Table 2</doubt><p>Corpora used in training data. Sizes are approximate and in millions of words.</p><p>performed on the development set for 17 features, the same as used in the NIST 2004 and 2005 evaluations.<footnote anchor="9"/> These features are similar to the features used for our system, but also include features for phrase-reordering (which are not applicable to our system), IBM Model 1 in both directions, a missing word penalty, and a feature that controls a fallback lexicon.</p><p>The other baseline, which we call Hiero Monotone, is the same as Hiero except with the limitation that extracted rules cannot have any nonterminal symbols on their right-hand sides. In other words, only conventional phrases can be extracted, of length up to 5. These phrases are combined using the glue rules only, which makes the grammar equivalent to a conventional phrase-based model with monotone translation. Thus this system represents the nearest phrase-based equivalent to our model, to provide a controlled test of the effect of hierarchical phrases.</p><p>We performed minimum-error-rate training separately on Hiero and Hiero Monotone to maximize their BLEU scores on the development set; the feature weights for Hiero are shown in Table 6. The beam settings used for both decoders were 3 = 30, <i>b </i>= 30 for X cells, 3 = 30, <i>b </i>= 15 for S cells, <i>b </i>= 100 for rules, and e = 3. On the test set, we found that Hiero improves over both baselines in all three tests (see Table 7). All improvements are statistically significant (p &lt; 0.01) using the sign test as described by Collins, Koehn, and Kucerova (2005).</p></subsection></section><section number="7." title="Conclusion"><p>Syntax-based statistical machine translation is a twofold challenge. It is a modeling challenge, in part because of the difficulty of coordinating syntactic structures with potentially messy parallel corpora; it is an implementation challenge, because of the added complexity introduced by hierarchical structures. Here we have addressed the modeling challenge by taking only the fundamental idea from syntax, that language is hierarchically structured, and integrating it conservatively into a phrase-based model typical of the current state of the art. This fusion does no violence to the latter; indeed, we have presented our approach as a logical outgrowth of the phrase-based approach. Moreover, hierarchical structure improves translation accuracy significantly.</p><p>9 The definition of BLEU used in this training was the original IBM definition (Papineni et al. 2002), which defines the effective reference length as the reference length that is closest to the test sentence length.</p><table class="main" frame="box" rules="all" border="0" regular="False"><tr class="row"><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p><b>Corpus</b></p></td><td class="cell"><p><b>LDC catalog</b></p></td><td class="cell"><p><b>Size</b></p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>United Nations</p></td><td class="cell"><p>LDC2004El2</p></td><td class="cell"><p>ll2</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>Hong Kong Hansards</p></td><td class="cell"><p>LDC2004T08</p></td><td class="cell"><p>l2</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>FBIS</p></td><td class="cell"><p>LDC2003E14</p></td><td class="cell"><p>l0</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>Xinhua</p></td><td class="cell"><p>LDC2002El8</p></td><td class="cell"><p>4</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>Sinorama</p></td><td class="cell"><p>LDC2005E47</p></td><td class="cell"><p>3</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>Named entity list</p></td><td class="cell"><p>LDC2003E01</p></td><td class="cell"><p>l</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>Multiple Translation Chinese</p></td><td class="cell"><p>LDC2002T01, LDC2003T17, LDC2004T07</p></td><td class="cell"><p>0.8</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>Chinese Treebank</p></td><td class="cell"><p>LDC2002E17, LDC2003E07</p></td><td class="cell"><p>0.2</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>Translation lexicon</p></td><td class="cell"><p>LDC2002L27</p></td><td class="cell"><p>0.l</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>Chinese News Translation</p></td><td class="cell"><p>LDC2005T06</p></td><td class="cell"><p>0.l</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>English Gigaword (2nd ed.)</p></td><td class="cell"><p>LDC2005Tl2</p></td><td class="cell"><p>2800</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td></tr></table><page local="24" global="224"/><doubt alpha="71.4" length="7" tooSmall="False" monospace="0.0">Table 3</doubt><p>A selection of extracted rules, with ranks after filtering for the development set. All have X for their left-hand sides.</p><doubt alpha="100.0" length="4" tooSmall="False" monospace="0.0">Rank</doubt><doubt alpha="100.0" length="7" tooSmall="False" monospace="0.0">Chinese</doubt><doubt alpha="100.0" length="7" tooSmall="False" monospace="0.0">English</doubt><doubt alpha="0.0" length="1" tooSmall="False" monospace="0.0">1</doubt><doubt alpha="0.0" length="1" tooSmall="False" monospace="0.0">2</doubt><doubt alpha="0.0" length="13" tooSmall="False" monospace="0.0">3 4 5 6 7 8 9</doubt><doubt alpha="0.0" length="17" tooSmall="False" monospace="0.0">10 11 12 13 14 15</doubt><doubt alpha="0.0" length="10" tooSmall="False" monospace="0.0">63 394 756</doubt><doubt alpha="0.0" length="4" tooSmall="False" monospace="0.0">1061</doubt><doubt alpha="0.0" length="29" tooSmall="False" monospace="0.0">3752 4399 5232 5506 6030 7947</doubt><doubt alpha="0.0" length="52" tooSmall="False" monospace="0.0">8119 11052 11996 12068 13237 14125 14249 16871 28145</doubt><doubt alpha="0.0" length="5" tooSmall="False" monospace="0.0">34294</doubt><doubt alpha="80.0" length="5" tooSmall="False" monospace="0.0">de he</doubt><doubt alpha="0.0" length="1" tooSmall="False" monospace="0.0">^</doubt><doubt alpha="100.0" length="3" tooSmall="False" monospace="0.0">zai</doubt><doubt alpha="66.7" length="6" tooSmall="False" monospace="0.0">Xs &gt;de</doubt><p>zai Xrj] X[TJ de %</p><p>X[TJ de X[3 Xg] hou</p><p>jingtian XE</p><p>Xgj yuan zhongguo XE] Xg] duo</p><p>Xazhongguo % Xazai Xu</p><p>zai Xrj] zhong Xjgj zai X[j] wenti shang zai Xrj] de wenti shang zai X[j] hou zai Xrj] zhiqian</p><p>Xg] nian Xjg] zai X[j] de</p><p>Xg] guanxi de Xjg] zai X[j] de Xjg] xia and inXE] the Xjg] of X[i the Xjg] of the Xjjj after Xg]</p><doubt alpha="100.0" length="3" tooSmall="False" monospace="0.0">the</doubt><doubt alpha="83.3" length="6" tooSmall="False" monospace="0.0">and in</doubt><doubt alpha="100.0" length="2" tooSmall="False" monospace="0.0">of</doubt><doubt alpha="83.3" length="6" tooSmall="False" monospace="0.0">theXg]</doubt><p>Xji this year</p><doubt alpha="25.0" length="4" tooSmall="False" monospace="0.0">$X[1</doubt><p>Xji of china more than X[j] X[2 Xrj] china on the X[i issue on the basis of Xjjj after Xg] before Xgj</p><p>XU XH years the of Xji relations under the Xjg] of Xgj<page local="25" global="225"/></p><doubt alpha="71.4" length="7" tooSmall="False" monospace="0.0">Table 4</doubt><p>Test set sizes, with grammar sizes for two systems.</p><p><b>Test set Sentences    Phrases/rules (thousands)</b> <b>Hiero Monotone Hiero</b></p><doubt alpha="45.8" length="24" tooSmall="False" monospace="0.0">development 993 448 3712</doubt><doubt alpha="11.8" length="17" tooSmall="False" monospace="0.0">MT03 919 417 3389</doubt><doubt alpha="11.1" length="18" tooSmall="False" monospace="0.0">MT04 1788 643 5556</doubt><doubt alpha="11.1" length="18" tooSmall="False" monospace="0.0">MT05 1082 455 3646</doubt><doubt alpha="71.4" length="7" tooSmall="False" monospace="0.0">Table 5</doubt><p>Comparison of three methods for decoding with a language model. Time = mean per-sentence user+system time, in seconds. BLEU = case-insensitive BLEU-4. All tests were on the first 400 sentences of the development set.</p><doubt alpha="71.4" length="7" tooSmall="False" monospace="0.0">Table 6</doubt><p>Feature weights obtained by minimum-error-rate training.</p><p><b>Feature Weight</b> language model (bitext) 1.03 extracted rules 4.32</p><doubt alpha="66.7" length="27" tooSmall="False" monospace="0.0">language model (large) 1.00</doubt><doubt alpha="21.4" length="14" tooSmall="False" monospace="0.0">P(Y | a) 0.155</doubt><doubt alpha="40.0" length="10" tooSmall="False" monospace="0.0">P(aIy)1.23</doubt><doubt alpha="30.8" length="13" tooSmall="False" monospace="0.0">Pw(y| a) 1.61</doubt><doubt alpha="30.8" length="13" tooSmall="False" monospace="0.0">Pw(a |y)0.494</doubt><doubt alpha="53.8" length="13" tooSmall="False" monospace="0.0">numbers 0.364</doubt><doubt alpha="50.0" length="10" tooSmall="False" monospace="0.0">dates 6.67</doubt><doubt alpha="50.0" length="10" tooSmall="False" monospace="0.0">names 2.89</doubt><doubt alpha="58.3" length="12" tooSmall="False" monospace="0.0">bylines -952</doubt><doubt alpha="50.0" length="16" tooSmall="False" monospace="0.0">glue rule -0.281</doubt><doubt alpha="64.7" length="17" tooSmall="False" monospace="0.0">word penalty-4.12</doubt><p>The choice to use hierarchical structures that are more complex than flat structures, as well as rules that contain multiple lexical items instead of one, an m-gram model whose structure cuts across the structure of context-free derivations, and large amounts of training data for meaningful comparison with modern systems—these all threaten to make training a synchronous grammar and translating with it intractable. We have shown how, through training with simple methods inspired by phrase-based models, and translating using a modified CKY with cube pruning, this challenge can be met.</p><table class="main" frame="box" rules="all" border="0" regular="False"><tr class="row"><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p><b>Method</b></p></td><td class="cell"><p><b>Settings</b></p></td><td class="cell"><p><b>Time</b></p></td><td class="cell"><p><b>BLEU</b></p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>rescore</p></td><td class="cell"><p><i>k = </i>10<footnote anchor="4"/></p></td><td class="cell"><p>16</p></td><td class="cell"><p>33.31</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>rescore</p></td><td class="cell"><p><i>k = </i>10<footnote anchor="5"/></p></td><td class="cell"><p>139</p></td><td class="cell"><p>33.33</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>intersect*</p></td><td class="cell"><p></p></td><td class="cell"><p>1455</p></td><td class="cell"><p>37.09</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>cube prune</p></td><td class="cell"><p>£ = 0</p></td><td class="cell"><p>23</p></td><td class="cell"><p>36.14</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>cube prune</p></td><td class="cell"><p>£ = 0.1</p></td><td class="cell"><p>35</p></td><td class="cell"><p>36.77</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>cube prune</p></td><td class="cell"><p>£ = 0.2</p></td><td class="cell"><p>111</p></td><td class="cell"><p>36.91</p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"><p>* Rules were</p></td><td class="cell"><p>pruned using <i>b</i></p></td><td class="cell"><p>= 30, ß = 1.</p></td><td class="cell"><p></p></td><td class="cell"></td></tr><tr class="row"><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td><td class="cell"></td></tr></table><page local="26" global="226"/><doubt alpha="71.4" length="7" tooSmall="False" monospace="0.0">Table 7</doubt><p>Results on baseline systems and hierarchical system. Also shown are the 95% confidence intervals, obtained using bootstrap resampling.</p><doubt alpha="24.5" length="49" tooSmall="False" monospace="0.0">System                   MT03           MT04 MT05</doubt><doubt alpha="22.0" length="59" tooSmall="False" monospace="0.0">Hiero Monotone    28.27 ± 1.03    28.83 ± 0.74 26.35 ± 0.92</doubt><doubt alpha="4.7" length="64" tooSmall="False" monospace="0.0">ATS                    30.84 ± 0.99    31.74 ± 0.73 30.50 ± 0.95</doubt><doubt alpha="9.8" length="51" tooSmall="False" monospace="0.0">Hiero            33.72  1.12  34.57 0.82 31.79 0.91</doubt><p>Clearly, however, we have only scratched the surface of the modeling challenge. The fact that moving from flat structures to hierarchical structures significantly improves translation quality suggests that more specific ideas from syntax may be valuable as well. There are many possibilities for enriching the simple framework that the present model provides. But the course taken here is one of organic development of an approach known to work well at large-scale tasks, and we plan to stay this course in future work towards more syntactically informed statistical machine translation.</p></section><section title="Acknowledgments"><p>I would like to thank Liang Huang, Philipp Koehn, Adam Lopez, Nitin Madnani, Daniel Marcu, Christof Monz, Dragos Munteanu, Philip Resnik, Michael Subotin, Wei Wang, and the anonymous reviewers. This work was partially supported by ONR MURI contract FCPO.810548265, by Department of Defense contract RD-02-5700, and under the GALE program of the Defense Advanced Research Projects Agency, contract HR 0011-06-C-0022.   <i>S. D. G.</i></p></section><references><p>Alshawi, Hiyan, Srinivas Bangalore, and Shona Douglas. 2000. Learning dependency translation models as collections of finite-state head transducers. <i>Computational Linguistics, </i>26:45-60.</p><p>Bar-Hillel, Yehoshua, M. Perles, and</p><p>E. Shamir. 1964. On formal properties of simple phrase structure grammars. In Yehoshua Bar-Hillel, editor, <i>Language and Information: Selected Essays on their Theory and Application. </i>Addison-Wesley, Reading, MA, pages 116-150.</p><p>Block, Hans Ulrich. 2000. Example-based incremental synchronous interpretation. In Wolfgang Wahlster, editor, <i>Verbmobil: Foundations ofSpeech-to-Speech Translation. </i>Springer-Verlag, Berlin, pages 411-417.</p><p>Bod, Rens. 1992. A computational model of language performance: Data Oriented Parsing. In <i>Proceedings ofthe Fourteenth International Conference on Computational Linguistics (COLING), </i>pages 855-859, Nantes, France.</p><p>Brown, Peter F., Stephen A. Della Pietra, Vincent J. Della Pietra, and Robert L. Mercer. 1993. The mathematics of statistical machine translation: Parameter estimation. <i>Computational Linguistics, </i>19:263-311.</p><p>Chen, Stanley F. and Joshua Goodman. 1998. An empirical study of smoothing techniques for language modeling. Technical Report TR-10-98, Harvard University Center for Research in Computing Technology.</p><p>Chiang, David. 2005. A hierarchical phrase-based model for statistical machine translation. In <i>Proceedings of the 43rd Annual Meeting of the ACL,</i> pages 263-270, Ann Arbor, MI.</p><p>Chiang, David, Adam Lopez, Nitin Madnani, Christof Monz, Philip Resnik, and Michael Subotin. 2005. The Hiero machine translation system: Extensions, evaluation, and analysis. In <i>Proceedings ofHLT/EMNLP 2005, </i>pages 779-786, Vancouver, Canada.</p><p>Collins, Michael, Philipp Koehn, and Ivona Kucerova. 2005. Clause restructuring for statistical machine translation. In <i>Proceedings ofthe 43rd Annual Meeting of the ACL, </i>pages 531-540, Ann Arbor, MI.</p><p>Cormen, Thomas H., Charles E. Leiserson,</p><p>Ronald L. Rivest, and Clifford Stein. 2001.</p><p><i>Introduction to Algorithms. </i>MIT Press, second edition, Cambridge, MA. Ding, Yuan and Martha Palmer. 2005. Machine translation using probabilistic synchronous dependency insertion grammars. In <i>Proceedings ofthe 43rd Annual Meeting ofthe ACL, </i>pages 541-548, Ann Arbor, MI.</p><page local="27" global="227"/><p>Galley, Michel, Mark Hopkins, Kevin Knight, and Daniel Marcu. 2004. What's in a translation rule? In <i>Proceedings of HLT-NAACL 2004, </i>pages 273-280, Boston, MA.</p><p>Goodman, Joshua. 1999. Semiring parsing. <i>Computational Linguistics, </i>25:573-605.</p><p>Huang, Liang and David Chiang. 2005. Better <i>k</i>-best parsing. In <i>Proceedings ofthe Ninth International Workshop on Parsing Technologies (IWPT), </i>pages 53-64, Vancouver, Canada.</p><p>Kneser, Reinhard and Hermann Ney. 1995. Improved backing-off for <i>M</i>-gram language modeling. In <i>Proceedings of the IEEE International Conference on Acoustics, Speech, and Signal Processing,</i> <i>Translation.</i><i> </i>Ph.D. thesis, University of Southern California, Los Angeles, CA.</p><doubt alpha="60.0" length="60" tooSmall="False" monospace="0.0">pages 181-184, Detroit, MI. Koehn, Philipp. 2003.Noun Phrase</doubt><p>Koehn, Philipp, Franz Josef Och, and Daniel Marcu. 2003. Statistical phrase-based translation. In <i>Proceedings ofHLT-NAACL 2003, </i>pages 127-133, Edmonton, Canada.</p><p>Kumar, Shankar, Yonggang Deng, and William Byrne. 2006. A weighted finite state transducer translation template model for statistical machine translation. <i>Natural Language Engineering,</i> 12:35-75.</p><p>Lewis, P. M., II and R. E. Stearns. 1968.</p><p>Syntax-directed transduction. <i>Journal of the ACM, </i>15:465^88. Magerman, David M. 1995. Statistical decision-tree models for parsing. In <i>Proceedings ofthe 33rd Annual Meeting ofthe</i></p><p><i>ACL, </i>pages 276-283, Cambridge, MA. Marcu, Daniel and William Wong. 2002. A phrase-based, joint probability model for statistical machine translation. In <i>Proceedings ofEMNLP 2002, </i>pages 133-139, Philadelphia, PA.</p><p>Och, Franz Josef. 2003. Minimum error rate training in statistical machine translation. In <i>Proceedings of the 41st Annual Meeting of the ACL, </i>pages 160-167, Sapporo, Japan.</p><p>Och, Franz Josef and Hermann Ney. 2000. Improved statistical alignment models. In <i>Proceedings of the 38th Annual Meeting</i> <i>ofthe ACL, </i>pages 440-447, Hong Kong.</p><p>Och, Franz Josef and Hermann Ney. 2002. Discriminative training and maximum entropy models for statistical machine translation. In <i>Proceedings ofthe 40th</i> <i>Annual Meeting ofthe ACL, </i>pages 295-302, Philadelphia, PA.</p><p>Och, Franz Josef and Hermann Ney. 2004. The alignment template approach to statistical machine translation. <i>Computational Linguistics, </i>30:417-449.</p><p>Och, Franz Josef, Ignacio Thayer, Daniel Marcu, Kevin Knight, Dragos Stefan Munteanu, Quamrul Tipu, Michel Galley, and Mark Hopkins. 2004. Arabic and Chinese MT at USC/ISI. Presentation given at NIST Machine Translation Evaluation Workshop, Alexandria, VA.</p><p>Papineni, Kishore, Salim Roukos, Todd Ward, and Wei-Jing Zhu. 2002. BLEU:a method for automatic evaluation of machine translation. In <i>Proceedings of the 40th Annual Meeting of the ACL,</i> pages 311-318, Philadelphia, PA.</p><p>Probst, Katharina, Lori Levin, Erik Peterson, Alon Lavie, and Jaime Carbonell. 2002. MT for minority languages using elicitation-based learning of syntactic transfer rules. <i>Machine Translation,</i> 17:245-270.</p><p>Quirk, Chris, Arul Menezes, and Colin Cherry. 2005. Dependency treelet translation: Syntactically informed phrasal SMT. In <i>Proceedings ofthe 43rd Annual Meeting ofthe ACL, </i>pages 271-279, Ann Arbor, MI.</p><p>Rigo, Armin. 2004. Representation-based just-in-time specialization and the Psyco prototype for Python. In Nevin Heintze and Peter Sestoft, editors, <i>Proceedings ofthe 2004 ACM SIGPLAN Workshop on Partial Evaluation and Semantics-based Program Manipulation, </i>pages 15-26, Verona, Italy.</p><p>Shieber, Stuart M., Yves Schabes, and Fernando C. N. Pereira. 1995. Principles and implementation of deductive parsing. <i>Journal ofLogic Programming,</i> 24:3-36.</p><p>Simard, Michel, Nicola Cancedda, Bruno Cavestro, Marc Dymetman, Eric Gaussier, Cyril Goutte, Kenji Yamada, Philippe Langlais, and Arne Mauser. 2005. Translating with non-contiguous phrases. In <i>Proceedings ofHLT/EMNLP 2005, </i>pages 755-762, Ann Arbor, MI.</p><doubt alpha="61.8" length="34" tooSmall="False" monospace="0.0">Stolcke, Andreas. 2002. SRILM - an</doubt><p>extensible language modeling toolkit. In <i>Proceedings of the International Conference on Spoken Language Processing, </i>volume 2, pages 901-904, Denver, CO. Thayer, Ignacio, Emil Ettelaie, Kevin Knight, Daniel Marcu, Dragos Stefan Munteanu, Franz Joseph Och, and Quamrul Tipu.</p><doubt alpha="61.3" length="31" tooSmall="False" monospace="0.0">2004. The ISI/USC MT system. In</doubt><p><i>Proceedings ofWSLT 2004, </i>pages 59-60, Kyoto, Japan. Tillmann, Christoph. 2004. A unigram orientation model for statistical machine translation.<page local="28" global="228"/> In <i>Proceedings ofHLT-NAACL</i> <i>2004, </i>pages 101-104. Companion volume, Boston, MA.</p><p>Tillmann, Christoph and Tong Zhang.</p><p>2005. A localized preduction model for statistical machine translation. In <i>Proceedings ofthe 43rd Annual Meeting ofthe ACL, </i>pages 557-564, Ann Arbor, MI.</p><p>Wu, Dekai. 1996. A polynomial-time algorithm for statistical machine translation. In <i>Proceedings ofthe 34th Annual Meeting of the ACL, </i>pages 152-158, Santa Cruz, CA.</p><p>Wu, Dekai. 1997. Stochastic inversion transduction grammars and bilingual parsing of parallel corpora. <i>Computational</i> <i>Linguistics, </i>23:377-404.</p><p>Xia, Fei and Michael McCord. 2004. Improving a statistical MT system with automatically learned rewrite patterns. In <i>Proceedings ofthe Twentienth International Conference on Computational</i></p><doubt alpha="62.9" length="35" tooSmall="False" monospace="0.0">Linguistics (COLING),pages 508-514,</doubt><p>Geneva, Switzerland. Yamada, Kenji and Kevin Knight. 2001. A syntax-based statistical translation model. In <i>Proceedings of the 39th Annual</i></p><doubt alpha="62.5" length="32" tooSmall="False" monospace="0.0">Meeting ofthe ACL,pages 523-530,</doubt><p>Toulouse, France. Zens, Richard and Hermann Ney. 2004. Improvements in phrase-based statistical machine translation. In <i>Proceedings</i></p><doubt alpha="48.4" length="31" tooSmall="False" monospace="0.0">ofHLT-NAACL 2004,pages 257-264,</doubt><p>Boston, MA.</p></references></body></article>