JP2009003642A - 機械翻訳装置、機械翻訳方法、および生成規則作成装置、生成規則作成方法、ならびにそれらのプログラムおよび記録媒体 - Google Patents

機械翻訳装置、機械翻訳方法、および生成規則作成装置、生成規則作成方法、ならびにそれらのプログラムおよび記録媒体 Download PDF

Info

Publication number
JP2009003642A
JP2009003642A JP2007162897A JP2007162897A JP2009003642A JP 2009003642 A JP2009003642 A JP 2009003642A JP 2007162897 A JP2007162897 A JP 2007162897A JP 2007162897 A JP2007162897 A JP 2007162897A JP 2009003642 A JP2009003642 A JP 2009003642A
Authority
JP
Japan
Prior art keywords
translation
word
feature
language
hypothesis
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2007162897A
Other languages
English (en)
Other versions
JP5180522B2 (ja
Inventor
Hajime Tsukada
元 塚田
Taro Watanabe
太郎 渡辺
Jun Suzuki
潤 鈴木
Hideki Isozaki
秀樹 磯崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2007162897A priority Critical patent/JP5180522B2/ja
Publication of JP2009003642A publication Critical patent/JP2009003642A/ja
Application granted granted Critical
Publication of JP5180522B2 publication Critical patent/JP5180522B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Machine Translation (AREA)

Abstract

【課題】翻訳精度を向上させることのできる機械翻訳技術を提供する。
【解決手段】機械翻訳装置2は、翻訳元または翻訳先の文を構成する部分木の階層的特徴を表現する素性を示す階層的素性119と、翻訳元に含まれずに翻訳先の文に挿入されている単語と翻訳元単語との関係を表現する素性を示す翻訳先言語挿入素性118と、ルールテーブル114に格納された翻訳モデルとを含む素性に対応した重みを、素性重み学習用対訳学習データ250に基づいて学習し、素性重み211を格納する素性重み学習手段221と、素性ベクトルと素性重みベクトルとの内積を部分仮説スコアとして算出する部分仮説スコア算出手段243と、入力文に対して適用可能な部分仮説を探索し、部分仮説を拡張することによって最終的に生成された部分仮説のうちで部分仮説スコアが最大となる部分仮説を仮説として探索する仮説探索手段244とを備える。
【選択図】図7

Description

本発明は、機械翻訳装置、機械翻訳方法、および生成規則作成装置、生成規則作成方法、ならびにそれらのプログラムおよび記録媒体に関する。
従来、統計モデルを用いて機械翻訳を実現する技術(統計的機械翻訳)が知られている(例えば、非特許文献1、非特許文献2、非特許文献3)。
統計的機械翻訳は、翻訳元言語の単語列(文)が与えられたとき、翻訳確率を最大化するような翻訳先言語の単語列(文)を探索する問題として定式化される。ここで、翻訳確率を対数線形モデルで表現すると、最終的に統計的機械翻訳は式(1)で定式化される。
Figure 2009003642
式(1)は、ベクトルを使って式(2)のように書き換えることもできる。
Figure 2009003642
翻訳元言語の単語列には、各単語位置に整数「1」〜「J」の識別符号が付与されている。すなわち、翻訳元言語の単語列は、「J」個の単語から構成される。なお、翻訳元言語が日本語の場合には、翻訳元言語の単語列は、「J」個の自立語、付属語、句読点(。、)から構成されることとなる。また、翻訳先言語の単語列には、各単語位置に整数「1」〜「I」の識別符号が付与されている。すなわち、翻訳先言語の単語列は、「I」個の単語から構成される。また、m(1≦m≦M)は、素性関数を識別するための整数を示し、Mは、素性関数の個数を示す。また、各素性関数は、翻訳としての確からしさを表すものや、翻訳先言語としての確からしさを表すもの等である。単語列集合Eは、翻訳先言語の単語のあらゆる組み合わせで生成可能なすべての単語列集合を表す。各素性重みλmは、誤り最小化学習法等を用いて素性重み学習用対訳コーパスにおける翻訳精度の値が最大になるように設定される(例えば、非特許文献4参照)。
翻訳元言語の文から翻訳先言語の文への翻訳に対して、重み付き同期文脈自由文法(weighted synchronous context-free grammar)を利用して、翻訳元言語の文と翻訳先言語の文との対応付けをモデル化する方法が知られている(例えば、非特許文献2、非特許文献3参照)。
重み付き同期文脈自由文法は、式(3)に示す生成規則に、重みが付いたものの集合からなるものである。
Figure 2009003642
ここで、矢印の左辺のXは、非終端記号を示す。矢印の右辺のγは、終端記号または非終端記号から構成された記号列であって翻訳元言語に対応している。また、αは、終端記号または非終端記号から構成された記号列であって翻訳先言語に対応している。また、「〜」は、記号列γに含まれる非終端記号と、記号列αに含まれる非終端記号との一対一の対応関係を表している。ここでは、記号列γに含まれる非終端記号の個数と、記号列αに含まれる非終端記号の個数とは同じものとする。
式(3)に示した生成規則の具体例を表1に示す。ここで、X(k)は、非終端記号であり、kは、非終端記号の対応関係をあらわす。
Figure 2009003642
重み付き同期文脈自由文法を利用した従来のモデル化では、重み付き同期文脈自由文法の導出Dを用いて、翻訳元言語の単語列と翻訳先言語の単語列とをそれぞれf(D)、e(D)と記述する。ここで、例えば、翻訳元言語の単語列f(D)の「i」番目の単語から「j」番目単語を被う生成規則をrとすると、導出Dは、三つ組<r,i,j>の集合で表される。
そして、非特許文献2のモデル化では、統計的機械翻訳を定式化した式(1)を導出ベースに修正した式(4)を用いる。この定式化では、翻訳元言語の単語列が与えられたとき、素性関数と素性重みとの積の線形和が最大となるような導出D^を求めたときに、それに対応するe(D^)が翻訳結果となる。ここで、記号「^(ハット)」は、文字「D」の上に付される記号を示し、本明細書では、以下、記号「^(ハット)」を同様な意味で使用する。なお、s.t.はsuch thatの略である。
Figure 2009003642
式(4)に示す各素性関数の値hm(D)に何を用いるかについては様々なバリエーションが考えられる。例えば、以下の6つの関数の値の自然対数logeを用いる場合がある(例えば、非特許文献1参照)。これら6つの関数の値とは、式(5)および式(6)に示す翻訳確率Pe|f(D),Pf|e(D)と、式(7)および式(8)に示すレキシカル重みLexe|f(D),Lexf|e(D)と、n-gram言語モデルの確率PLM(e(D))と、フレーズペナルティexp(length(e(D)))である。ここで、length(・)は、単語数を返す関数を示す。
Figure 2009003642
翻訳確率Pe|f(D),Pf|e(D)と、レキシカル重みLexe|f(D),Lexf|e(D)とは、翻訳としての確からしさを評価するための値であり、翻訳モデルとも呼ばれている。詳細には、例えば、翻訳確率Pe|f(D)は、式(5)に示すように、導出Dに含まれる生成規則rごとの確率P(α|γ)を生成規則ごとのスコアとして、導出Dに含まれるすべての生成規則rについて生成規則ごとのスコアを積算したものである。
例えば、非特許文献2に記載された方法では、翻訳における解探索を次の手順で行う。まず、CKY(Cocke-Kasami-Younger)法に基づくボトムアップ構文解析において、同期文脈自由文法の翻訳元言語側の生成規則を、翻訳元言語の単語列に適用し、翻訳元言語の構文解析木を得る。そして、翻訳元言語の構文解析木に対応する同期文脈自由文法の最適な導出D^を、前記した式(4)に基づいて求め、その最適な導出D^に基づいて翻訳先言語の単語列を生成する。ただし、統計的機械翻訳の解探索において解の候補(以下、仮説と呼ぶ)は膨大であるため、計算量の観点から、全探索をして真の最適解を求めることは事実上不可能となっている。そこで、従来、解探索の過程で部分的に構成された、同期文脈自由文法の部分木の導出Dに対して所定の枝刈りを実行しながら処理をすすめて準最適解を求めることとしている。
Philipp Koehn, Franz Josef Och, and Daniel Marcu、Statistical phrase-based translation、In Proc. of NAACL 2003、p. 48-54、Edmonton、Canada、2003 David Chiang、A hierarchical phrase-based model for statistical machine translation、In Proc. of ACL 2005、p. 263-270、Ann Arbor、Michigan、June 2005 Taro Watanabe, Hajime Tsukada, and Hideki Isozaki、Left-to-right target generation for hierarchical phrase-based trans1ation、In Proc. of COLING/ACL2006、p. 777-784、Sydney、Australia、Jully 2006 Franz Josef Och、Minimum error rate training in statistical machine translation、In Proc.of ACL 2003、p. 160-167、Sapporo、Japan、July 2003
前記した従来技術では、翻訳元言語の部分木と翻訳先言語の部分木との対応は、同期文脈依存文法の各規則rごとに定義された翻訳確率Pe|f(r),Pf|e(r)と、レキシカル重みLexe|f(r),Lexf|e(r)とによってモデル化される。しかしながら、翻訳元、翻訳先のいずれにおいても、非終端記号をどの規則で展開することが尤もらしいかについては、明示的にモデル化されておらず、翻訳先言語の言語モデルによって間接的に制約されているだけに過ぎない。特に、非特許文献2や非特許文献3に記載された手法は、自動獲得される同期文脈依存文法に基づいており、グルー規則を除くと、非終端記号は事実上一種類しかないため、規則展開に関するモデル化の粗さは深刻である。
前記した非終端記号をどの規則で展開することが尤もらしいかということについての具体例として、従来の同期文脈依存文法を用いた手法の誤訳例と正解翻訳例を、図12および図13にそれぞれ示す。この例では、日本語から英語への翻訳について以下の文を示している。
(1)翻訳元言語(日本語)の文:
「中国 の 措置 に対する 日本 の抗議 は 当然 だ 。」
(2)翻訳先言語(英語)の文(誤訳例):
「It is natural for China’s action to protest Japan.」
(3)翻訳先言語(英語)の文(正解翻訳例):
「It is natural for Japan to protest China’s action.」
図12の誤訳例に示すように、翻訳元言語側の「X→X(1) は 当然だ X(2)」のX(1)は、「X→X(1) に対する X(2)」のルールで展開されている。
一方、図13の正解翻訳例に示すように、翻訳元言語側の「X→X(1) は 当然だ X(2)」のX(1)は、「X→X(1) に対する 日本 の X(2)」のルールで展開されている。
前記した(3)の正解翻訳例のスコアを、前記した(2)の誤訳例のスコアよりも有利にする(高くする)ためには、後者のルールによる展開が、より尤もらしいことをモデル化すればよいと考えられる。しかしながら、従来のそれぞれの方法では、このようなモデル化を明示的には行っていなかった。したがって、従来の方法は翻訳精度が低いという問題がある。なお、図12および図13では、非終端記号を「X1,X2,X8,X6,…」等で表記した。
また、一般に、翻訳結果には、翻訳元の単語に対応しない単語が現れることがある。例えば、日本語では、しばしば主語が省略される。そのため、日英翻訳において、翻訳先言語「英語」の主語に対応する翻訳元言語「日本語」の単語が存在しない場合が生じる。同様に、日本語には冠詞がないので、翻訳先言語「英語」の冠詞に対応する翻訳元言語「日本語」の単語がないことが多い。このような場合に正解翻訳例のスコアを誤訳例のスコアよりも有利にする(高くする)ためには、翻訳結果に現れて、翻訳元の単語に対応する単語がない単語を素性としてモデル化すればよいと考えられる。しかしながら、従来のそれぞれの方法では、このようなモデル化を明示的には行っていなかった。したがって、従来の方法は翻訳精度が低いという問題がある。
そこで、本発明では、前記した問題を解決し、翻訳精度を向上させることのできる機械翻訳技術を提供することを目的とする。
前記課題を解決するため、本発明に係る機械翻訳装置は、対訳学習データ中の翻訳元言語の単語列または翻訳先言語の単語列を構成する部分木の階層的特徴を表現する素性を示す階層的素性と、前記対訳学習データ中の翻訳先言語の単語列を構成する単語に対応する単語が翻訳元言語の単語列に含まれていないときに前記翻訳先言語の単語列に挿入されている単語と前記翻訳元言語の単語列に含まれる単語との関係を表現する素性を示す翻訳先言語挿入素性とのうちの少なくとも一方と、翻訳元言語の単語列と翻訳先言語の単語列との対応の確からしさを定義する翻訳モデルとを利用して、入力された翻訳元言語の単語列の翻訳結果である前記入力に対応する翻訳先言語の単語列として、所定の部分仮説からそれよりも長い新たな部分仮説を順次作成して前記所定の部分仮説を拡張することによって最終的に生成された部分仮説である仮説を出力する機械翻訳装置であって、前記階層的素性と前記翻訳先言語挿入素性とのうちの少なくとも一方と前記翻訳モデルとを含む素性に対応した重みを、素性重み学習用対訳学習データに基づいて学習し、学習結果を素性重みとして記憶手段に格納する素性重み学習手段と、前記階層的素性と前記翻訳先言語挿入素性とのうちの少なくとも一方と前記翻訳モデルとを要素として含む素性ベクトルと、前記素性重みを示す重みベクトルとの内積を、前記作成された部分仮説の評価値を示す部分仮説スコアとして算出する部分仮説スコア算出手段と、前記入力された翻訳元言語の単語列に対して適用可能な所定の部分仮説を探索し、前記所定の部分仮説を拡張することによって最終的に生成された部分仮説のうちで、前記部分仮説スコアが最大となる部分仮説を、前記仮説として探索する仮説探索手段とを備えることを特徴とする。
また、前記課題を解決するために、本発明に係る機械翻訳方法は、対訳学習データ中の翻訳元言語の単語列または翻訳先言語の単語列を構成する部分木の階層的特徴を表現する素性を示す階層的素性と、前記対訳学習データ中の翻訳先言語の単語列を構成する単語に対応する単語が翻訳元言語の単語列に含まれていないときに前記翻訳先言語の単語列に挿入されている単語と前記翻訳元言語の単語列に含まれる単語との関係を表現する素性を示す翻訳先言語挿入素性とのうちの少なくとも一方と、翻訳元言語の単語列と翻訳先言語の単語列との対応の確からしさを定義する翻訳モデルとを利用して、入力された翻訳元言語の単語列の翻訳結果である前記入力に対応する翻訳先言語の単語列として、所定の部分仮説からそれよりも長い新たな部分仮説を順次作成して前記所定の部分仮説を拡張することによって最終的に生成された部分仮説である仮説を出力する機械翻訳装置の機械翻訳方法であって、素性重み学習手段によって、前記階層的素性と前記翻訳先言語挿入素性とのうちの少なくとも一方と前記翻訳モデルとを含む素性に対応した重みを、素性重み学習用対訳学習データに基づいて学習し、学習結果を素性重みとして記憶手段に格納する素性重み学習ステップと、部分仮説スコア算出手段によって、前記階層的素性と前記翻訳先言語挿入素性とのうちの少なくとも一方と前記翻訳モデルとを要素として含む素性ベクトルと、前記素性重みを示す重みベクトルとの内積を、前記作成された部分仮説の評価値を示す部分仮説スコアとして算出する部分仮説スコア算出ステップと、仮説探索手段によって、前記入力された翻訳元言語の単語列に対して適用可能な所定の部分仮説を探索し、前記所定の部分仮説を拡張することによって最終的に生成された部分仮説のうちで、前記部分仮説スコアが最大となる部分仮説を、前記仮説として探索する仮説探索ステップとを有することを特徴とする。
かかる構成の機械翻訳装置またはかかる手順の機械翻訳方法によれば、機械翻訳装置は、階層的素性と翻訳先言語挿入素性とのうちの少なくとも一方と翻訳モデルとを含む素性に対応した重みを、素性重み学習用対訳学習データに基づいて学習する。ここで、素性に、言語モデルやフレーズペナルティをさらに含んでいてもよい。階層的素性は、正解データの翻訳元または翻訳先の文を構成する部分木の階層的特徴を表現する素性なので、この素性を従来利用していた素性に加えた素性の重みを学習することで、入力された翻訳元文に対して、正解翻訳として尤もらしい展開の仕方で翻訳文を生成することが可能となる。また、翻訳先言語挿入素性は、正解データの翻訳元の文に含まれておらずに翻訳先の文に挿入された単語を表現する素性なので、この素性を従来利用していた素性に加えた素性の重みを学習することで、例えば、日本語のように主語を省略することが多い言語や、冠詞の存在しない言語から冠詞の存在する言語に翻訳する場合に、正解翻訳として尤もらしい展開の仕方で翻訳文を生成することが可能となる。
そして、機械翻訳装置は、従来のように翻訳モデルや言語モデル、フレーズペナルティのみを素性としてスコアを算出する場合に比べて、より高次元の素性および重みを利用して、より精緻なモデル化をすることができる。機械翻訳装置は、従来の装置のように翻訳モデルや言語モデル、フレーズペナルティのみを素性として重みを学習する場合と比較して、翻訳先言語の単語列の翻訳精度を向上させることができる。
また、前記課題を解決するために、本発明に係る生成規則作成装置は、前記した機械翻訳装置で利用する素性と生成規則とを作成する生成規則作成装置であって、対訳学習データから予め求められた翻訳元言語の単語と翻訳先言語の単語との単語対応に基づいて、前記翻訳元言語の単語列または前記翻訳先言語の単語列を構成する部分木の階層的特徴を表現する素性を示す階層的素性を前記素性の1つとして抽出する階層的素性抽出手段と、対訳学習データから予め求められた翻訳元言語の単語と翻訳先言語の単語との単語対応に基づいて、前記翻訳先言語の単語列を構成する単語に対応する単語が前記翻訳元言語の単語列に含まれていないときに前記翻訳先言語の単語列に挿入されている単語と前記翻訳元言語の単語列に含まれる単語との関係を表現する素性を示す翻訳先言語挿入素性を抽出する翻訳先言語挿入素性抽出手段とのうちの少なくとも一方を備えることを特徴とする。
また、前記課題を解決するために、本発明に係る生成規則作成方法は、階層的素性抽出手段によって、対訳学習データから予め求められた翻訳元言語の単語と翻訳先言語の単語との単語対応に基づいて、前記翻訳元言語の単語列または前記翻訳先言語の単語列を構成する部分木の階層的特徴を表現する素性を示す階層的素性を前記素性の1つとして抽出する階層的素性抽出ステップと、翻訳先言語挿入素性抽出手段によって、対訳学習データから予め求められた翻訳元言語の単語と翻訳先言語の単語との単語対応に基づいて、前記翻訳先言語の単語列を構成する単語に対応する単語が前記翻訳元言語の単語列に含まれていないときに前記翻訳先言語の単語列に挿入されている単語と前記翻訳元言語の単語列に含まれる単語との関係を表現する素性を示す翻訳先言語挿入素性を抽出する翻訳先言語挿入素性抽出ステップとのうちの少なくとも一方を有することを特徴とする。
かかる構成の生成規則作成装置またはかかる手順の生成規則作成方法によれば、生成規則作成装置は、単語対応において翻訳元または翻訳先の文を構成する部分木の階層的特徴を表現する階層的素性を抽出すると共に、正解データの翻訳元の文に含まれておらずに翻訳先の文に挿入された単語を表現する翻訳先言語挿入素性を抽出する。したがって、生成規則作成装置において抽出された階層的素性と翻訳先言語挿入素性のうちの少なくともいずれかと、翻訳元言語の単語列と翻訳先言語の単語列との対応の確からしさを予め定義した翻訳モデルとを用いて統計的機械翻訳を行うことで、正解翻訳として尤もらしい展開の仕方で翻訳文を生成することが可能となる。
また、本発明に係る機械翻訳プログラムは、前記した機械翻訳方法をコンピュータに実行させることを特徴とする。このように構成されることにより、このプログラムをインストールされたコンピュータは、このプログラムに基づいた各機能を実現することができる。
また、本発明に係る生成規則作成プログラムは、前記した生成規則作成方法をコンピュータに実行させることを特徴とする。このように構成されることにより、このプログラムをインストールされたコンピュータは、このプログラムに基づいた各機能を実現することができる。
また、本発明に係るコンピュータ読み取り可能な記録媒体は、前記した機械翻訳プログラムまたは前記した生成規則作成プログラムが記録されたことを特徴とする。このように構成されることにより、この記録媒体を装着されたコンピュータは、この記録媒体に記録されたプログラムに基づいた各機能を実現することができる。
本発明によれば、翻訳精度を向上させることが可能となる。
以下、図面を参照して本発明の機械翻訳装置および機械翻訳方法、並びに、生成規則作成装置および生成規則作成方法を実施するための最良の形態(以下「実施形態」という)について詳細に説明する。以下では、生成規則作成装置および生成規則作成方法と、機械翻訳装置および機械翻訳方法とに分けて順次説明を行う。
[生成規則作成装置の構成]
図1は、本発明の実施形態に係る生成規則作成装置の構成を示すブロック図である。
生成規則作成装置1は、翻訳元言語の単語列を翻訳先言語の単語列に機械的に翻訳する機械翻訳装置で利用する素性と生成規則とを作成するものである。以下では、翻訳元言語を日本語、翻訳先言語を英語として説明することとする。
生成規則作成装置1は、例えば、CPU(Central Processing Unit)と、RAM(Random Access Memory)と、ROM(Read Only Memory)と、HDD(Hard Disk Drive)と、入出力インタフェース等から構成され、図1に示すように、入出力手段10と、記憶手段11と、制御手段12とを備えている。
入出力手段10は、対訳コーパス(対訳学習データ)150を制御手段12に入力したり、演算処理の結果や記憶手段11に記憶されたデータ等を出力装置Dに出力したりするものである。また、入出力手段10は、入力装置Kから、所定のコマンド(モード選択コマンドや動作コマンド等)を制御手段12に入力する。本実施形態では、モード選択コマンドは、「単語対応作成」モードを選択するコマンドと、「ルールテーブル作成」モードを選択するコマンドと、「言語モデル作成」モードを選択するコマンドとを含む。
対訳コーパス150は、互いに同じ意味を有する翻訳元言語の単語列と翻訳先言語の単語列との組合せのデータを複数備える。
記憶手段11は、例えば、CPUによる演算処理等に利用されるRAMや、例えば、所定のプログラム、各種データベース、処理結果等を格納するROMやHDDを備えている。例えば、記憶手段11には、処理結果として、単語対応111と、フレーズペア112と、ルール113と、ルールテーブル114と、言語モデル115と、翻訳先言語bigram素性116と、単語ペア素性117と、翻訳先言語挿入素性118と、階層的素性119とが格納される。
制御手段12は、モード判定手段121と、言語モデル学習手段122と、単語対応作成手段123と、言語間対応素性抽出手段124と、フレーズペア抽出手段125と、生成規則作成手段126と、翻訳スコア計算手段127と、階層的素性抽出手段128とを備えている。
モード判定手段121は、入力装置Kから入出力手段10を介して入力したモード選択コマンドの示すモードを判定するものである。モード判定手段121は、モードが「単語対応作成」モードの場合には、単語対応作成手段123に対して対訳コーパス150を入力するように指示する。また、モード判定手段121は、モードが「ルールテーブル作成」モードの場合には、フレーズペア抽出手段125に対して対訳コーパス150を入力するように指示する。また、モード判定手段121は、モードが「言語モデル作成」モードの場合には、言語モデル学習手段122に対して翻訳先言語コーパス140を入力するように指示する。
言語モデル学習手段122は、翻訳先言語コーパス140を読み込み、翻訳先言語としての確からしさを表すn-gramを計算し、言語モデル115に格納する。また、言語モデル学習手段122は、読み込んだ翻訳先言語コーパス140から翻訳先言語bigram素性116を抽出する。この翻訳先言語bigram素性116の詳細については後記する。
単語対応作成手段123は、「単語対応作成」モードを選択するコマンドが入力されたときに、対訳コーパス150から得られる単語共起に関する統計量を活用し、多対多(翻訳元言語または翻訳先言語の単語がどこにも対応付かないことを含む)の単語対応111を自動的に求めるものである。単語対応作成手段123は、多対多の単語対応111を求めるために、例えば、単語単位の翻訳モデルを活用して、文全体で最適な1対多対応と多対1対応とを求め、その両者を組み合わせる。組み合わせ方の一例としては、1対多対応と多対1対応とのインターセクションを使い、それに隣接する1対多対応と多対1対応とのユニオンの要素を追加する方法がある(非特許文献1参照)。なお、単語単位の翻訳モデルについては、「Peter F. Brown, Stephen A. Della Pietra, Vincent J. Della Pietra, and Robert L. Mercer、The mathematics of statistical machine translation: Parameter estimation、Computatinal Linguistics、19(2):263-311、1993」に記載されている。また、対訳コーパス150自体が単語対応111の情報を保持している場合には、単語対応作成手段123を省略した構成としてもよい。
図2に、日英の対訳の単語対応の例を示す。8個の単語および句点(ピリオド)を示す黒丸が単語対応である。
「違憲 の 問題 について は 、 連邦 憲法 裁判所 が 決定 する 。」
「The Federal Constitutional Court decides on the question of unconstitutionality .」
言語間対応素性抽出手段124は、単語ペア素性抽出手段131と、翻訳先言語挿入素性抽出手段132とを備えている。
単語ペア素性抽出手段131は、単語対応111から単語ペア素性117を抽出するものである。単語ペア素性117は、翻訳元言語/翻訳先言語の単語ペアに基づく素性である。
翻訳先言語挿入素性抽出手段132は、単語対応111に基づいて、翻訳先言語挿入素性118を抽出するものである。
翻訳先言語挿入素性118は、単語対応111において、翻訳先言語の単語列を構成する単語に対応する単語が翻訳元言語の単語列に含まれていないときに翻訳先言語の単語列に挿入されている単語と翻訳元言語の単語列に含まれる単語との関係を表現する素性を示す。これら単語ペア素性117および翻訳先言語挿入素性118の詳細については後記する。
フレーズペア抽出手段125は、翻訳元言語の単語と翻訳先言語の単語との単語対応111に基づき、対訳コーパス150から、翻訳元言語と翻訳先言語において互いに同じ意味を有する単語または句の組合せをフレーズペア112として抽出するものである。抽出されたフレーズペア112は記憶手段11に格納される。フレーズペア抽出手段125は、式(1)に示した翻訳元言語の単語列と翻訳先言語の単語列との対訳文に対して、ある単語対応aが計算されたとき、式(9)に示すフレーズペアを抽出する。ここで、単語対応aは、翻訳先言語の単語位置と翻訳元言語の単語位置の組の集合である。式(9)の「i,m,j,n」は整数を示し、単語対応aとの間で式(10)〜式(12)の関係を満たすものである。
Figure 2009003642
例えば、図2に示した対訳文の単語対応からは、フレーズペア抽出手段125によって表2に示すようなフレーズペアが抽出され、フレーズペア112に格納される。
このとき、フレーズペア内の各単語の対応、例えば、表2に示す最初の(1行目の)フレーズペア内において、(違憲,unconstitutionality),(問題,question)などの単語対応もフレーズペア112に同時に格納されるものとする。つまり、表2は、実際には、各行に、フレーズペアの格納された列の他に、(違憲,unconstitutionality),(問題,question)などの単語対応が格納された列(図示を省略する)を備える。
Figure 2009003642
生成規則作成手段126は、対訳コーパス150の中の対訳文ペア(対訳文の組合わせ)ごとに、その対訳文ペアから抽出されたフレーズペア112内に格納されたフレーズペアのリストをもとに、同期文脈自由文法の生成規則を作成し、ルール113に格納するものである。ここで、作成する生成規則では、翻訳先言語側は終端記号で始まらなければならないという制約を設ける。また、ルール113に格納する生成規則は、重複を許すものとする。こうして作成される生成規則においては、非特許文献2で用いられる以下のようなグルー規則は用いない。なお、グルー規則とは、Sを開始記号、Xを非終端記号としたときに、以下の2つの規則のことを示す。
S → <S(1)(1) ,S(1)(1)
S → <X(1) ,X(1)
生成規則作成手段126は、フレーズペア
Figure 2009003642
に対応して、式(13)〜式(17)の生成規則を生成する。このうち、式(14)〜式(17)の生成規則は、式(13)の生成規則から自動的に生成することができる。また、式(14)〜式(17)の生成規則に付与されるスコアについても、式(13)の生成規則と同一値を用いることができる。このような理由から、実装上は、式(14)〜式(17)の生成規則は明示的にストレージに格納する必要がない。式(14)〜式(17)の生成規則は、非特許文献2で用いられるグルー規則の非終端記号Xを、Xを左辺とする個々の規則で1回書き換えたものに対応している。
Figure 2009003642
生成規則作成手段126は、式(18)で示す生成規則が生成され、かつ、式(13)の右辺のフレーズペアが、式(19)および式(20)の関係を満たす場合、式(21)で示す生成規則を生成する。
Figure 2009003642
ここで、αには終端記号で始まらなければならないという制約を設ける。なお、本実施形態に必須のものではないが、生成規則作成手段126は、例えば、以下の制約も採用する。第1に、γとαの両方とも、少なくとも1つの終端記号を含まなければならない。第2に、生成規則は、最大2つの非終端記号を有することができる。しかし、翻訳元言語側のγで、非終端記号は隣接してはならない。
翻訳スコア計算手段127は、ルール113に重複を許して格納されている生成規則を数え上げ、各生成規則rに対応する翻訳確率Pe|f(r),Pf|e(r)と、レキシカル重みLex e|f(r),Lex f|e(r)とを計算し、計算結果を素性として、各生成規則rに対応づけてルールテーブル114に格納する。図3に、ルールテーブルの一例を示す。また、表3に生成規則rに対応した各翻訳確率、レキシカル重みの計算式を示す。このスコア計算は非特許文献2に倣ったものである。
なお、フレーズペア112と同様に、ルール113およびルールテーブル114に格納される規則について、翻訳元単語と翻訳先単語の対応も一緒に格納されているものとする。同じ規則でも、単語対応は複数のバリエーションが考えられるが、各規則に対し、ルール113の中で最も多く現れた単語対応をルールテーブル114では用いる。
Figure 2009003642
階層的素性抽出手段128は、生成規則作成手段126がルールテーブル114を作成する際に翻訳元言語の単語列または翻訳先言語の単語列を構成する部分木の階層的特徴を表現する素性を示す階層的素性119を素性の1つとして抽出するものである。本実施形態では、翻訳元言語の単語列を構成する部分木の階層的特徴を表現する素性を階層的素性119として抽出する。階層的素性119の詳細については後記する。なお、階層的素性抽出手段128は、生成規則作成手段126の動作に依存せずに、ルールテーブル114中の単語対応に基づいて階層的素性119を抽出するように構成することも可能である。
[具体例]
具体的には、生成規則作成手段126は、図2に示した対訳文から表4に示すような規則(右辺だけ示す)を生成する。表4の例では、各生成規則の右辺の翻訳先言語側は必ず終端記号(単語)で始まっている。なお、表4は、実際には、各行に、各生成規則の右辺の格納された列の他に、(連邦,Federal)などの単語対応が格納された列(図示を省略する)を備える。
Figure 2009003642
前記した式(1)や前記した式(2)で仮定する素性としては、前記した表3に示す翻訳確率やレキシカル重みのような実数値をとるものが従来から用いられてきた。本実施形態では、このような実数値をとる素性だけでなく、例えば、式(22)に示すような単純な「0」か「1」の値をとる二値素性を使用する。
Figure 2009003642
ここで、iは多次元の素性ベクトルh(f,e)の次元をあらわす。
従来から用いられている素性に対して、どのような二値素性を加えると、最終的に翻訳精度が効果的に向上するかということは、自明ではない。そこで、本実施形態では、以下に示すように、大別して4種類の二値素性を用いることができるように構成した。
<単語ペア素性>
単語ペア素性117(図1参照)について図4を参照して説明する。ここでは、図4に示すように、翻訳先言語の単語列401と、翻訳元言語の単語列402とから、フレーズペア403(403a,403b,403c)が抽出され、フレーズペア112に格納されているものとする。また、例えば、フレーズペア403bに含まれる単語対応404,405,406が単語対応111に格納されているものとする。ここでは、単語対応404は(ei,fj+1)であり、単語対応405は(ei,fj+1)、単語対応406は(ei+3,fj)である。このとき、単語対応(we,wf)ごとに、式(23)に示す素性hi(f,e)を定義する。なお、フレーズペア403aに含まれる単語対応407は(ei-1,ej-1)である。
Figure 2009003642
この式(23)に示す素性は、ある種の翻訳モデルであると見ることができる。
この素性を実現するために、言語間対応素性抽出手段124の単語ペア素性抽出手段131(図1参照)は、単語ペア素性117に、(ei,fj+1)、(ei+2,fj+2)、(ei+3,fj)を格納する。
また、単語ペア素性117は、前記した式(23)に示す素性によるものに限定されるものではなく、さらに、単語ペアの連接関係を表現した、単語ペアbigramに基づく素性によるものを用いてもよい。ここでは、単語ペアの連接関係を、翻訳先言語側の順序で表現して素性を定義することとする。例えば、図4に示すように、翻訳先言語の単語列401の順序に基づき、翻訳元言語の単語列402の各単語に、矢印で示すような順序が定義される。この例では、((ei-1,fj-1),(ei,fj+1)、(ei,fj+1)、(ei+2,fj+2)、(ei+2,fj+2)、(ei+3,fj))のような単語ペアbigramが定義できる。そこで、単語ペアbigram((e1,f1)、(e2,f2))に対して、式(24)に示す素性hi(f,e)を定義する。
Figure 2009003642
前記した式(24)に示す素性を用いた単語ペアbigram素性を利用する場合、単語ペア素性抽出手段131(図1参照)は、単語ペア素性117に、((ei-1,fj-1)、(ei,fj+1)、(ei,fj+1)、(ei+2,fj+2)、(ei+2,fj+2)、(ei+3,fj))を追加する。このように単語対応に加えて翻訳先言語側の順序で二次の素性を定義することで、単語の翻訳としての確からしさと同時に単語の並び替えをモデル化することができる。さらに、図4に示すように、例えば、フレーズペア403aとフレーズペア403bとの境界線をまたぐ単語ペアbigram((ei-1,fj-1)、(ei,fj+1))によって、句の並び替えもモデル化することができる。
<翻訳先言語挿入素性>
翻訳先言語挿入素性118(図1参照)は、翻訳先言語にはあるが翻訳元言語に対応する単語がないものをモデル化するものである。一般に、翻訳結果には、翻訳元の単語に対応しないものが現れることがある。例えば、日本語では、しばしば主語が省略される。そのため、日英翻訳において、翻訳先言語「英語」の主語に対応する翻訳元言語「日本語」の単語が存在しない場合が生じる。同様に、日本語には冠詞がないので、翻訳先言語「英語」の冠詞に対応する翻訳元言語「日本語」の単語がないことが多い。このような背景を考慮した翻訳先言語挿入素性118(図1参照)について図4を参照して説明する。
図4に示すように、例えば、翻訳先言語の単語列401において、単語ei+1に対応する単語は、翻訳元言語の単語列402に存在していない。本実施形態では、このような翻訳先言語の単語に関して、すべての翻訳元言語の単語と関連付けた素性を定義する。例えば、J単語からなる翻訳元言語f1 Jに対して、(ei+1,f1),…,(ei+1,fJ)のような単語ペアが定義できる。そして、各単語ペア(we,wf)に対して、式(25)に示す素性hi(f,e)を定義する。
Figure 2009003642
式(25)で定義された素性hi(f,e)を用いた翻訳先言語挿入素性118の具体例を示すために、前記した図13に示した正解翻訳データが学習データに存在したと仮定する。図13において、実線の矢印は単語対応を示したものである。例えば、英語「for」は対応する日本語の単語を有していないため、この例からは、単語ペア(for,中国)、(for,の)、(for,措置)、(for,に対する)、(for,日本)、(for,抗議)、(for,は)、(for,当然)、(for,だ)および(for,。)にそれぞれ対応した10個の素性が定義される。
この翻訳先言語挿入素性118を利用する場合、言語間対応素性抽出手段124の翻訳先言語挿入素性抽出手段132(図1参照)は、翻訳先言語挿入素性118に、単語ペア(for,中国)、(for,の)、(for,措置)、(for,に対する)、(for,日本)、(for,抗議)、(for,は)、(for,当然)、(for,だ)および(for,。)を追加する。なお、逆に、翻訳元言語側に対応する翻訳先言語がないことを示す削除素性も考えられる。この場合、デコーダは、まだ生成されていない翻訳先語に対して素性を計算する必要があり、デコーディングが複雑になるので、本実施形態では用いないものとする。
<翻訳先言語bigram素性>
翻訳先言語bigram素性116(図1参照)は、翻訳先言語の流暢さを表現するために用いる素性であり、従来の言語モデル素性を補強するものである。例えば、図4に示すように、翻訳先言語の単語列401において、単語ペア(ei-1,ei)、(ei,ei+1)、(ei+1,ei+2)、…といった各単語ペア(e1,e2)に対して、式(26)に示す素性hi(f,e)を定義する。
Figure 2009003642
この翻訳先言語bigram素性116を利用する場合、言語モデル学習手段122(図1参照)は翻訳先言語bigram素性116に、単語ペア(ei-1,ei)、(ei,ei+1)、(ei+1,ei+2)…を追加する。
<階層的素性>
階層的素性119(図1参照)は、同期文脈自由文法の上位下位関係を規定する素性である。例えば、生成規則作成手段126(図1参照)で作成される同期文脈自由文法の規則r1,r2において、r1の非終端記号がr2で展開されるとき、(r1,r2)という規則の組に対して式(27)に示す素性hi(f,e)を定義する。
Figure 2009003642
なお、さらに簡易な素性の定義として、同期依存文法の翻訳元もしくは翻訳先の規則だけを用いるバリエーションもある。
前記した式(27)に示すような同期文脈自由文法規則に基づく階層的素性を利用する場合、階層的素性抽出手段128(図1参照)は、階層的素性119に規則(r1,r2)を追加する。
規則の組み合わせで素性を定義すると、素性数があまりに多くなり過ぎる場合が考えられる。そこで、本実施形態では、素性数の低減のために、翻訳元もしくは翻訳先の単語についての構文木上での上位下位関係で階層的素性を定義する。この場合の階層的素性について図5を参照して説明する。図5は、翻訳元言語側の木構造の一例を示す。図5に示すように、符号501で示す非終端記号X(1)が、導出規則「X(1)→ fj-1(2)j+3」、「X(2) →fjj+1(3)」、「X(3)→ fj+2」によって、符号502〜504の順序で示すように展開される構造を示したものである。この例では、親の規則のすべての単語から、子の規則のすべての単語を組み合わせた単語ペアとして、単語ペア(fj-1,fj)、(fj-1,fj+1)、(fj+3,fj)、(fj+3,fj+1)、(fj,fj+2)、(fj+1,fj+2)が定義できる。このような各単語ペア(f1,f2)ごとに、式(28)に示す素性hi(f,e)を定義する。
Figure 2009003642
さらに、素性の数を減らす工夫として、翻訳先言語へと対応付けられた翻訳元言語の単語に限定して階層的素性を定義するように構成することもできる。このように定義した階層的素性の具体例を示すために、前記した図13に示した正解翻訳データが学習データに存在したと仮定する。この場合、単語ペア(に対する,中国)、(日本,中国)、(に対する,抗議)、(日本,抗議)に対応して素性が定義される。本実施形態では、このように単語に基づく階層的素性(単語ベースの階層的素性)を定義した。したがって、階層的素性抽出手段128は、単語ペア(に対する,中国)、(日本,中国)、(に対する,抗議)、(日本,抗議)を階層的素性119に格納する。なお、この説明では、翻訳元言語側で階層的素性を定義したが、同様に翻訳先言語側でも階層的素性を定義することができる。
<単語の正規化について>
従来の素性では、単語の表層形を仮定していた。しかしながら、このような表層形を仮定した素性だけでは、過学習の問題を起こす可能性がある。なお、学習に用いなかったデータに対する汎化誤差が大きくなってしまう現象は過学習と呼ばれている。本実施形態では、過学習を避けるため、正規化された単語を併用する。正規化の方法は、限定されないが、例えば、以下に示すような方法を用いることができる。
(1)単語クラス − クラスタリングにより各単語についてクラスを学習、そのクラスを単語の正規形とする。
(2)品詞 − 形態素解析システムによって与えられた品詞を正規形とする。
(3)接頭辞/接尾辞 − 4文字のprefixあるいはsuffixを正規形とする。例えば、英語において、“violate”は、4文字のprefix/suffixをとることで、“viol+”、“+late”として、正規化される。
(4)stem − stemmingアルゴリズムにより、様々な表層型を正規化する。
(5)数字 − 数字を正規化する。例えば、“2007/6/27”であれば、数字の部分を“@”で置き換えることにより、“@@@@/@/@@”として正規化される。
本実施形態では、学習データにおいて、すべての素性に対して、そこに現れるすべての単語の可能な正規化を考え、正規化された単語の素性を追加する。例えば、(threat,脅威)という単語ペア素性に対して、4文字のprefix/suffixで正規化することにより、(thre+,脅威)(+reat,脅威)といった、素性を追加することができる。ここで示した正規化は一例であり、翻訳対象とする各言語に適した正規化を容易に取り入れることが可能である。
なお、前記したモード判定手段121と、言語モデル学習手段122と、単語対応作成手段123と、言語間対応素性抽出手段124と、フレーズペア抽出手段125と、生成規則作成手段126と、翻訳スコア計算手段127と、階層的素性抽出手段128とは、CPUが記憶手段11のHDD等に格納された所定のプログラムをRAMに展開して実行することにより実現されるものである。
[生成規則作成装置の動作]
図1に示した生成規則作成装置の動作について図6を参照(適宜図1参照)して説明する。図6は、図1に示した生成規則作成装置の動作を示すフローチャートである。
生成規則作成装置1は、モード判定手段121によって、モードを判定する(ステップS1)。判定の結果、モードが「単語対応作成」モードの場合には、生成規則作成装置1は、入出力手段10を介して、対訳コーパス150を単語対応作成手段123に入力し(ステップS2)、単語対応作成手段123によって、単語対応を作成する(ステップS3)。作成された単語対応111は、記憶手段11に格納される。
そして、生成規則作成装置1は、単語ペア素性抽出手段131によって、単語対応111から単語ペア素性を抽出し(ステップS4)、翻訳先言語挿入素性抽出手段132によって、単語対応111から翻訳先言語挿入素性118を抽出する(ステップS5:翻訳先言語挿入素性抽出ステップ)。なお、ステップS4およびステップS5の処理順序は任意であり、並列に処理してもよい。
また、ステップS1での判定の結果、モードが「ルールテーブル作成」モードの場合には、生成規則作成装置1は、入出力手段10を介して、対訳コーパス150を制御手段12に入力し(ステップS6)、フレーズペア抽出手段125によって、対訳コーパス150からフレーズペアを抽出する(ステップS7:フレーズペア抽出ステップ)。抽出されたフレーズペア112は、記憶手段11に格納される。
続いて、生成規則作成装置1は、生成規則作成手段126によって、フレーズペア112に基づいて、同期文脈自由文法の生成規則の右辺の翻訳先言語の記号列が終端記号から始まるという制約を加えた生成規則を作成し、この際に、階層的素性抽出手段128によって、単語対応111から階層的素性を抽出する(ステップS8:生成規則作成ステップ、階層的素性抽出ステップ)。作成されたルール113、および、抽出された階層的素性119は、記憶手段11にそれぞれ格納される。そして、生成規則作成装置1は、翻訳スコア計算手段127によって、ルール113の各生成規則から計算した各翻訳スコアを各生成規則に対応付ける(ステップS9:翻訳スコア計算ステップ)。対応付けられた生成規則と翻訳スコアとは、ルールテーブル114として記憶手段11に格納される。
また、ステップS1での判定の結果、モードが「言語モデル作成」モードの場合には、生成規則作成装置1は、入出力手段10を介して、翻訳先言語コーパス140を制御手段12に入力し(ステップS10)、言語モデル学習手段122によって、言語モデルを作成する(ステップS11)。作成された言語モデル115は、記憶手段11に格納される。そして、生成規則作成装置1は、言語モデル学習手段122によって、読み込んだ翻訳先言語コーパス140から翻訳先言語bigram素性116を抽出する(ステップS12)。抽出された翻訳先言語bigram素性116は記憶手段11に格納される。なお、翻訳先言語bigram素性116は、言語モデルを作成する際に抽出される。
なお、生成規則作成装置1は、一般的なコンピュータに、前記した各ステップを実行させる生成規則作成プログラムを実行することで実現することもできる。このプログラムは、通信回線を介して配布することも可能であるし、CD−ROM等の記録媒体に書き込んで配布することも可能である。
本実施形態の生成規則作成装置1によれば、同期文脈自由文法の生成規則に対して、右辺の翻訳先言語の記号列が終端記号から始まるという制約を加えた生成規則を作成し、この生成規則に対応する翻訳確率を素性として算出するだけではなく、生成規則に基づいて階層的素性や翻訳先言語挿入素性といった二値素性を抽出することができる。したがって、この生成規則作成装置1において求められた生成規則や素性を用いて統計的機械翻訳を行うことで、正解翻訳として尤もらしい展開の仕方で翻訳文を生成することが可能となる。
[機械翻訳装置の構成]
図7は、本発明の実施形態に係る機械翻訳装置の構成を示す機能ブロック図である。
機械翻訳装置2は、前記した階層的素性と前記した翻訳先言語挿入素性とのうちの少なくとも一方と、翻訳元言語の単語列と翻訳先言語の単語列との対応の確からしさを定義する翻訳モデルとを利用して、入力された翻訳元言語の単語列を、入力に対応する翻訳先言語の単語列に機械的に翻訳するものである。本実施形態では、機械翻訳装置2は、翻訳モデルとして、生成規則作成装置1(図1参照)で作成されたルールテーブルを利用することとした。機械翻訳装置2は、入力された翻訳元言語の単語列の翻訳結果である、入力に対応する翻訳先言語の単語列として、所定の部分仮説からそれよりも長い新たな部分仮説を順次作成して所定の部分仮説を拡張することによって最終的に生成された部分仮説である仮説を出力する。機械翻訳装置2は、例えば、CPUと、RAMと、ROMと、HDDと、入出力インタフェース等から構成され、図7に示すように、入出力手段20と、記憶手段21と、制御手段22とを備えている。
入出力手段20は、入力装置Kから翻訳元言語の単語列を制御手段22に入力したり、制御手段22から、翻訳結果である翻訳先言語の単語列を出力装置Dに出力したりするものである。また、入出力手段20は、素性重み学習用対訳コーパス250を素性重み学習手段221に入力する。
素性重み学習用対訳コーパス250は、生成規則作成装置1(図1参照)が生成規則を作成する際に利用する対訳コーパス150とは別に用意するものである。
記憶手段21は、例えば、CPUによる演算処理等に利用されるRAMや、例えば、所定のプログラム、各種データベース、処理結果等を格納するROMやHDDを備えている。例えば、記憶手段21には、処理結果として、素性重み211と、単語情報212と、単語範囲付きルール213と、部分仮説214と、部分仮説スコア215とが格納される。また、記憶手段21には、生成規則作成装置1(図1参照)でそれぞれ作成されたルールテーブル114と、言語モデル115と、翻訳先言語bigram素性116と、単語ペア素性117と、翻訳先言語挿入素性118と、階層的素性119とが格納される。
制御手段22は、素性重み学習手段221と、単語情報抽出手段222と、翻訳制御手段223とを備えている。
素性重み学習手段221は、素性重み学習用対訳コーパス250と、ルールテーブル114に格納された翻訳モデルと、言語モデル115と、翻訳先言語bigram素性116と、単語ペア素性117と、翻訳先言語挿入素性118と、階層的素性119とから、後記するオンラインマージン最大化学習法により各素性に対応した重みを学習し、学習結果を素性重み211として記憶手段21に格納するものである。
単語情報抽出手段222は、入出力手段20を介して入力装置Kから入力する翻訳元言語の文を単語単位に分割して、翻訳元言語の文を構成する単語についての情報(単語情報)を抽出するものである。単語情報は、例えば、単語列、単語位置、単語数等を含む。抽出された単語情報212は記憶手段21に格納される。なお、入力装置Kから入力する翻訳元言語の文が単語分割済みの場合には、単語情報抽出手段222を省略することもできる。
翻訳制御手段223は、後記する手順で部分仮説を展開しながら文全体を被う仮説を求め、その中で最適(実際は準最適)なものを求めるものであり、生成規則探索手段241と、単語範囲付き生成規則生成手段242と、部分仮説スコア算出手段243と、仮説探索手段244とを備えている。
生成規則探索手段241は、所定の部分仮説を拡張するために適用可能な生成規則をルールテーブル114からそれぞれ探索するものである。
単語範囲付き生成規則生成手段242は、生成規則探索手段241で探索された生成規則に対して、入力された翻訳元言語の単語列を構成する単語の単語数と単語位置とに基づいて、探索された生成規則の非終端記号が被う翻訳元言語の単語列の範囲を示す単語範囲を付加して、適用可能な単語範囲付き生成規則をそれぞれ生成するものである。
ここでは、入力された翻訳元言語の単語列の変換対象部分(非終端記号が被う範囲)を、その単語位置の左端(left)と右端(right)で、[l,r]のように表記することとする。初期段階では、例えば、入力が11単語であれば、[l,r]=[1,11]となる。この場合、生成規則の翻訳元言語側の各非終端記号の単語範囲(未翻訳の単語範囲)を[l1,r1],[l2,r2],…のように表記する。例えば、[l1,r1]=[1,2]等となる。なお、ある生成規則の翻訳元言語側の非終端記号が2つあれば、単語範囲も2つ設定される。また、ある生成規則の翻訳元言語側の非終端記号に対して、「l1」の値や「r1」の値として、複数の可能性がある。
部分仮説スコア算出手段243は、単語範囲付き生成規則に含まれる翻訳先言語側の翻訳済み単語と単語範囲とを、新たな部分仮説として作成すると共に、適用可能な生成規則をトップダウンに適用し且つ適用可能な生成規則において翻訳先言語側の非終端記号が文頭から文末に亘って並べられた順序で、新たな部分仮説を拡張し、作成された部分仮説H′の評価値を示す部分仮説スコアを算出するものである。
本実施形態では、部分仮説スコア算出手段243は、ルールテーブル114に格納された翻訳モデルと、翻訳先言語bigram素性116と、単語ペア素性117と、翻訳先言語挿入素性118と、階層的素性119とを要素として含む素性ベクトルと、素性重み211を示す重みベクトルとの内積を部分仮説スコアS(H′)として算出する。
具体的には、部分仮説スコア算出手段243は、「翻訳先言語の文頭からの単語列」と「翻訳元言語の単語列のうち未翻訳の単語の範囲を保持するスタック」の二つ組みからなる部分仮説Hをもとに、適用可能な単語範囲付き生成規則を使って、新たな部分仮説H′を作成するということを繰り返す。HをもとにH′を作成することを部分仮説の拡張と呼ぶ。部分仮説が拡張されるに従い、部分仮説中の「翻訳先言語の文頭からの単語列は文頭から文末にかけて逐次的に追加される。また、部分仮説スコア算出手段243は、メモリを節約するため、他の部分仮説との間で単語列の共有を行う。なお、翻訳元言語の単語数がJの場合、初期部分仮説(部分仮説の初期値)は、「空列」と、「[1,J]だけが積まれたスタック」とからなる。
部分仮説スコア算出手段243は、部分仮説H′の翻訳元言語の翻訳されている単語数をm(0≦m≦J)とすると、優先度付きキューQ0,Q1,…,QJに部分仮説H′を入れる。つまり、部分仮説スコア算出手段243は、Q0={初期部分仮説}から始めて、翻訳された翻訳元言語の単語数に同期して優先度付きキューQmに格納する部分仮説を拡張していく。
部分仮説スコア算出手段243は、ある部分仮説を拡張するとき、そのスタックの先頭から(積まれた上方から)翻訳されていない翻訳元言語の単語範囲[l,r]をポップする。翻訳元言語の入力文に対応する生成規則はEarley法のチャート構造で管理する。チャート構造を用いることにより、部分仮説に対して適用可能な生成規則を効率良く見つけることが可能となる。例えば、部分仮説スコア算出手段243は、前記した式(17)から生成された式(29)に示すような単語範囲つき生成規則から部分仮説を抽出する場合には、単語範囲[l2,r2],[l1,r1]の順序でスタックにプッシュして、[l1,r1]が先に処理されるようにする。こうして、翻訳先言語側は、常に文頭から翻訳が生成されることが保証されることになる。
Figure 2009003642
部分仮説スコア算出手段243は、式(30)に示すように、もととなった部分仮説HのスコアS(H)に差分スコアを加算することで、拡張された部分仮説H′のスコアS(H′)を算出する。
Figure 2009003642
ここで、hm(r)として、例えば、表5に示す素性を用いる。なお、仮説を生成する際に、部分仮説の展開により新たに生成された翻訳先言語の単語列を、
Figure 2009003642
と表記する。ここで、生成された翻訳先言語の単語列は、「i」番目の単語から「i+ε」番目の単語で構成されている。
Figure 2009003642
ここで、Pe|f(r)、Pf|e(r)、Lexe|f(r)、Lexf|e(r)は、記憶手段21のルールテーブル114に規定されている生成規則rに対応した素性である。また、前記した式(30)中の素性重みλmは、記憶手段21に格納された素性重み211に予め規定されているものとする。表5に示した最後の4つの素性(h7(r)〜hl(r))は二値素性であり,一般に高次元素性となる。なお、表5に記載した「i」,「j」,「k」,「l」は、各二値素性の個数によって定まる整数を示す。
本実施形態では、前記した式(30)と表5とから、部分仮説スコア算出手段243は、最終的に、部分仮説H′のスコアS(H′)を、式(31)で算出する。また、部分仮説スコア算出手段243は、優先度付きキューQ0,Q1,…,QJには、最大Y個(例えば、1000個)の部分仮説しか保持しない。また、部分仮説スコア算出手段243は、部分仮説スコアS(H′)が優先度付きキューQ0,Q1,…,QJ内の最大の部分仮説スコアとある定数との積よりも小さい場合、その部分仮説H′を捨てる。これにより、部分仮説スコア算出手段243は、優先度付きキューQ0,Q1,…,QJに格納される各部分仮説に対して効果的な枝刈りを行うことができる。
Figure 2009003642
仮説探索手段244は、入力された翻訳元言語の単語列に対して適用可能な所定の部分仮説を探索し、所定の部分仮説を拡張することによって最終的に生成された翻訳元言語の文全体に対応する部分仮説(これを仮説と呼ぶ)のうちで、部分仮説スコアが最大となる仮説を探索するものである。具体的には、仮説探索手段244は、翻訳元言語の文全体から得られる所定数の仮説のうちで、仮説スコアが最大となる仮説H^を、式(32)の関係から探索する。式(32)に示す仮説Hは、優先度付きキューQJに含まれる部分仮説Hのことなので、式(32)で求める仮説H^は、部分仮説スコアS(H)の値を最大とする部分仮説H(つまり仮説H)を求めることで実現できる。
Figure 2009003642
また、仮説探索手段244は、求めた仮説に対応する翻訳先言語の文頭から文末までの単語列を翻訳結果として、入出力手段20を介して出力装置Dに出力する。
<オンラインマージン最大化学習法>
ここで、素性重み学習手段221が行うオンラインマージン最大化学習(Online Large-Margin Training)について説明する。素性重み学習手段221は、図8に示すオンライン学習アルゴリズムを実行する。このオンライン学習アルゴリズムは、デコーダ(仮説探索手段244)が生成可能な準正解データを活用する点が、一般的なオンライン学習アルゴリズムと相違している。
行番号「3」に示すbestk(・)は、デコーダにより、学習サンプル(ft,et)から重みベクトルwiを用いてk-bestリストCt(k個の翻訳先言語文データ)を生成する関数を示す。ここで、各学習サンプルは、あるtについての1つの翻訳元言語文ftに対して、複数の翻訳先言語文etを持っているものとする。したがって、「et」は、複数の参照訳を示すベクトルを表す。
行番号「4」に示すoraclem(・)は、k-bestリストCtと以前の準正解データOtとをマージ(merge)して、m個の準正解データを生成する(更新する)。なお、新たに生成された準正解データOtを用いて後記する過程を経て正解データが決定される。
行番号「5」に示すように、以前の重みベクトルwiは、行番号「3」で生成されたk-bestリストCtと、行番号「4」で生成された準正解データOtとを用いて更新されることによって、新しい重みベクトルwi+1が生成される。なお、w.r.t.は、with respect toの略である。素性重み学習手段221は、行番号「3」から行番号「6」までの処理を、内側ループとして、学習サンプル(ft,et)に亘ってT回繰り返し、さらに、行番号「2」から行番号「7」までの処理を、外側ループとしてN回繰り返し、行番号「9」に示すように、重みベクトルwiの平均値を返す。
本実施形態では、素性重み学習手段221は、行番号「5」の処理において、式(33)を用いて、オンラインマージン最大化学習を用い、最適な重みベクトルwiを求める。なお、オンラインマージン最大化法については、「Koby Crammer, Ofer Dekel, Joseph Keshet, Shai Shalev-Shwartz, and Yoram Singer、Online passive-aggressive algorithms、Journal of Machine Learning Research、 7:551-585、March 2006(以下、参考文献という)」に記載されている。
Figure 2009003642
式(34)中のロス関数は、参照訳etに基づき、e^とe′との違いを計算する関数である。ロス関数としては、例えば、n-gramの正解率に基づく指標であるBLEUなどの指標を用いることができる。BLEUについては、「Kishore Papineni, Salim Roukos, Todd Ward, and Wei-Jing Zhu、BLEU: a method for automatic evaluation of machine translation、In Proc. of ACL 2002、p. 311-318、Philadelphia、Pennsylvania、2002」に記載されている。
素性重み学習手段221は、式(34)に示すように、複数の正しい翻訳(e^)と、デコーダの出力する複数の誤った候補(e′)との間のマージン(margin)を形成し、そのマージンがロス関数の値よりも大きくなるようにする。一般に、オンラインマージン最大化学習では、正解データは一つである(例えば、前記した参考文献を参照)。しかし、翻訳においては、正解を一意に決定できないため、素性重み学習手段221は、複数の正解データ(準正解データ)を用いる。さらに、オンラインマージン最大化学習で用いるロス関数Lによっては真の正解(e^)を定義できないため、素性重み学習手段221は、デコーダの出力するk-bestリストCtから正解(e^)に近いものを正解データ(準正解データOt)として用いる。前記した式(33)の左辺を示す最適な重みベクトルwi+1は、例えば、二次計画法により導出可能である。
本手法(図8に示したアルゴリズム)によって、素性重み学習手段221は、複数の正解へ向けて学習しており、少量の学習データに対しても、最適なモデルのパラメータを学習することが可能である。また、そのための重み付けは、二次計画法により決定されることから、本手法によれば、柔軟な制約を設計することが可能である。例えば、BLEUなどのロス関数以外に、NISTといったロス関数を追加することにより、BLEUの正解と同時に、NISTを最適化するといった制約を加えることが可能である。なお、NISTについては、「George Doddington、Automatic evaluation of machine translation quality using n-gram co-occurrence statistics、In Proc. ARPA Workshop on Human Language Technology、2002」に記載されている。
なお、素性重み学習手段221と、単語情報抽出手段222と、翻訳制御手段223(生成規則探索手段241、単語範囲付き生成規則生成手段242、部分仮説スコア算出手段243および仮説探索手段244)とは、CPUが記憶手段21のHDD等に格納された所定のプログラムをRAMに展開して実行することにより実現されるものである。
[機械翻訳装置の動作]
図7に示した機械翻訳装置2の動作について図9を参照(適宜図7参照)して説明する。図9は、図7に示した機械翻訳装置の動作を示すフローチャートである。予め、機械翻訳装置2は、素性重み学習手段221によって、素性重み学習用対訳コーパス250と、ルールテーブル114と、言語モデル115と、翻訳先言語bigram素性116と、単語ペア素性117と、翻訳先言語挿入素性118と、階層的素性119とに基づいて、素性関数の値の重みを学習し、学習結果である素性重み211を記憶手段21に格納しておく(ステップS21:素性重み学習ステップ)。
そして、機械翻訳装置2は、入力装置Kから入出力手段20を介して入力された翻訳元言語の文を単語情報抽出手段222に入力する(ステップS22)。機械翻訳装置2は、単語情報抽出手段222によって、入力された翻訳元言語の文(入力文)を単語に分割し、単語列、単語数Jやそれぞれの単語の単語位置を抽出する(ステップS23)。抽出された単語列、単語列単語数Jや単語位置は、単語情報212として記憶手段21に格納される。
機械翻訳装置2は、仮説探索手段244によって、初期部分仮説H0を作成し、入力単語数Jに合わせて、J個の優先度付きキューQ0,…,QJを空にして、そのうちの優先度付きキューQ0に初期部分仮説H0を格納する(ステップS24)。そして、機械翻訳装置2は、仮説探索手段244によって、初期部分仮説H0に対する部分仮説スコアS(H0)と、優先度付きキューの識別変数mとを初期化する。すなわち、S(H0)=0,m=0とする(ステップS25)。続いて、機械翻訳装置2は、生成規則探索手段241によって、m番目の優先度付きキューQmから、そこに格納されている適用可能なそれぞれの部分仮説Hを順次ポップし、それぞれの部分仮説Hを拡張できるような適用可能なそれぞれの生成規則rをルールテーブル114から探索する。そして、探索結果であるそれぞれの生成規則rの翻訳元言語側に記述されている翻訳済単語の個数(翻訳済単語個数)V(r)を取得し、現在の優先度付きキューの識別変数mの値に加算することによって、処理対象の部分仮説Hに対する翻訳済単語数nの値を更新する。すなわち、n=m+V(r)とする(ステップS26:生成規則探索ステップ)。
そして、機械翻訳装置2は、単語範囲付き生成規則生成手段242によって、探索した生成規則に対して適用可能なそれぞれの単語範囲付き生成規則r′を生成する(ステップS27:単語範囲付き生成規則生成ステップ)。そして、機械翻訳装置2は、部分仮説スコア算出手段243によって、処理対象の部分仮説Hを、それぞれの単語範囲付き生成規則r′で展開して部分仮説H′をそれぞれ作成し、作成した部分仮説H′について前記した式(31)に基づいて部分仮説スコアS(H′)を算出する。そして、作成した部分仮説H′を、n番目の優先度付きキューQnに格納し、所定の枝刈りを行う(ステップS28:部分仮説スコア算出ステップ)。ここで、枝刈りによって不要となった部分仮説H′は、優先度付きキューQnから削除される。また、算出された部分仮説スコアS(H′)は記憶手段21の部分仮説スコア215に格納されるが、枝刈りによって削除された部分仮説H′に対する部分仮説スコアS(H′)は削除されることとなる。
そして、機械翻訳装置2は、仮説探索手段244によって、適用可能な単語範囲付き生成規則r′をすべて選択したか否かを判別する(ステップS29)。適用可能なr′がまだ存在する場合(ステップS29:No)、機械翻訳装置2は、ステップS27に戻る。一方、r′をすべて選択した場合(ステップS29:Yes)、仮説探索手段244は、適用可能な生成規則rをすべて選択したか否かを判別する(ステップS30)。適用可能なrがまだ存在する場合(ステップS30:No)、機械翻訳装置2は、ステップS26に戻る。一方、rをすべて選択した場合(ステップS30:Yes)、仮説探索手段244は、適用可能な部分仮説Hをすべて選択したか否かを判別する(ステップS31)。適用可能なHがまだ存在する場合(ステップS31:No)、機械翻訳装置2は、ステップS26に戻る。一方、Hをすべて選択した場合(ステップS31:Yes)、仮説探索手段244は、現在の優先度付きキューの識別変数mの値が入力単語数Jと等しい(m=J)か否かを判別する(ステップS32)。m≠Jである場合(ステップS32:No)、機械翻訳装置2は、仮説探索手段244によって、優先度付きキューの識別変数mをインクリメントする。すなわち、m=m+1とする(ステップS33)。続いて、ステップS26に戻る。
一方、m=Jである場合(ステップS32:Yes)、J番目の優先度付きキューQJには、翻訳元言語の文全体を被う部分仮説Hが複数格納されている。これら部分仮説Hは、翻訳元言語の文に対する仮説Hとみなすことができる。同様に、優先度付きキューQJに格納された部分仮説Hに対する部分仮説スコアS(H)は、この意味で、仮説スコアS(H)と呼ぶ。そして、この場合、機械翻訳装置2は、仮説探索手段244によって、J番目の優先度付きキューQJから仮説スコアS(H)の値が最大となる仮説Hを探索する(ステップS34:仮説探索ステップ)。そして、機械翻訳装置2は、仮説探索手段244によって、探索された仮説を翻訳先言語の文として出力する(ステップS35)。これにより、探索された仮説に対応する翻訳先言語の文頭から文末までの単語列が出力装置Dに出力される。
なお、機械翻訳装置2は、一般的なコンピュータに、前記した各ステップを実行させる機械翻訳プログラムを実行することで実現することもできる。このプログラムは、通信回線を介して配布することも可能であるし、CD−ROM等の記録媒体に書き込んで配布することも可能である。
[具体例]
図10と、表6と、表7と、表8とを参照して具体例について説明する。
図10は、図7に示した部分仮説から仮説への拡張例を示す図である。表6は、11単語からなる翻訳元言語文を示し、表7は、表6に示した翻訳元言語文に対応して適用可能な生成規則を示す。なお、表7中の「生成規則の種類」とは、前記した式(13)〜式(17)のいずれに対応するかを示すものである。表8は、表7に示した生成規則の適用順とそれに基づく単語範囲付き生成規則を示すものである。
Figure 2009003642
Figure 2009003642
Figure 2009003642
初期状態において、部分仮説スコア算出手段243は、スタックを空にし、図10に示すように、状態「0」で翻訳元言語の単語列(文)全体を被う単語範囲[1,11]をプッシュする。状態「0」では、部分仮説H′(0)は、初期部分仮説なので、スタックにプッシュした単語範囲[1,11]と空列との組である。部分仮説H′(0)の部分仮説スコアS(H′)は「0」とする。
次に、状態「1」で、部分仮説スコア算出手段243は、スタックから範囲[1,11]をポップし、生成規則探索手段241は、表7から、ポップされた範囲に適用可能な生成規則r(3)を選択する。生成規則r(3)における翻訳解「The」に対応した「は」の入力文における単語位置は、「3」なので、単語範囲付き生成規則生成手段242は、表8に示すように、生成規則r(3)における非終端記号X(1)および非終端記号X(2)の単語範囲が、それぞれ[1,2]、[4,11]となるような単語範囲付き生成規則r′(3)を生成する。この単語範囲付き生成規則r′(3)では、翻訳先言語側において非終端記号X(1)が非終端記号X(2)より先に処理されなければならない。そのため、部分仮説スコア算出手段243は、図10に示すように、単語範囲付き生成規則r′(3)において、非終端記号X(2)に対応する単語範囲[4,11]をスタックにプッシュしてから、非終端記号X(1)に対応する単語範囲[1,2]をプッシュする。部分仮説スコア算出手段243は、スタックにプッシュした単語範囲[1,2]、[4,11]と、翻訳先言語の文頭からの単語列としての翻訳解「The」とを部分仮説H′(1)とする。部分仮説スコア算出手段243は、部分仮説H′(1)について部分仮説スコアを算出する。
次に、状態「2」で、部分仮説スコア算出手段243は、スタックから単語範囲[1,2]をポップし、生成規則探索手段241は、表7から、この単語範囲に適用可能な生成規則r(1)を選択する。生成規則r(1)における翻訳解「international」に対応した「国際」の入力文における単語位置は、「1」なので、単語範囲付き生成規則生成手段242は、表8に示すように、生成規則r(1)における非終端記号X(1)の単語範囲が[2,2]となるような単語範囲付き生成規則r′(1)を生成する。部分仮説スコア算出手段243は、図10に示すように、単語範囲付き生成規則r′(1)において、単語範囲[2,2]をスタックにプッシュする。部分仮説スコア算出手段243は、スタックにプッシュした単語範囲[2,2]と、以前プッシュした単語範囲[4,11]と、翻訳先言語の文頭からの単語列としての翻訳解「The international」とを部分仮説H′(2)とする。部分仮説スコア算出手段243は、部分仮説H′(2)について部分仮説スコアを算出する。
次に、状態「3」で、部分仮説スコア算出手段243は、スタックから単語範囲[2,2]をポップし、生成規則探索手段241は、表7から、この単語範囲に適用可能な生成規則r(2)を選択する。生成規則r(2)には「テロ」に対応した翻訳解「terrorism」が記述されているが、非終端記号が無いので、単語範囲付き生成規則生成手段242は、生成規則r(2)をそのまま単語範囲付き生成規則r′(2)とする。部分仮説スコア算出手段243は、単語範囲付き生成規則r′(2)において単語範囲が指定されていないのでスタックに対する操作を行わない。部分仮説スコア算出手段243は、図10に示すように、スタックに以前プッシュした単語範囲[4,11]と、翻訳先言語の文頭からの単語列としての翻訳解「The international terrorism」とを部分仮説H′(3)とする。部分仮説スコア算出手段243は、部分仮説H′(3)について部分仮説スコアを算出する。
以下、同様にして、表8に記載した適用順に、状態「4」から状態「9」に対応する操作を行うと、スタックが空になるので、部分仮説スコア算出手段243は、部分仮説の展開を終了し、仮説を生成する。このとき、翻訳先言語の文頭からの単語列としての翻訳解は、以下のように、10単語の単語列となる。
「The international terrorism also is a possible threat in Japan」
ここで、生成規則r(9)は、2つの終端記号(単語)「で ある,is a」を有しているため、部分仮説スコア算出手段243は、9回の状態遷移で10単語を訳出する。図10では、部分仮説展開の過程で、翻訳先言語側が文頭から文末にかけて生成されたことが示されている。
図11は、図10に示した仮説への拡張例に対応した同期文脈自由文法の木構造を示す図である。これは部分仮説展開に用いた生成規則の系列を木として表現したものである。図11において、(1)〜(9)は同期文脈自由文法の生成規則の展開順序を表す。生成規則は、右辺の翻訳先言語側は終端記号で始まっており、木はトップダウンかつ翻訳先言語の文頭から文末の順序に展開されるので、翻訳先言語の単語は必ず文頭から文末にかけて逐次的に生成される。これとは対照的に翻訳元言語側は必ずしも文頭から文末にかけて解析されるわけではない。
表8に示した単語範囲付き生成規則と異なる例を表9に示す。表9では、適用順「1」,「2」の内容が異なる以外は表8と同じである。この場合には、状態「1」で、生成規則r(1)を選択し、状態「2」で生成規則r(3)を選択する。このとき、翻訳先言語の文頭からの単語列としての翻訳解は、以下のように、より不自然な英語となるため、この場合の仮説の仮説スコアは、表8の場合の仮説の仮説スコアよりも小さくなる。
「international The terrorism also is a possible threat in Japan」
Figure 2009003642
本実施形態の機械翻訳装置2によれば、ルールテーブル114に格納された生成規則ごとの翻訳モデルに加え、階層的素性119や翻訳先言語挿入素性118といった二値素性を含む素性に対応した重みを、素性重み学習用対訳コーパス250に基づいて学習し、これらの素性ベクトルおよび素性重みベクトルに基づいて部分仮説スコアを算出し、部分仮説スコア(この場合には仮説スコア)が最大となる仮説を翻訳先言語の単語列として探索する。したがって、正解翻訳として尤もらしい展開の仕方で翻訳文を生成することが可能となる。その結果、翻訳先言語の単語列の翻訳精度を向上させることができる。
以上、本発明の実施形態について説明したが、本発明はこれに限定されるものではなく、その趣旨を変えない範囲で実施することができる。例えば、本実施形態では、日本語から英語への日英翻訳を例に説明したが、言語の組み合わせはこれに限定されるものではない。生成規則作成装置により生成規則を作成すれば、任意の多言語間でこの翻訳装置を使用することが可能である。
また、本実施形態では、生成規則作成装置1は、階層的素性抽出手段128と翻訳先言語挿入素性抽出手段132との両方を備える構成としたが、階層的素性抽出手段128と翻訳先言語挿入素性抽出手段132とのうちのいずれか一方のみを備えるように構成してもよい。この場合にも同等の効果を奏することができる。
また、本実施形態では、機械翻訳装置2は、階層的素性119と翻訳先言語挿入素性118との両方を含んで統計的機械翻訳を行うものとして構成したが、階層的素性119と翻訳先言語挿入素性118とのうちのいずれか一方のみを含むように構成してもよい。この場合にも同等の効果を奏することができる。さらに、機械翻訳装置2は、翻訳モデルとして、生成規則作成装置1(図1参照)で作成されたルールテーブルを利用することとしたが、利用する翻訳モデルはルールテーブルに限定されるものではない。
本発明の効果を確認するために、翻訳元言語を「アラビア語」とすると共に、翻訳先言語を「英語」として、アラビア語から英語への翻訳実験を行った。
具体的には、対訳コーパス150(図1参照)として、LDC(Linguistic Data Consortium:米国の言語データ研究機構)から配布されている「アラビア語/英語のコーパス」を用いた。この対訳コーパス(training set)150は、約380万文からなる。
また、素性重み学習用対訳コーパス250(図7参照)として、MT2003評価セット(663文:development set)を用い、テストに、MT2004(707文:open test set)およびMT2005(1,056文:open test set)を用いた。
また、翻訳先言語コーパス140(図1参照)として、LDCから配布されている「English Gigaword」を用いた。つまり、「English Gigaword」が、言語モデル115の学習や翻訳先言語bigram素性116の抽出に用いられた。
<単語の正規化に関する実験>
単語の正規化に関する実験として、単語の表層形(surface form)を仮定した素性と、単語を正規化することを仮定した素性とを比較する実験を行った。
(実施例1)単語の表層形(surface form)のみを仮定した。
(実施例2)単語の表層形(surface form)に加えて、接頭辞および接尾辞の正規化(prefix/suffix)を仮定した。
(実施例3)単語の表層形(surface form)に加えて、単語クラスの正規化(word class)を仮定した。
(実施例4)単語の表層形(surface form)に加えて、数字の正規化(digits)を仮定した。
(実施例5)単語の表層形(surface form)に加えて、接頭辞および接尾辞の正規化と、単語クラスの正規化と、数字の正規化とを総合した正規化(all token types)を仮定した。
実施例1〜実施例5に関する共通の実験条件は以下の通りである。
素性重み学習手段221は、オンラインマージン最大化学習において繰り返し回数を、50回とした(N=50)。
各学習サンプルごとに、仮説探索手段244(デコーダ)は、1000-bestを出力し、そこから、上位10の翻訳および10の正解データを抽出した。
ロス関数としては、BLEUを用い、BLEUとNISTの両方で評価した。
この場合の実験結果を表10に示す。
Figure 2009003642
実施例1と実施例2とを比較すると、MT2003評価セット(2003(dev)と表記)に対しては、実施例2は、実施例1に比べて性能が大幅に向上したが、MT2004(2004と表記)およびMT2005(2005と表記)に対しては、性能が低下した。そのため、実施例2は、過学習を起こしている。一方、実施例1と実施例3とを比較すると、実施例3は、過学習を起こさずに、実施例1に比べて性能が向上した。同様に、実施例4および実施例5も、過学習を起こさずに、実施例1に比べて性能が向上した。
<二値素性の組み合わせに関する実験>
実施例5の総合した正規化を仮定した素性を用いた上で、二値素性の組み合わせを比較する実験を行った。
(実施例6)単語ペア素性(word pairs)のみを利用した。
(実施例7)実施例6の素性(word pairs)に加えて、翻訳先言語bigram素性(target bigram)を利用した。
(実施例8)実施例7の素性(word pairs、target bigram)に加えて、翻訳先言語挿入素性(insertion)を利用した。
(実施例9)実施例8の素性(word pairs、target bigram、insertion)に加えて、単語ベースの階層的素性(hierarchical)を利用した。
この場合の実験結果を表11に示す。
Figure 2009003642
実施例6と実施例7とを比較すると、実施例7は、過学習を起こしている。一方、実施例6と実施例8とを比較すると、実施例8は、過学習を起こさずに、実施例6に比べて性能が向上した。同様に、実施例9も、過学習を起こさずに、実施例6に比べて性能が向上した。
<二値素性の有無に関する実験>
実施例9のように4種類の素性を用いたもの(二値素性あり)と、二値素性を用いないもの(二値素性なし)とを比較する実験を行った。具体的には、MT2003評価セット、MT2004およびMT2005を合わせたセット(総計セット)について、2分割交差検定法(2-fold cross validation)を用いた。すなわち、総計セットの半分を素性重み学習用コーパスに用いると共に、残り半分をテストセットとして用いて、これを交互に行って平均を求めた。ここでは、4種類の素性を用いたものを実施例10(online)とする。また、二値素性を用いない比較例(baseline)として、非特許文献4に記載された従来の方法を用いた。この場合の実験結果を表12に示す。表12に示すように、実施例10は、比較例よりも性能が大幅に向上した。
Figure 2009003642
本発明の実施形態に係る生成規則作成装置の構成を示すブロック図である。 日英の対訳の単語対応の例を示す図である。 図1に示したルールテーブルの例を示す図である。 図1に示した単語ペア素性の例を示す図である。 図1に示した階層的素性の例を示す図である。 図1に示した生成規則作成装置の動作を示すフローチャートである。 本発明の実施形態に係る機械翻訳装置の構成を示すブロック図である。 オンライン学習アルゴリズムを示す図である。 図7に示した機械翻訳装置の動作を示すフローチャートである。 図7に示した部分仮説から仮説への拡張例を示す図である。 図10に示した仮説への拡張例に対応した同期文脈自由文法の木構造を示す図である。 誤訳例の木構造を示す図である。 正解翻訳例の木構造を示す図である。
符号の説明
1 生成規則作成装置
2 機械翻訳装置
10 入出力手段
11 記憶手段
111 単語対応
112 フレーズペア
113 ルール
114 ルールテーブル
115 言語モデル
116 翻訳先言語bigram素性
117 単語ペア素性
118 翻訳先言語挿入素性
119 階層的素性
12 制御手段
121 モード判定手段
122 言語モデル学習手段
123 単語対応作成手段
124 言語間対応素性抽出手段
125 フレーズペア抽出手段
126 生成規則作成手段
127 翻訳スコア計算手段
128 階層的素性抽出手段
131 単語ペア素性抽出手段
132 翻訳先言語挿入素性抽出手段
140 翻訳先言語コーパス
150 対訳コーパス
20 入出力手段
21 記憶手段
211 素性重み
212 単語情報
213 単語範囲付きルール
214 部分仮説
215 部分仮説スコア
22 制御手段
221 素性重み学習手段
222 単語情報抽出手段
241 生成規則探索手段
242 単語範囲付き生成規則生成手段
243 部分仮説スコア算出手段
244 仮説探索手段
250 素性重み学習用対訳コーパス

Claims (7)

  1. 対訳学習データ中の翻訳元言語の単語列または翻訳先言語の単語列を構成する部分木の階層的特徴を表現する素性を示す階層的素性と、前記対訳学習データ中の翻訳先言語の単語列を構成する単語に対応する単語が翻訳元言語の単語列に含まれていないときに前記翻訳先言語の単語列に挿入されている単語と前記翻訳元言語の単語列に含まれる単語との関係を表現する素性を示す翻訳先言語挿入素性とのうちの少なくとも一方と、翻訳元言語の単語列と翻訳先言語の単語列との対応の確からしさを定義する翻訳モデルとを利用して、入力された翻訳元言語の単語列の翻訳結果である前記入力に対応する翻訳先言語の単語列として、所定の部分仮説からそれよりも長い新たな部分仮説を順次作成して前記所定の部分仮説を拡張することによって最終的に生成された部分仮説である仮説を出力する機械翻訳装置であって、
    前記階層的素性と前記翻訳先言語挿入素性とのうちの少なくとも一方と前記翻訳モデルとを含む素性に対応した重みを、素性重み学習用対訳学習データに基づいて学習し、学習結果を素性重みとして記憶手段に格納する素性重み学習手段と、
    前記階層的素性と前記翻訳先言語挿入素性とのうちの少なくとも一方と前記翻訳モデルとを要素として含む素性ベクトルと、前記素性重みを示す重みベクトルとの内積を、前記作成された部分仮説の評価値を示す部分仮説スコアとして算出する部分仮説スコア算出手段と、
    前記入力された翻訳元言語の単語列に対して適用可能な所定の部分仮説を探索し、前記所定の部分仮説を拡張することによって最終的に生成された部分仮説のうちで、前記部分仮説スコアが最大となる部分仮説を、前記仮説として探索する仮説探索手段とを備えることを特徴とする機械翻訳装置。
  2. 対訳学習データ中の翻訳元言語の単語列または翻訳先言語の単語列を構成する部分木の階層的特徴を表現する素性を示す階層的素性と、前記対訳学習データ中の翻訳先言語の単語列を構成する単語に対応する単語が翻訳元言語の単語列に含まれていないときに前記翻訳先言語の単語列に挿入されている単語と前記翻訳元言語の単語列に含まれる単語との関係を表現する素性を示す翻訳先言語挿入素性とのうちの少なくとも一方と、翻訳元言語の単語列と翻訳先言語の単語列との対応の確からしさを定義する翻訳モデルとを利用して、入力された翻訳元言語の単語列の翻訳結果である前記入力に対応する翻訳先言語の単語列として、所定の部分仮説からそれよりも長い新たな部分仮説を順次作成して前記所定の部分仮説を拡張することによって最終的に生成された部分仮説である仮説を出力する機械翻訳装置の機械翻訳方法であって、
    素性重み学習手段によって、前記階層的素性と前記翻訳先言語挿入素性とのうちの少なくとも一方と前記翻訳モデルとを含む素性に対応した重みを、素性重み学習用対訳学習データに基づいて学習し、学習結果を素性重みとして記憶手段に格納する素性重み学習ステップと、
    部分仮説スコア算出手段によって、前記階層的素性と前記翻訳先言語挿入素性とのうちの少なくとも一方と前記翻訳モデルとを要素として含む素性ベクトルと、前記素性重みを示す重みベクトルとの内積を、前記作成された部分仮説の評価値を示す部分仮説スコアとして算出する部分仮説スコア算出ステップと、
    仮説探索手段によって、前記入力された翻訳元言語の単語列に対して適用可能な所定の部分仮説を探索し、前記所定の部分仮説を拡張することによって最終的に生成された部分仮説のうちで、前記部分仮説スコアが最大となる部分仮説を、前記仮説として探索する仮説探索ステップとを有することを特徴とする機械翻訳方法。
  3. 請求項1に記載の機械翻訳装置で利用する素性と生成規則とを作成する生成規則作成装置であって、
    対訳学習データから予め求められた翻訳元言語の単語と翻訳先言語の単語との単語対応に基づいて、前記翻訳元言語の単語列または前記翻訳先言語の単語列を構成する部分木の階層的特徴を表現する素性を示す階層的素性を前記素性の1つとして抽出する階層的素性抽出手段と、
    対訳学習データから予め求められた翻訳元言語の単語と翻訳先言語の単語との単語対応に基づいて、前記翻訳先言語の単語列を構成する単語に対応する単語が前記翻訳元言語の単語列に含まれていないときに前記翻訳先言語の単語列に挿入されている単語と前記翻訳元言語の単語列に含まれる単語との関係を表現する素性を示す翻訳先言語挿入素性を抽出する翻訳先言語挿入素性抽出手段とのうちの少なくとも一方を備えることを特徴とする生成規則作成装置。
  4. 請求項1に記載の機械翻訳装置で利用する素性と生成規則とを作成する生成規則作成装置の生成規則作成方法であって、
    階層的素性抽出手段によって、対訳学習データから予め求められた翻訳元言語の単語と翻訳先言語の単語との単語対応に基づいて、前記翻訳元言語の単語列または前記翻訳先言語の単語列を構成する部分木の階層的特徴を表現する素性を示す階層的素性を前記素性の1つとして抽出する階層的素性抽出ステップと、
    翻訳先言語挿入素性抽出手段によって、対訳学習データから予め求められた翻訳元言語の単語と翻訳先言語の単語との単語対応に基づいて、前記翻訳先言語の単語列を構成する単語に対応する単語が前記翻訳元言語の単語列に含まれていないときに前記翻訳先言語の単語列に挿入されている単語と前記翻訳元言語の単語列に含まれる単語との関係を表現する素性を示す翻訳先言語挿入素性を抽出する翻訳先言語挿入素性抽出ステップとのうちの少なくとも一方を有することを特徴とする生成規則作成方法。
  5. 請求項2に記載の機械翻訳方法をコンピュータに実行させることを特徴とする機械翻訳プログラム。
  6. 請求項4に記載の生成規則作成方法をコンピュータに実行させることを特徴とする生成規則作成プログラム。
  7. 請求項5に記載の機械翻訳プログラムまたは請求項6に記載の生成規則作成プログラムが記録されたことを特徴とするコンピュータ読み取り可能な記録媒体。
JP2007162897A 2007-06-20 2007-06-20 機械翻訳装置、機械翻訳方法、およびそのプログラムならびに記録媒体 Active JP5180522B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007162897A JP5180522B2 (ja) 2007-06-20 2007-06-20 機械翻訳装置、機械翻訳方法、およびそのプログラムならびに記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007162897A JP5180522B2 (ja) 2007-06-20 2007-06-20 機械翻訳装置、機械翻訳方法、およびそのプログラムならびに記録媒体

Publications (2)

Publication Number Publication Date
JP2009003642A true JP2009003642A (ja) 2009-01-08
JP5180522B2 JP5180522B2 (ja) 2013-04-10

Family

ID=40319975

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007162897A Active JP5180522B2 (ja) 2007-06-20 2007-06-20 機械翻訳装置、機械翻訳方法、およびそのプログラムならびに記録媒体

Country Status (1)

Country Link
JP (1) JP5180522B2 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011243147A (ja) * 2010-05-21 2011-12-01 Nippon Telegr & Teleph Corp <Ntt> 素性重み学習装置、N−bestスコアリング装置、N−bestリランキング装置、それらの方法およびプログラム
JP2011242895A (ja) * 2010-05-14 2011-12-01 Nippon Telegr & Teleph Corp <Ntt> 機械翻訳装置、機械翻訳方法、およびそのプログラム
WO2014196375A1 (ja) * 2013-06-03 2014-12-11 独立行政法人情報通信研究機構 翻訳装置、学習装置、翻訳方法、および記録媒体
JP2017084274A (ja) * 2015-10-30 2017-05-18 日本電信電話株式会社 単語対応付け装置、機械翻訳学習装置、方法、及びプログラム
CN110895660A (zh) * 2018-08-23 2020-03-20 澳门大学 一种基于句法依存关系动态编码的语句处理方法及装置

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
CSNG200500630005; 渡辺 太郎 外3名: '階層的句アラインメントを用いた統計的機械翻訳' 電子情報通信学会論文誌 (J87-D-II) 第J87-D-II巻第4号, 20040401, p.978-986, 社団法人電子情報通信学会 *
CSNG200700706020; 今村 賢治 外2名: '句に基づく構文トランスファ方式統計翻訳' 情報処理学会論文誌 第48巻第4号, 20070415, P.1809〜1819, 社団法人情報処理学会 *
CSNH200700066005; 塚田 元 外4人: '統計的機械翻訳' NTT技術ジャーナル 第19巻第6号, 20070601, P.23〜25, 社団法人電気通信協会 *
JPN6012037584; 今村 賢治 外2名: '句に基づく構文トランスファ方式統計翻訳' 情報処理学会論文誌 第48巻第4号, 20070415, P.1809〜1819, 社団法人情報処理学会 *
JPN6012037585; 塚田 元 外4人: '統計的機械翻訳' NTT技術ジャーナル 第19巻第6号, 20070601, P.23〜25, 社団法人電気通信協会 *
JPN6012037586; 渡辺 太郎 外3名: '階層的句アラインメントを用いた統計的機械翻訳' 電子情報通信学会論文誌 (J87-D-II) 第J87-D-II巻第4号, 20040401, p.978-986, 社団法人電子情報通信学会 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011242895A (ja) * 2010-05-14 2011-12-01 Nippon Telegr & Teleph Corp <Ntt> 機械翻訳装置、機械翻訳方法、およびそのプログラム
JP2011243147A (ja) * 2010-05-21 2011-12-01 Nippon Telegr & Teleph Corp <Ntt> 素性重み学習装置、N−bestスコアリング装置、N−bestリランキング装置、それらの方法およびプログラム
WO2014196375A1 (ja) * 2013-06-03 2014-12-11 独立行政法人情報通信研究機構 翻訳装置、学習装置、翻訳方法、および記録媒体
JP2017084274A (ja) * 2015-10-30 2017-05-18 日本電信電話株式会社 単語対応付け装置、機械翻訳学習装置、方法、及びプログラム
CN110895660A (zh) * 2018-08-23 2020-03-20 澳门大学 一种基于句法依存关系动态编码的语句处理方法及装置
CN110895660B (zh) * 2018-08-23 2024-05-17 澳门大学 一种基于句法依存关系动态编码的语句处理方法及装置

Also Published As

Publication number Publication date
JP5180522B2 (ja) 2013-04-10

Similar Documents

Publication Publication Date Title
JP5774751B2 (ja) ツリーレット翻訳対の抽出
Liang et al. An end-to-end discriminative approach to machine translation
US9176936B2 (en) Transliteration pair matching
JP4961755B2 (ja) 単語アライメント装置、単語アライメント方法、単語アライメントプログラム
US8239188B2 (en) Example based translation apparatus, translation method, and translation program
DeNero et al. Inducing sentence structure from parallel corpora for reordering
JP5586817B2 (ja) ツリーレット翻訳対の抽出
US20090326916A1 (en) Unsupervised chinese word segmentation for statistical machine translation
JP6817556B2 (ja) 類似文生成方法、類似文生成プログラム、類似文生成装置及び類似文生成システム
JP5180522B2 (ja) 機械翻訳装置、機械翻訳方法、およびそのプログラムならびに記録媒体
Xu et al. Do we need Chinese word segmentation for statistical machine translation?
KR20230009564A (ko) 앙상블 스코어를 이용한 학습 데이터 교정 방법 및 그 장치
CN109033066A (zh) 一种摘要形成方法及装置
Dreyer A non-parametric model for the discovery of inflectional paradigms from plain text using graphical models over strings
JP5552101B2 (ja) 並べ替え規則学習装置、方法、及びプログラム、並びに翻訳装置、方法、及びプログラム
JP2015169947A (ja) モデル学習装置、形態素解析装置、及び方法
JP5565827B2 (ja) 統計的機械翻訳のための言語独立な単語セグメント化のための文分離器トレーニング装置、そのためのコンピュータプログラム及びコンピュータ可読媒体。
JP4829702B2 (ja) 機械翻訳装置、機械翻訳方法、および生成規則作成装置、生成規則作成方法、ならびにそれらのプログラムおよび記録媒体
JP2018072979A (ja) 対訳文抽出装置、対訳文抽出方法およびプログラム
JP2009157888A (ja) 音訳モデル作成装置、音訳装置、及びそれらのためのコンピュータプログラム
JP5544518B2 (ja) 機械翻訳装置、機械翻訳方法、およびそのプログラム
JP5734917B2 (ja) 並べ替えモデル学習装置、方法、及びプログラム、並びに翻訳装置、方法、及びプログラム
JP4113204B2 (ja) 機械翻訳装置、その方法およびプログラム
Wegari et al. Parts of speech tagging for Afaan Oromo
JP6083645B2 (ja) 語順並べ替え装置、翻訳装置、翻訳モデル学習装置、方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090715

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20110810

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120724

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120919

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130108

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130111

R150 Certificate of patent or registration of utility model

Ref document number: 5180522

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350