JP2004355322A - 機械翻訳装置、変換ルール辞書管理装置およびプログラム - Google Patents
機械翻訳装置、変換ルール辞書管理装置およびプログラム Download PDFInfo
- Publication number
- JP2004355322A JP2004355322A JP2003152155A JP2003152155A JP2004355322A JP 2004355322 A JP2004355322 A JP 2004355322A JP 2003152155 A JP2003152155 A JP 2003152155A JP 2003152155 A JP2003152155 A JP 2003152155A JP 2004355322 A JP2004355322 A JP 2004355322A
- Authority
- JP
- Japan
- Prior art keywords
- conversion rule
- conversion
- priority
- rule
- dictionary
- 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.)
- Pending
Links
Images
Abstract
【課題】互いに競合する変換ルールの適用順位の調整を自動的に行う。
【解決手段】原文解析部12は原文7から解析木を、変換部13は解析木から訳文木を、訳文生成部14は訳文木から訳文8を、それぞれ生成する。変換ルール辞書4は、解析木から訳文木を生成するための変換ルール群を格納する。個々の変換ルールは、変換前部分木構造を含むコンディション部と、変換後部分木構造を含むアクション部と、適用順位の優先度と、検索する際のインデックスになるキーとを含み、同じキーを持つ複数の変換ルールは優先度順にソートされている。変換ルール辞書管理部2は、追加登録する変換ルールのコンディション部からその変換ルールの適用順位の優先度を計算して変換ルールに設定し、同じキーを持つ複数の変換ルールが優先度順に並ぶように変換ルール辞書4に登録する。
【選択図】 図1
【解決手段】原文解析部12は原文7から解析木を、変換部13は解析木から訳文木を、訳文生成部14は訳文木から訳文8を、それぞれ生成する。変換ルール辞書4は、解析木から訳文木を生成するための変換ルール群を格納する。個々の変換ルールは、変換前部分木構造を含むコンディション部と、変換後部分木構造を含むアクション部と、適用順位の優先度と、検索する際のインデックスになるキーとを含み、同じキーを持つ複数の変換ルールは優先度順にソートされている。変換ルール辞書管理部2は、追加登録する変換ルールのコンディション部からその変換ルールの適用順位の優先度を計算して変換ルールに設定し、同じキーを持つ複数の変換ルールが優先度順に並ぶように変換ルール辞書4に登録する。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は機械翻訳装置に関し、特に変換ルールを使用して原文の中間表現である解析木を訳文の中間表現である訳文木に変換するトランスファ方式の機械翻訳装置に関する。
【0002】
【従来の技術】
この種の機械翻訳装置では、原文を解析して原文の中間表現である解析木を生成する解析工程、解析木を訳文の中間表現である訳文木に変換(トランスファ)する変換工程、訳文木から目標の訳文を生成する生成工程の3つの工程を経て翻訳処理が進められる(例えば、特許文献1参照)。
【0003】
各工程では、種々の翻訳用辞書が用いられるが、特に変換工程では、原文部分木と訳文部分木の対応関係を記述した変換ルールを多数記憶した変換ルール辞書が用いられる。個々の変換ルールは、コンディション部とアクション部の組で表現されており、変換工程では、解析木の部分木にマッチするコンディション部を持つ変換ルールのアクション部を適用することにより木構造を書き換えていき、訳文木を生成する。
【0004】
他方、機械翻訳に使用する上述した変換ルールのような翻訳ルールは、人間による手作業で作成する以外に、例文を用いて新たな翻訳ルールを機械的に生成する機械翻訳ルール生成装置も提案されている(例えば、特許文献2参照)。
【0005】
【特許文献1】
特開昭61−128372号公報
【特許文献2】
特開平11−250064号公報
【0006】
【発明が解決しようとする課題】
翻訳品質を高めていくためには、変換ルールを大量に蓄えることが重要である。しかし、ルール数が多くなるに従って、ルール間の競合を効率良く調整する必要性が生じてくる。競合とは、変換ルールを適用する際に、訳語選択などのアクションが異なる変換ルールが同時に複数成立する(原文部分木がマッチする)場合を指す。たとえば、”in tears”→「泣きながら」という変換ルールと、”soaked in tears”→”泣きぬれる”という変換ルールがあったとすると、”He was soaked in tears”という原文に対して、両方とも原文部分木がマッチするが、”in tears”部分に関して訳出の方法が異なっている。このような場合は、一般により条件の厳しい変換ルール(”soaked in tears”)を適用することで、翻訳の品質を高めることができる。
【0007】
このように、より条件の厳しい変換ルールを優先的に適用する方法として、変換ルール辞書から変換ルールを検索する際のインデックスになるキーとしてコンディション部に含まれる変換前部分木のどれか1つのノード(例えば解析木とのマッチングを行う際のスタートノード)のスペルを使用し、同じキーを持つ複数の変換ルールは適用条件の厳しい順に並ぶように変換ルール辞書に登録しておき、変換工程において解析木の各ノードのスペルをキーに変換ルール辞書から変換ルールをロードし、順位が上の変換ルールから順にマッチングを行っていく方法が考えられる。
【0008】
しかし、同じキーを持つ複数の変換ルールが適用条件の厳しい順に並ぶように変換ルール辞書へ登録する作業を人間の手作業で行うと、変換ルール辞書の作成に多くの労力が必要となる。何故なら、新規に作成した複数の変換ルールを変換ルール辞書に登録する際、競合ルール間の適用条件の厳しさの関係をそれらのルールのコンディション部から人が判断して順番を決めなければならないためである。特に、変換ルールの開発を複数の場所で分散して行っている場合、それぞれ別の場所で新規に作成された競合ルール間の調整は変換ルール辞書に登録する際にまとめて行う必要があり、その作業に多大な労力を必要とする。
【0009】
また、変換ルール辞書のメンテナンスにも多くの労力が必要となる。何故なら、変換ルール辞書に新たな変換ルールを追加する場合、その挿入位置を決めるために既存の変換ルールおよび追加する新たな変換ルールの適用条件の厳しさを、それらのコンディション部から判断しなければならないからである。また、変換ルール辞書に既に登録されている変換ルールを修正した場合も、変換ルール間の適用条件の厳しさの関係が変化する可能性があるため、修正後の変換ルールを含め関連する変換ルールの適用条件の厳しさを再度判定し、必要に応じて並べ替えを行う必要があるためである。
【0010】
本発明の目的は、互いに競合する変換ルールの適用順位の調整を自動的に行うことのできる機械翻訳装置および変換ルール管理装置を提供することにある。
【0011】
【課題を解決するための手段】
本発明の第1の機械翻訳装置は、原文を構文解析して原文中間表現の解析木を出力する原文解析手段と、前記解析木を訳文中間表現の訳文木に変換するための変換ルール群であって、個々の変換ルールは、変換前部分木構造を含むコンディション部と、変換後部分木構造を含むアクション部と、前記コンディション部の内容から計算された適用順位の優先度と、当該変換ルールを検索する際のインデックスになるキーとを含み、同じキーを持つ複数の変換ルールは前記優先度順に並べられている変換ルール群を記憶する変換ルール辞書と、前記解析木の構造に前記変換ルール群を適用することにより訳文中間表現の訳文木を生成する変換手段であって、適用可能な変換ルールが複数存在する場合にはより優先度の高い変換ルールを適用する変換手段と、前記訳文中間表現の訳文木から訳文を生成する訳文生成手段と、追加登録する変換ルールのコンディション部からその変換ルールの適用順位の優先度を計算する適用順位決定手段と、該適用順位決定手段で計算された優先度が設定された変換ルールを、同じキーを持つ複数の変換ルールが前記優先度順に並ぶように前記変換ルール辞書に登録する変換ルール登録手段とを備えている。
【0012】
本発明の第2の機械翻訳装置は、第1の機械翻訳装置において、前記変換ルール登録手段は、前記変換ルール辞書に登録された変換ルールが修正された場合、修正後の変換ルールの適用順位の優先度を前記適用順位決定手段によって再計算して修正後の変換ルールに設定し、前記変換ルール辞書中の修正後の変換ルール及び該修正後の変換ルールと同じキーを持つ他の既登録の変換ルールが前記優先度順に並ぶように並べ替えを行う。
【0013】
本発明の第3の機械翻訳装置は、第1または第2の機械翻訳装置において、前記適用順位決定手段は、変換ルールのコンディション部の内容を解析し、適用条件がより厳しい変換ルールほど、より高い優先度を割り当てる。
【0014】
本発明の第4の機械翻訳装置は、第3の機械翻訳装置において、前記適用順位決定手段は、変換ルールのコンディション部に含まれる変換前部分木構造のノード数をパラメータに持つ優先度計算式により優先度を計算する。
【0015】
本発明の第5の機械翻訳装置は、第3の機械翻訳装置において、前記適用順位決定手段は、変換ルールのコンディション部に含まれる変換前部分木構造のノード数および各ノードの属性条件の数をパラメータに持つ優先度計算式により優先度を計算する。
【0016】
本発明の第1の変換ルール辞書管理装置は、トランスファ方式の機械翻訳装置の変換工程で使用される変換ルール群であって、個々の変換ルールは、変換前部分木構造を含むコンディション部と、変換後部分木構造を含むアクション部と、前記コンディション部の内容から計算された適用順位の優先度と、当該変換ルールを検索する際のインデックスになるキーとを含み、同じキーを持つ複数の変換ルールは前記優先度順に並べられている変換ルール群を記憶する変換ルール辞書を管理する装置において、追加登録する変換ルールのコンディション部からその変換ルールの適用順位の優先度を計算する適用順位決定手段と、該適用順位決定手段で計算された優先度が設定された変換ルールを、同じキーを持つ複数の変換ルールが前記優先度順に並ぶように前記変換ルール辞書に登録する変換ルール登録手段とを備えている。
【0017】
本発明の第2の変換ルール辞書管理装置は、第1の変換ルール辞書管理装置において、前記変換ルール登録手段は、前記変換ルール辞書に登録された変換ルールが修正された場合、修正後の変換ルールの適用順位の優先度を前記適用順位決定手段によって再計算して修正後の変換ルールに設定し、前記変換ルール辞書中の修正後の変換ルール及び該修正後の変換ルールと同じキーを持つ他の既登録の変換ルールが前記優先度順に並ぶように並べ替えを行う。
【0018】
【作用】
本発明の機械翻訳装置および変換ルール辞書管理装置にあっては、適用順位決定手段が、追加登録する変換ルールのコンディション部からその変換ルールの適用順位の優先度を計算し、変換ルール登録手段が、適用順位決定手段で計算された優先度が設定された変換ルールを、同じキーを持つ複数の変換ルールが優先度順に並ぶように変換ルール辞書に登録することにより、互いに競合する変換ルールの適用順位の調整を自動的に行う。
【0019】
【発明の実施の形態】
次に本発明の実施の形態について図面を参照して詳細に説明する。
【0020】
図1を参照すると、本発明の第1の実施の形態にかかる機械翻訳装置は、機械翻訳部1、変換ルール辞書管理部2、記憶装置3、変換ルール辞書4、翻訳用単語辞書5および利用者入出力装置6を含んで構成されており、英語で記述された原文7を日本語の訳文8に翻訳する。なお、本実施の形態は英日機械翻訳装置に本発明を適用したものであるが、日本語から英語への翻訳など、本発明は任意の言語から他の任意の言語への機械翻訳に適用可能である。
【0021】
変換ルール辞書4と翻訳用単語辞書5は、機械翻訳部1における翻訳過程で参照される翻訳用辞書である。一般にトランスファ方式の機械翻訳では、原言語解析用の辞書、変換用の辞書、目的言語生成用の辞書が用いられるが、翻訳用単語辞書5は原言語解析用の辞書と目的言語生成用の辞書をあわせたものに相当し、変換ルール辞書4は変換用の辞書に相当する。翻訳用単語辞書5には、原語と訳語の対応と原文の構文解析および訳文生成に必要な品詞等の構文情報や意味情報などが格納されている。他方、変換ルール辞書4には、解析木を訳文木に変換するための変換ルールが格納されている。これらの翻訳用辞書、特に変換ルール辞書4は、不揮発性で読み書き可能な記憶装置、例えば磁気ディスク等に設けられている。翻訳用単語辞書5の構成や内容は従来のものと何ら変わりなく、変換ルール辞書4の構成が従来のものと相違している。以下、変換ルール辞書4について説明する。
【0022】
変換ルール辞書4には、原文中間表現の解析木を訳文中間表現の訳文木に変換するための変換ルール群が蓄積されている。個々の変換ルールは、図2に示される変換ルール400に示されるように、キー401、ID402、優先度403、コンディション部404およびアクション部405から構成される。
【0023】
コンディション部404は、コンディション木4041およびコンディション属性4042を含む。コンディション木4041は、複数の単語からなる変換前部分木構造の定義情報であり、コンディションとなる木の構造と各ノードの名前が定義されている。例えば図3(a)に示されるような4つのノードから構成される木構造を例にすると、コンディション木4041には、図3(b)に示されるような形式でコンディションとなる木の構造と各ノードの名前が定義されている。ここで、「ノード1」、「ノード2」、「ノード3」、「ノード4」は、それぞれのノードの名前であり、記号「:」の後ろに、そのノードの親ノードの名前が記述される。また、コンディション木4041には、解析木とのマッチングを行う際のスタートノードとして、当該変換ルール400のキー401となっているノードがどれであるかも記述されている。例えば、ノード3のスペルがキー401となっているとき、図3(c)のように記述されている。
【0024】
コンディション属性4042は、コンディション木4041の各ノードに対するスペル、品詞などの属性条件を定義した部分で、例えば1つのノードの1つの属性毎に「ノード名:属性名:属性値」という形式で記述されている。図3(d)は図3(b)に示したコンディション木に対応するコンディション属性の一部を示している。
【0025】
アクション部405は、アクション木4051およびアクション属性4052を含む。アクション木4051は、構造変形が必要な場合の変換後の木構造の定義情報であり、コンディション木4041と同様の形式で記述される。但し、コンディション木4041に存在して、アクション木4051に存在しないノード名がある場合、そのノードは削除するという意味になり、アクション木4051に存在して、コンディション木4041に存在しないノード名がある場合、新たにノードを生成することを意味する。また、アクション木4051において、コンディション木4041における親ノード名と異なる親ノード名が記述されているときは、リンクのかけ替えを行うことを意味する。
【0026】
アクション属性4052は、アクション木4051の各ノードに対する属性の付与指示(訳語指示情報付与など)を定義した部分であり、属性の付与が必要なノードに対する属性設定が例えば、「ノード名:属性名:属性値」という形式で記述されている。図3(e)はアクション属性4052に含まれるアクション属性の一部を示している。
【0027】
キー401は、変換ルール400を変換ルール辞書4から検索する際のインデックスになる文字列であり、コンディション木4041中のノードのうち、解析木とのマッチングを行う際のスタートノードとなるノードのスペルが記述されている。
【0028】
ID402は、変換ルール400を一意に識別する名前である。
【0029】
優先度403は、変換ルール400の適用順位の優先度であり、コンディション部404の内容から計算された値が記述されている。優先度403の具体的な計算方法については後述するが、適用条件がより厳しい(マッチし難い)変換ルール400ほど、より高い優先度が割り当てられるようになっている。
【0030】
図4に変換ルール辞書4における変換ルールの格納形式を示す。変換ルール辞書4には、同じキー401を持つ変換ルール群41毎に連続した格納領域が割り当てられ、変換ルール群41中の個々の変換ルール400−1〜400−nは、優先度403の値の昇順にソートされて格納されている。
【0031】
再び図1を参照すると、変換ルール辞書管理部2は、変換ルール辞書4の作成およびメンテナンスを司る部分であり、変換ルール登録部21および適用順位決定部22を含んで構成される。
【0032】
適用順位決定部22は、変換ルール登録部21から変換ルールを受け取り、その変換ルールの適用順位の優先度の値を決定し、結果を変換ルール登録部21に返却する。優先度は、コンディションの強さによって決定する。条件が緩い一般的な変換ルールより、条件が厳しい特定の文に有効な変換ルールを先に適用できるようにするためである。コンディションの強さは、ノード数、属性条件数などの数による。ただし、単に足し合わせるのではなく、それぞれに重み付けを行う。例えば、スペルは品詞や意味属性などに比べると、より具体的にノードを特定していて、条件としては厳しいものなので、より高く評価する。具体的には、適用順位決定部22は、優先度の値を、変換ルールのコンディション木4041およびコンディション属性4042から、以下のような計算式で求める。
【0033】
優先度の値=ノード数*3+スペル属性数*5+その他属性数 …(1)
ここで、スペル属性数とは、属性条件の中で、属性名がスペルであるものの数である。スペルに他より大きな重みを持たせるのは、意味分類などの他の属性に比べて、強くノードを限定する条件であり、コンディションとしてはより厳しい(マッチしずらい)条件と考えられるためである。なお、式(1)中の「3」、「5」は重み係数であるが、これらの値に限定されないことは勿論のことである。
【0034】
変換ルール登録部21は、編集作業者に対して変換ルール辞書4の管理機能を提供する。変換ルール辞書4に新規に変換ルールを登録する場合や既存の変換ルールを修正する場合は、適用順位決定部22によって計算された優先度の値を新規登録する変換ルールや修正後の変換ルールに設定し、同じキーを持つ複数の変換ルールが優先度順に並ぶように変換ルール辞書に登録する。
【0035】
変換ルール登録部21の処理の一例を図5に示す。変換ルール登録部21は、編集作業者が利用者入出力装置6のキーボード等の入力装置6aからキー(原語スペル)が入力されると(ステップS1)、そのキーと同じ文字列のキー401を持つ全変換ルールを変換ルール辞書4から検索し、内部の編集用メモリに格納すると共に利用者入出力装置6の表示装置6bの編集画面に表示する(ステップS2)。このとき表示される変換ルールを以下、既登録変換ルールと呼ぶことにする。なお、変換ルール辞書4に1つも変換ルールが登録されていない初期の状態では、既登録変換ルールは存在しない。次に、編集作業者が入力装置6aから入力する編集の種類を示す指示を解釈し(ステップS3)、新規変換ルールの登録、既登録変換ルールの修正、既登録変換ルールの削除の何れかの処理に分岐する。
【0036】
(1)新規登録
変換ルールの新規登録の場合、変換ルール登録部21は、編集作業者に、既に作成済みの新規変換ルールを入力装置6aから入力させるか、あるいは、編集画面上で新規変換ルールを作成させる(ステップS4)。入力あるいは作成される新規変換ルールは、図2に示したものと同じ構成であるが、優先度403の値はNULLになっている。次に変換ルール登録部21は、この新規変換ルールを適用順位決定部22に渡し、その新規変換ルールの適用順位の優先度の値を計算させる(ステップS5)。適用順位決定部22が例えば前述した式(1)によって優先度の値を計算し、その値を返却してくると、変換ルール登録部21は、新規変換ルールの優先度403にその値を設定し編集用メモリに格納する(ステップS6)。変換ルール登録部21は、新規に登録する変換ルールが他に存在するかどうかを表示装置6bにて編集作業者に問い合わせ、他の新規変換ルールが存在する場合(ステップS7でNO)、ステップS4の処理に戻り、前述した処理と同様の処理を繰り返す。
【0037】
新規登録する変換ルールが終了した場合(ステップS7でYES)、変換ルール登録部21は、優先度の値を設定した全ての新規登録変換ルールとステップS2で変換ルール辞書4から検索した同一キーを持つ全ての既登録変換ルールとを、編集用メモリ上で、それらの優先度の値の昇順にソートする(ステップS8)。そして、ソート後の変換ルール群を変換ルール辞書4に格納する(ステップS9)。つまり、ステップS2で検索した変換ルール辞書4中の元の既登録変換ルール群をソート後の変換ルール群で置き換える。
【0038】
(2)既登録変換ルールの修正
既登録変換ルールの修正の場合、変換ルール登録部21は、編集作業者に、編集画面上で修正対象とする1つの変換ルールを選択させて、そのコンディション部404やアクション部405などの内容を編集画面上で修正させる(ステップS10)。次に変換ルール登録部21は、この修正後の変換ルールを適用順位決定部22に渡し、その修正後の変換ルールの適用順位の優先度の値を再計算させる(ステップS11)。適用順位決定部22が例えば前述した式(1)によって優先度の値を再計算し、その値を返却してくると、変換ルール登録部21は、修正後の変換ルールの優先度403の値を編集画面および編集用メモリ上で、返却された値に置き換える(ステップS12)。変換ルール登録部21は、修正する変換ルールが未だ残っているかどうかを表示装置6bにて編集作業者に問い合わせ、他に修正する変換ルールが存在する場合(ステップS13でNO)、ステップS10の処理に戻り、前述した処理と同様の処理を繰り返す。
【0039】
修正する変換ルールが終了した場合(ステップS13でYES)、変換ルール登録部21は、編集画面上の全変換ルール(優先度の値が再計算された修正後の全ての変換ルールと修正されていない他の変換ルール)を、編集用メモリ上で、それらの優先度の値の昇順にソートし(ステップS8)、ソート後の変換ルール群で変換ルール辞書4中の元の既登録変換ルール群を置き換える(ステップS9)。
【0040】
(3)既登録変換ルールの削除
既登録変換ルールの削除の場合、変換ルール登録部21は、編集作業者に、編集画面上で削除対象とする1つの変換ルールを選択させて、その変換ルールを編集画面および編集用メモリ上で削除させる(ステップS14)。次に変換ルール登録部21は、削除する変換ルールが未だ残っているかどうかを表示装置6bにて編集作業者に問い合わせ、他に削除する変換ルールが存在する場合(ステップS15でNO)、ステップS14の処理に戻り、前述した処理と同様の処理を繰り返す。削除する変換ルールがそれ以上存在しない場合(ステップS15でYES)、変換ルール登録部21は、編集画面(編集用メモリ)上に残っている全変換ルールで変換ルール辞書4中の元の既登録変換ルール群を置き換える(ステップS9)。
【0041】
このように変換ルール登録部21の役割は、各キーに対する一連の変換ルールを、常に、優先度(条件の厳しさ)でソートして変換ルール辞書4に格納することである。
【0042】
再び図1を参照すると、記憶装置3は、原文記憶部31、解析木記憶部32、訳文木記憶部33および訳文記憶部34を備え、機械翻訳部1は、入力部11、原文解析部12、変換部13、訳文生成部14および出力部15を含んで構成されている。以下、機械翻訳部1の各部の機能をその動作とあわせて説明する。
【0043】
先ず、入力部11は、キーボードやファイル等から原文7を入力し、原文記憶部31に記憶する。原文解析部12は、原文記憶部31から原文を入力し、翻訳用単語辞書5に格納されている原語構文属性情報や意味属性情報を利用して、原文の構文解析および意味解析を行い、原文の中間表現である解析木を生成し、解析木記憶部32に記憶する。
【0044】
次に、変換部13は、解析木記憶部32から解析木を入力し、その解析木に対して変換ルール辞書4の変換ルール群を適用し、訳文の中間表現である訳文木を生成して、訳文木記憶部33に記憶する。具体的には以下のような処理を行う。
【0045】
変換部13は、解析木のすべてのノードを順番にトラバースし、各ノードにおいて、そのノードの原語スペルをキーとして変換ルール辞書4を引き、その変換ルールのコンディションとマッチングをとる。変換ルール辞書4から引いた変換ルールが複数存在する場合、複数の変換ルールが同時にマッチする可能性があり、その場合には変換ルール中の優先度403がより上位の変換ルールを適用する。これは、前述したように変換ルール辞書4中において同じキー401を持つ複数の変換ルールは優先度403で昇順にソートされており、ロードされた変換ルール群も優先度に従ってソートされているため、そのまま、上から適用していくだけでよい。
【0046】
そして、適用する変換ルールのコンディション木4041、コンディション属性4042を参照して、実際の解析木のノードをコンディション木4041の各ノードにバインドしていき、すべてのノードがバインドできたら、バインドされた解析木のノードに対して当該変換ルールのアクション部405で記述されたアクションを実行する。実行されるアクションは、各ノードに対する属性の付与(訳語指示情報付与など)や、より自然な訳文を作成するための構造変形などである。この際、アクションにおいて、どのノードにどういう属性を設定したかを1解析木の処理に渡って記憶しておく。コンディションがマッチした場合でも、すでに別の変換ルールによって、設定された属性に対して、異なる属性値を設定しようとしているルールは競合ルールなので適用しないようにする。このために、あらかじめ、解析木の各ノードに固有のノードIDを付与する。変換ルールのアクションで属性を設定した際、「ノードID:属性:属性値」という情報を保存する。ノードIDは、属性を設定したノードのノードIDである。コンディション部のノードの解析木へのバインドが成功した時点で、アクション属性のノード名をノードIDに置き換えて、保持されたデータと比較することによって矛盾があるかどうかチェックすることができる。
【0047】
次に訳文生成部14は、訳文木記憶部33から訳文木を入力し、翻訳用単語辞書5に記憶された訳語構文属性情報や意味属性情報を利用して、訳文木から訳文を生成し、訳文記憶部34に記憶する。変換部13によって訳文木のノードに付与された訳語指示情報付与による実際の訳語選択も、この訳文生成部14で行われる。
【0048】
最後に、出力部15は、訳文記憶部34から訳文を入力し、表示装置やプリンタ、ファイルなどに訳文8として出力する。
【0049】
このように本実施の形態にかかる機械翻訳装置は、変換ルール辞書4に新規に登録する変換ルールの適用順位の優先度および既登録変換ルールを修正した場合の修正後変換ルールの適用順位の優先度が、適用順位決定部22によって自動的に決定され、変換ルール登録部21によって、新規変換ルールおよび修正後の変換ルールが、同じキーを持つ複数の変換ルールが優先度順に並ぶように変換ルール辞書4に格納されるため、編集作業者自身が、互いに競合する変換ルールの適用順位の調整を行う必要がなくなる。
【0050】
図6を参照すると、本発明の第2の実施の形態にかかる機械翻訳装置は、適用順位決定部91を有するルール作成装置9を備える点で、図1に示した第1の実施の形態と相違する。
【0051】
適用順位決定部91は、変換ルール辞書管理部2に備わる適用順位決定部22と同様の機能を有し、例えば前述した式(1)を使用して、変換ルールの適用順位の優先度を計算する。ルール作成装置9は、ルール作成者が変換ルールを作成する際に使用する装置で、テキストエディタや特許文献2に示されるようなルール生成装置で構成される。このルール作成装置9で作成される変換ルールは、図2に示したものと同じ構成であり、優先度403の値は適用順位決定部91によって計算された値が設定される。
【0052】
変換ルール辞書管理部2の変換ルール登録部21は、新規ルールの登録に際して、優先度設定済みの新規変換ルールの登録が入力装置6aから指示され、ルール作成装置9で作成された同じキーを持つ1以上の新規ルールが入力された場合、適用順位決定部22を用いた優先度の決定工程を省略し、入力された優先度設定済みの新規ルールと、それと同じキーを持つ変換ルール辞書4中の既登録変換ルールとを優先度順にソートして、変換ルール辞書4に書き戻す。
【0053】
なお、本発明の別の実施の形態として、図6の変換ルール辞書管理部2における適用順位決定部22を省略した実施の形態も考えられる。但し、その場合には既登録変換ルールを修正したときの修正後の変換ルールの優先度の計算は自動的に行えないため、人手で実施するか、ルールの修正を行わないかの何れかとなる。
【0054】
以上本発明の実施の形態について説明したが、本発明は以上の実施の形態にのみ限定されず、その他各種の付加変更が可能である。また、本発明の機械翻訳装置は、その有する機能をハードウェア的に実現することは勿論、コンピュータとプログラムとで実現することができる。プログラムは、磁気ディスクや半導体メモリ等のコンピュータ可読記録媒体に記録されて提供され、コンピュータの立ち上げ時などにコンピュータに読み取られ、そのコンピュータの動作を制御することにより、そのコンピュータを前述した各実施の形態における機械翻訳部1の各機能手段11〜15、変換ルール辞書管理部2の各機能手段21、22として機能させる。機械翻訳部1と変換ルール辞書管理部2とを別々のコンピュータとプログラムで実現することも可能である。
【0055】
【発明の効果】
第1の効果は、変換ルールの登録や修正時における編集作業者の工数が削減されることである。その理由は、変換ルールの適用順位が自動的に決定されるため、挿入位置などを気にする必要がないためである。
【0056】
第2の効果は、分散開発された変換ルールを統合する工数が削減することである。その理由は、変換ルールの適用順位が自動的に決定されるため、新規ルールどうしの適用順位を指定する必要がないためである。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態のブロック図である。
【図2】変換ルールの構成例を示す図である。
【図3】変換ルールのコンディション部およびアクション部の説明図である。
【図4】変換ルール辞書の格納形式の一例を示す図である。
【図5】変換ルール登録部の処理例を示すフローチャートである。
【図6】本発明の第2の実施の形態のブロック図である。
【符号の説明】
1…機械翻訳部
2…変換ルール辞書管理部
3…記憶装置
4…変換ルール辞書
5…翻訳用単語辞書
6…利用者入出力装置
7…原文
8…訳文
9…ルール作成装置
【発明の属する技術分野】
本発明は機械翻訳装置に関し、特に変換ルールを使用して原文の中間表現である解析木を訳文の中間表現である訳文木に変換するトランスファ方式の機械翻訳装置に関する。
【0002】
【従来の技術】
この種の機械翻訳装置では、原文を解析して原文の中間表現である解析木を生成する解析工程、解析木を訳文の中間表現である訳文木に変換(トランスファ)する変換工程、訳文木から目標の訳文を生成する生成工程の3つの工程を経て翻訳処理が進められる(例えば、特許文献1参照)。
【0003】
各工程では、種々の翻訳用辞書が用いられるが、特に変換工程では、原文部分木と訳文部分木の対応関係を記述した変換ルールを多数記憶した変換ルール辞書が用いられる。個々の変換ルールは、コンディション部とアクション部の組で表現されており、変換工程では、解析木の部分木にマッチするコンディション部を持つ変換ルールのアクション部を適用することにより木構造を書き換えていき、訳文木を生成する。
【0004】
他方、機械翻訳に使用する上述した変換ルールのような翻訳ルールは、人間による手作業で作成する以外に、例文を用いて新たな翻訳ルールを機械的に生成する機械翻訳ルール生成装置も提案されている(例えば、特許文献2参照)。
【0005】
【特許文献1】
特開昭61−128372号公報
【特許文献2】
特開平11−250064号公報
【0006】
【発明が解決しようとする課題】
翻訳品質を高めていくためには、変換ルールを大量に蓄えることが重要である。しかし、ルール数が多くなるに従って、ルール間の競合を効率良く調整する必要性が生じてくる。競合とは、変換ルールを適用する際に、訳語選択などのアクションが異なる変換ルールが同時に複数成立する(原文部分木がマッチする)場合を指す。たとえば、”in tears”→「泣きながら」という変換ルールと、”soaked in tears”→”泣きぬれる”という変換ルールがあったとすると、”He was soaked in tears”という原文に対して、両方とも原文部分木がマッチするが、”in tears”部分に関して訳出の方法が異なっている。このような場合は、一般により条件の厳しい変換ルール(”soaked in tears”)を適用することで、翻訳の品質を高めることができる。
【0007】
このように、より条件の厳しい変換ルールを優先的に適用する方法として、変換ルール辞書から変換ルールを検索する際のインデックスになるキーとしてコンディション部に含まれる変換前部分木のどれか1つのノード(例えば解析木とのマッチングを行う際のスタートノード)のスペルを使用し、同じキーを持つ複数の変換ルールは適用条件の厳しい順に並ぶように変換ルール辞書に登録しておき、変換工程において解析木の各ノードのスペルをキーに変換ルール辞書から変換ルールをロードし、順位が上の変換ルールから順にマッチングを行っていく方法が考えられる。
【0008】
しかし、同じキーを持つ複数の変換ルールが適用条件の厳しい順に並ぶように変換ルール辞書へ登録する作業を人間の手作業で行うと、変換ルール辞書の作成に多くの労力が必要となる。何故なら、新規に作成した複数の変換ルールを変換ルール辞書に登録する際、競合ルール間の適用条件の厳しさの関係をそれらのルールのコンディション部から人が判断して順番を決めなければならないためである。特に、変換ルールの開発を複数の場所で分散して行っている場合、それぞれ別の場所で新規に作成された競合ルール間の調整は変換ルール辞書に登録する際にまとめて行う必要があり、その作業に多大な労力を必要とする。
【0009】
また、変換ルール辞書のメンテナンスにも多くの労力が必要となる。何故なら、変換ルール辞書に新たな変換ルールを追加する場合、その挿入位置を決めるために既存の変換ルールおよび追加する新たな変換ルールの適用条件の厳しさを、それらのコンディション部から判断しなければならないからである。また、変換ルール辞書に既に登録されている変換ルールを修正した場合も、変換ルール間の適用条件の厳しさの関係が変化する可能性があるため、修正後の変換ルールを含め関連する変換ルールの適用条件の厳しさを再度判定し、必要に応じて並べ替えを行う必要があるためである。
【0010】
本発明の目的は、互いに競合する変換ルールの適用順位の調整を自動的に行うことのできる機械翻訳装置および変換ルール管理装置を提供することにある。
【0011】
【課題を解決するための手段】
本発明の第1の機械翻訳装置は、原文を構文解析して原文中間表現の解析木を出力する原文解析手段と、前記解析木を訳文中間表現の訳文木に変換するための変換ルール群であって、個々の変換ルールは、変換前部分木構造を含むコンディション部と、変換後部分木構造を含むアクション部と、前記コンディション部の内容から計算された適用順位の優先度と、当該変換ルールを検索する際のインデックスになるキーとを含み、同じキーを持つ複数の変換ルールは前記優先度順に並べられている変換ルール群を記憶する変換ルール辞書と、前記解析木の構造に前記変換ルール群を適用することにより訳文中間表現の訳文木を生成する変換手段であって、適用可能な変換ルールが複数存在する場合にはより優先度の高い変換ルールを適用する変換手段と、前記訳文中間表現の訳文木から訳文を生成する訳文生成手段と、追加登録する変換ルールのコンディション部からその変換ルールの適用順位の優先度を計算する適用順位決定手段と、該適用順位決定手段で計算された優先度が設定された変換ルールを、同じキーを持つ複数の変換ルールが前記優先度順に並ぶように前記変換ルール辞書に登録する変換ルール登録手段とを備えている。
【0012】
本発明の第2の機械翻訳装置は、第1の機械翻訳装置において、前記変換ルール登録手段は、前記変換ルール辞書に登録された変換ルールが修正された場合、修正後の変換ルールの適用順位の優先度を前記適用順位決定手段によって再計算して修正後の変換ルールに設定し、前記変換ルール辞書中の修正後の変換ルール及び該修正後の変換ルールと同じキーを持つ他の既登録の変換ルールが前記優先度順に並ぶように並べ替えを行う。
【0013】
本発明の第3の機械翻訳装置は、第1または第2の機械翻訳装置において、前記適用順位決定手段は、変換ルールのコンディション部の内容を解析し、適用条件がより厳しい変換ルールほど、より高い優先度を割り当てる。
【0014】
本発明の第4の機械翻訳装置は、第3の機械翻訳装置において、前記適用順位決定手段は、変換ルールのコンディション部に含まれる変換前部分木構造のノード数をパラメータに持つ優先度計算式により優先度を計算する。
【0015】
本発明の第5の機械翻訳装置は、第3の機械翻訳装置において、前記適用順位決定手段は、変換ルールのコンディション部に含まれる変換前部分木構造のノード数および各ノードの属性条件の数をパラメータに持つ優先度計算式により優先度を計算する。
【0016】
本発明の第1の変換ルール辞書管理装置は、トランスファ方式の機械翻訳装置の変換工程で使用される変換ルール群であって、個々の変換ルールは、変換前部分木構造を含むコンディション部と、変換後部分木構造を含むアクション部と、前記コンディション部の内容から計算された適用順位の優先度と、当該変換ルールを検索する際のインデックスになるキーとを含み、同じキーを持つ複数の変換ルールは前記優先度順に並べられている変換ルール群を記憶する変換ルール辞書を管理する装置において、追加登録する変換ルールのコンディション部からその変換ルールの適用順位の優先度を計算する適用順位決定手段と、該適用順位決定手段で計算された優先度が設定された変換ルールを、同じキーを持つ複数の変換ルールが前記優先度順に並ぶように前記変換ルール辞書に登録する変換ルール登録手段とを備えている。
【0017】
本発明の第2の変換ルール辞書管理装置は、第1の変換ルール辞書管理装置において、前記変換ルール登録手段は、前記変換ルール辞書に登録された変換ルールが修正された場合、修正後の変換ルールの適用順位の優先度を前記適用順位決定手段によって再計算して修正後の変換ルールに設定し、前記変換ルール辞書中の修正後の変換ルール及び該修正後の変換ルールと同じキーを持つ他の既登録の変換ルールが前記優先度順に並ぶように並べ替えを行う。
【0018】
【作用】
本発明の機械翻訳装置および変換ルール辞書管理装置にあっては、適用順位決定手段が、追加登録する変換ルールのコンディション部からその変換ルールの適用順位の優先度を計算し、変換ルール登録手段が、適用順位決定手段で計算された優先度が設定された変換ルールを、同じキーを持つ複数の変換ルールが優先度順に並ぶように変換ルール辞書に登録することにより、互いに競合する変換ルールの適用順位の調整を自動的に行う。
【0019】
【発明の実施の形態】
次に本発明の実施の形態について図面を参照して詳細に説明する。
【0020】
図1を参照すると、本発明の第1の実施の形態にかかる機械翻訳装置は、機械翻訳部1、変換ルール辞書管理部2、記憶装置3、変換ルール辞書4、翻訳用単語辞書5および利用者入出力装置6を含んで構成されており、英語で記述された原文7を日本語の訳文8に翻訳する。なお、本実施の形態は英日機械翻訳装置に本発明を適用したものであるが、日本語から英語への翻訳など、本発明は任意の言語から他の任意の言語への機械翻訳に適用可能である。
【0021】
変換ルール辞書4と翻訳用単語辞書5は、機械翻訳部1における翻訳過程で参照される翻訳用辞書である。一般にトランスファ方式の機械翻訳では、原言語解析用の辞書、変換用の辞書、目的言語生成用の辞書が用いられるが、翻訳用単語辞書5は原言語解析用の辞書と目的言語生成用の辞書をあわせたものに相当し、変換ルール辞書4は変換用の辞書に相当する。翻訳用単語辞書5には、原語と訳語の対応と原文の構文解析および訳文生成に必要な品詞等の構文情報や意味情報などが格納されている。他方、変換ルール辞書4には、解析木を訳文木に変換するための変換ルールが格納されている。これらの翻訳用辞書、特に変換ルール辞書4は、不揮発性で読み書き可能な記憶装置、例えば磁気ディスク等に設けられている。翻訳用単語辞書5の構成や内容は従来のものと何ら変わりなく、変換ルール辞書4の構成が従来のものと相違している。以下、変換ルール辞書4について説明する。
【0022】
変換ルール辞書4には、原文中間表現の解析木を訳文中間表現の訳文木に変換するための変換ルール群が蓄積されている。個々の変換ルールは、図2に示される変換ルール400に示されるように、キー401、ID402、優先度403、コンディション部404およびアクション部405から構成される。
【0023】
コンディション部404は、コンディション木4041およびコンディション属性4042を含む。コンディション木4041は、複数の単語からなる変換前部分木構造の定義情報であり、コンディションとなる木の構造と各ノードの名前が定義されている。例えば図3(a)に示されるような4つのノードから構成される木構造を例にすると、コンディション木4041には、図3(b)に示されるような形式でコンディションとなる木の構造と各ノードの名前が定義されている。ここで、「ノード1」、「ノード2」、「ノード3」、「ノード4」は、それぞれのノードの名前であり、記号「:」の後ろに、そのノードの親ノードの名前が記述される。また、コンディション木4041には、解析木とのマッチングを行う際のスタートノードとして、当該変換ルール400のキー401となっているノードがどれであるかも記述されている。例えば、ノード3のスペルがキー401となっているとき、図3(c)のように記述されている。
【0024】
コンディション属性4042は、コンディション木4041の各ノードに対するスペル、品詞などの属性条件を定義した部分で、例えば1つのノードの1つの属性毎に「ノード名:属性名:属性値」という形式で記述されている。図3(d)は図3(b)に示したコンディション木に対応するコンディション属性の一部を示している。
【0025】
アクション部405は、アクション木4051およびアクション属性4052を含む。アクション木4051は、構造変形が必要な場合の変換後の木構造の定義情報であり、コンディション木4041と同様の形式で記述される。但し、コンディション木4041に存在して、アクション木4051に存在しないノード名がある場合、そのノードは削除するという意味になり、アクション木4051に存在して、コンディション木4041に存在しないノード名がある場合、新たにノードを生成することを意味する。また、アクション木4051において、コンディション木4041における親ノード名と異なる親ノード名が記述されているときは、リンクのかけ替えを行うことを意味する。
【0026】
アクション属性4052は、アクション木4051の各ノードに対する属性の付与指示(訳語指示情報付与など)を定義した部分であり、属性の付与が必要なノードに対する属性設定が例えば、「ノード名:属性名:属性値」という形式で記述されている。図3(e)はアクション属性4052に含まれるアクション属性の一部を示している。
【0027】
キー401は、変換ルール400を変換ルール辞書4から検索する際のインデックスになる文字列であり、コンディション木4041中のノードのうち、解析木とのマッチングを行う際のスタートノードとなるノードのスペルが記述されている。
【0028】
ID402は、変換ルール400を一意に識別する名前である。
【0029】
優先度403は、変換ルール400の適用順位の優先度であり、コンディション部404の内容から計算された値が記述されている。優先度403の具体的な計算方法については後述するが、適用条件がより厳しい(マッチし難い)変換ルール400ほど、より高い優先度が割り当てられるようになっている。
【0030】
図4に変換ルール辞書4における変換ルールの格納形式を示す。変換ルール辞書4には、同じキー401を持つ変換ルール群41毎に連続した格納領域が割り当てられ、変換ルール群41中の個々の変換ルール400−1〜400−nは、優先度403の値の昇順にソートされて格納されている。
【0031】
再び図1を参照すると、変換ルール辞書管理部2は、変換ルール辞書4の作成およびメンテナンスを司る部分であり、変換ルール登録部21および適用順位決定部22を含んで構成される。
【0032】
適用順位決定部22は、変換ルール登録部21から変換ルールを受け取り、その変換ルールの適用順位の優先度の値を決定し、結果を変換ルール登録部21に返却する。優先度は、コンディションの強さによって決定する。条件が緩い一般的な変換ルールより、条件が厳しい特定の文に有効な変換ルールを先に適用できるようにするためである。コンディションの強さは、ノード数、属性条件数などの数による。ただし、単に足し合わせるのではなく、それぞれに重み付けを行う。例えば、スペルは品詞や意味属性などに比べると、より具体的にノードを特定していて、条件としては厳しいものなので、より高く評価する。具体的には、適用順位決定部22は、優先度の値を、変換ルールのコンディション木4041およびコンディション属性4042から、以下のような計算式で求める。
【0033】
優先度の値=ノード数*3+スペル属性数*5+その他属性数 …(1)
ここで、スペル属性数とは、属性条件の中で、属性名がスペルであるものの数である。スペルに他より大きな重みを持たせるのは、意味分類などの他の属性に比べて、強くノードを限定する条件であり、コンディションとしてはより厳しい(マッチしずらい)条件と考えられるためである。なお、式(1)中の「3」、「5」は重み係数であるが、これらの値に限定されないことは勿論のことである。
【0034】
変換ルール登録部21は、編集作業者に対して変換ルール辞書4の管理機能を提供する。変換ルール辞書4に新規に変換ルールを登録する場合や既存の変換ルールを修正する場合は、適用順位決定部22によって計算された優先度の値を新規登録する変換ルールや修正後の変換ルールに設定し、同じキーを持つ複数の変換ルールが優先度順に並ぶように変換ルール辞書に登録する。
【0035】
変換ルール登録部21の処理の一例を図5に示す。変換ルール登録部21は、編集作業者が利用者入出力装置6のキーボード等の入力装置6aからキー(原語スペル)が入力されると(ステップS1)、そのキーと同じ文字列のキー401を持つ全変換ルールを変換ルール辞書4から検索し、内部の編集用メモリに格納すると共に利用者入出力装置6の表示装置6bの編集画面に表示する(ステップS2)。このとき表示される変換ルールを以下、既登録変換ルールと呼ぶことにする。なお、変換ルール辞書4に1つも変換ルールが登録されていない初期の状態では、既登録変換ルールは存在しない。次に、編集作業者が入力装置6aから入力する編集の種類を示す指示を解釈し(ステップS3)、新規変換ルールの登録、既登録変換ルールの修正、既登録変換ルールの削除の何れかの処理に分岐する。
【0036】
(1)新規登録
変換ルールの新規登録の場合、変換ルール登録部21は、編集作業者に、既に作成済みの新規変換ルールを入力装置6aから入力させるか、あるいは、編集画面上で新規変換ルールを作成させる(ステップS4)。入力あるいは作成される新規変換ルールは、図2に示したものと同じ構成であるが、優先度403の値はNULLになっている。次に変換ルール登録部21は、この新規変換ルールを適用順位決定部22に渡し、その新規変換ルールの適用順位の優先度の値を計算させる(ステップS5)。適用順位決定部22が例えば前述した式(1)によって優先度の値を計算し、その値を返却してくると、変換ルール登録部21は、新規変換ルールの優先度403にその値を設定し編集用メモリに格納する(ステップS6)。変換ルール登録部21は、新規に登録する変換ルールが他に存在するかどうかを表示装置6bにて編集作業者に問い合わせ、他の新規変換ルールが存在する場合(ステップS7でNO)、ステップS4の処理に戻り、前述した処理と同様の処理を繰り返す。
【0037】
新規登録する変換ルールが終了した場合(ステップS7でYES)、変換ルール登録部21は、優先度の値を設定した全ての新規登録変換ルールとステップS2で変換ルール辞書4から検索した同一キーを持つ全ての既登録変換ルールとを、編集用メモリ上で、それらの優先度の値の昇順にソートする(ステップS8)。そして、ソート後の変換ルール群を変換ルール辞書4に格納する(ステップS9)。つまり、ステップS2で検索した変換ルール辞書4中の元の既登録変換ルール群をソート後の変換ルール群で置き換える。
【0038】
(2)既登録変換ルールの修正
既登録変換ルールの修正の場合、変換ルール登録部21は、編集作業者に、編集画面上で修正対象とする1つの変換ルールを選択させて、そのコンディション部404やアクション部405などの内容を編集画面上で修正させる(ステップS10)。次に変換ルール登録部21は、この修正後の変換ルールを適用順位決定部22に渡し、その修正後の変換ルールの適用順位の優先度の値を再計算させる(ステップS11)。適用順位決定部22が例えば前述した式(1)によって優先度の値を再計算し、その値を返却してくると、変換ルール登録部21は、修正後の変換ルールの優先度403の値を編集画面および編集用メモリ上で、返却された値に置き換える(ステップS12)。変換ルール登録部21は、修正する変換ルールが未だ残っているかどうかを表示装置6bにて編集作業者に問い合わせ、他に修正する変換ルールが存在する場合(ステップS13でNO)、ステップS10の処理に戻り、前述した処理と同様の処理を繰り返す。
【0039】
修正する変換ルールが終了した場合(ステップS13でYES)、変換ルール登録部21は、編集画面上の全変換ルール(優先度の値が再計算された修正後の全ての変換ルールと修正されていない他の変換ルール)を、編集用メモリ上で、それらの優先度の値の昇順にソートし(ステップS8)、ソート後の変換ルール群で変換ルール辞書4中の元の既登録変換ルール群を置き換える(ステップS9)。
【0040】
(3)既登録変換ルールの削除
既登録変換ルールの削除の場合、変換ルール登録部21は、編集作業者に、編集画面上で削除対象とする1つの変換ルールを選択させて、その変換ルールを編集画面および編集用メモリ上で削除させる(ステップS14)。次に変換ルール登録部21は、削除する変換ルールが未だ残っているかどうかを表示装置6bにて編集作業者に問い合わせ、他に削除する変換ルールが存在する場合(ステップS15でNO)、ステップS14の処理に戻り、前述した処理と同様の処理を繰り返す。削除する変換ルールがそれ以上存在しない場合(ステップS15でYES)、変換ルール登録部21は、編集画面(編集用メモリ)上に残っている全変換ルールで変換ルール辞書4中の元の既登録変換ルール群を置き換える(ステップS9)。
【0041】
このように変換ルール登録部21の役割は、各キーに対する一連の変換ルールを、常に、優先度(条件の厳しさ)でソートして変換ルール辞書4に格納することである。
【0042】
再び図1を参照すると、記憶装置3は、原文記憶部31、解析木記憶部32、訳文木記憶部33および訳文記憶部34を備え、機械翻訳部1は、入力部11、原文解析部12、変換部13、訳文生成部14および出力部15を含んで構成されている。以下、機械翻訳部1の各部の機能をその動作とあわせて説明する。
【0043】
先ず、入力部11は、キーボードやファイル等から原文7を入力し、原文記憶部31に記憶する。原文解析部12は、原文記憶部31から原文を入力し、翻訳用単語辞書5に格納されている原語構文属性情報や意味属性情報を利用して、原文の構文解析および意味解析を行い、原文の中間表現である解析木を生成し、解析木記憶部32に記憶する。
【0044】
次に、変換部13は、解析木記憶部32から解析木を入力し、その解析木に対して変換ルール辞書4の変換ルール群を適用し、訳文の中間表現である訳文木を生成して、訳文木記憶部33に記憶する。具体的には以下のような処理を行う。
【0045】
変換部13は、解析木のすべてのノードを順番にトラバースし、各ノードにおいて、そのノードの原語スペルをキーとして変換ルール辞書4を引き、その変換ルールのコンディションとマッチングをとる。変換ルール辞書4から引いた変換ルールが複数存在する場合、複数の変換ルールが同時にマッチする可能性があり、その場合には変換ルール中の優先度403がより上位の変換ルールを適用する。これは、前述したように変換ルール辞書4中において同じキー401を持つ複数の変換ルールは優先度403で昇順にソートされており、ロードされた変換ルール群も優先度に従ってソートされているため、そのまま、上から適用していくだけでよい。
【0046】
そして、適用する変換ルールのコンディション木4041、コンディション属性4042を参照して、実際の解析木のノードをコンディション木4041の各ノードにバインドしていき、すべてのノードがバインドできたら、バインドされた解析木のノードに対して当該変換ルールのアクション部405で記述されたアクションを実行する。実行されるアクションは、各ノードに対する属性の付与(訳語指示情報付与など)や、より自然な訳文を作成するための構造変形などである。この際、アクションにおいて、どのノードにどういう属性を設定したかを1解析木の処理に渡って記憶しておく。コンディションがマッチした場合でも、すでに別の変換ルールによって、設定された属性に対して、異なる属性値を設定しようとしているルールは競合ルールなので適用しないようにする。このために、あらかじめ、解析木の各ノードに固有のノードIDを付与する。変換ルールのアクションで属性を設定した際、「ノードID:属性:属性値」という情報を保存する。ノードIDは、属性を設定したノードのノードIDである。コンディション部のノードの解析木へのバインドが成功した時点で、アクション属性のノード名をノードIDに置き換えて、保持されたデータと比較することによって矛盾があるかどうかチェックすることができる。
【0047】
次に訳文生成部14は、訳文木記憶部33から訳文木を入力し、翻訳用単語辞書5に記憶された訳語構文属性情報や意味属性情報を利用して、訳文木から訳文を生成し、訳文記憶部34に記憶する。変換部13によって訳文木のノードに付与された訳語指示情報付与による実際の訳語選択も、この訳文生成部14で行われる。
【0048】
最後に、出力部15は、訳文記憶部34から訳文を入力し、表示装置やプリンタ、ファイルなどに訳文8として出力する。
【0049】
このように本実施の形態にかかる機械翻訳装置は、変換ルール辞書4に新規に登録する変換ルールの適用順位の優先度および既登録変換ルールを修正した場合の修正後変換ルールの適用順位の優先度が、適用順位決定部22によって自動的に決定され、変換ルール登録部21によって、新規変換ルールおよび修正後の変換ルールが、同じキーを持つ複数の変換ルールが優先度順に並ぶように変換ルール辞書4に格納されるため、編集作業者自身が、互いに競合する変換ルールの適用順位の調整を行う必要がなくなる。
【0050】
図6を参照すると、本発明の第2の実施の形態にかかる機械翻訳装置は、適用順位決定部91を有するルール作成装置9を備える点で、図1に示した第1の実施の形態と相違する。
【0051】
適用順位決定部91は、変換ルール辞書管理部2に備わる適用順位決定部22と同様の機能を有し、例えば前述した式(1)を使用して、変換ルールの適用順位の優先度を計算する。ルール作成装置9は、ルール作成者が変換ルールを作成する際に使用する装置で、テキストエディタや特許文献2に示されるようなルール生成装置で構成される。このルール作成装置9で作成される変換ルールは、図2に示したものと同じ構成であり、優先度403の値は適用順位決定部91によって計算された値が設定される。
【0052】
変換ルール辞書管理部2の変換ルール登録部21は、新規ルールの登録に際して、優先度設定済みの新規変換ルールの登録が入力装置6aから指示され、ルール作成装置9で作成された同じキーを持つ1以上の新規ルールが入力された場合、適用順位決定部22を用いた優先度の決定工程を省略し、入力された優先度設定済みの新規ルールと、それと同じキーを持つ変換ルール辞書4中の既登録変換ルールとを優先度順にソートして、変換ルール辞書4に書き戻す。
【0053】
なお、本発明の別の実施の形態として、図6の変換ルール辞書管理部2における適用順位決定部22を省略した実施の形態も考えられる。但し、その場合には既登録変換ルールを修正したときの修正後の変換ルールの優先度の計算は自動的に行えないため、人手で実施するか、ルールの修正を行わないかの何れかとなる。
【0054】
以上本発明の実施の形態について説明したが、本発明は以上の実施の形態にのみ限定されず、その他各種の付加変更が可能である。また、本発明の機械翻訳装置は、その有する機能をハードウェア的に実現することは勿論、コンピュータとプログラムとで実現することができる。プログラムは、磁気ディスクや半導体メモリ等のコンピュータ可読記録媒体に記録されて提供され、コンピュータの立ち上げ時などにコンピュータに読み取られ、そのコンピュータの動作を制御することにより、そのコンピュータを前述した各実施の形態における機械翻訳部1の各機能手段11〜15、変換ルール辞書管理部2の各機能手段21、22として機能させる。機械翻訳部1と変換ルール辞書管理部2とを別々のコンピュータとプログラムで実現することも可能である。
【0055】
【発明の効果】
第1の効果は、変換ルールの登録や修正時における編集作業者の工数が削減されることである。その理由は、変換ルールの適用順位が自動的に決定されるため、挿入位置などを気にする必要がないためである。
【0056】
第2の効果は、分散開発された変換ルールを統合する工数が削減することである。その理由は、変換ルールの適用順位が自動的に決定されるため、新規ルールどうしの適用順位を指定する必要がないためである。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態のブロック図である。
【図2】変換ルールの構成例を示す図である。
【図3】変換ルールのコンディション部およびアクション部の説明図である。
【図4】変換ルール辞書の格納形式の一例を示す図である。
【図5】変換ルール登録部の処理例を示すフローチャートである。
【図6】本発明の第2の実施の形態のブロック図である。
【符号の説明】
1…機械翻訳部
2…変換ルール辞書管理部
3…記憶装置
4…変換ルール辞書
5…翻訳用単語辞書
6…利用者入出力装置
7…原文
8…訳文
9…ルール作成装置
Claims (9)
- 原文を構文解析して原文中間表現の解析木を出力する原文解析手段と、前記解析木を訳文中間表現の訳文木に変換するための変換ルール群であって、個々の変換ルールは、変換前部分木構造を含むコンディション部と、変換後部分木構造を含むアクション部と、前記コンディション部の内容から計算された適用順位の優先度と、当該変換ルールを検索する際のインデックスになるキーとを含み、同じキーを持つ複数の変換ルールは前記優先度順に並べられている変換ルール群を記憶する変換ルール辞書と、前記解析木の構造に前記変換ルール群を適用することにより訳文中間表現の訳文木を生成する変換手段であって、適用可能な変換ルールが複数存在する場合にはより優先度の高い変換ルールを適用する変換手段と、前記訳文中間表現の訳文木から訳文を生成する訳文生成手段と、追加登録する変換ルールのコンディション部からその変換ルールの適用順位の優先度を計算する適用順位決定手段と、該適用順位決定手段で計算された優先度が設定された変換ルールを、同じキーを持つ複数の変換ルールが前記優先度順に並ぶように前記変換ルール辞書に登録する変換ルール登録手段とを備える機械翻訳装置。
- 前記変換ルール登録手段は、前記変換ルール辞書に登録された変換ルールが修正された場合、修正後の変換ルールの適用順位の優先度を前記適用順位決定手段によって再計算して修正後の変換ルールに設定し、前記変換ルール辞書中の修正後の変換ルール及び該修正後の変換ルールと同じキーを持つ他の既登録の変換ルールが前記優先度順に並ぶように並べ替えを行うものである請求項1記載の機械翻訳装置。
- 前記適用順位決定手段は、変換ルールのコンディション部の内容を解析し、適用条件がより厳しい変換ルールほど、より高い優先度を割り当てるものである請求項1または2記載の機械翻訳装置。
- 前記適用順位決定手段は、変換ルールのコンディション部に含まれる変換前部分木構造のノード数をパラメータに持つ優先度計算式により優先度を計算するものである請求項3記載の機械翻訳装置。
- 前記適用順位決定手段は、変換ルールのコンディション部に含まれる変換前部分木構造のノード数および各ノードの属性条件の数をパラメータに持つ優先度計算式により優先度を計算するものである請求項3記載の機械翻訳装置。
- トランスファ方式の機械翻訳装置の変換工程で使用される変換ルール群であって、個々の変換ルールは、変換前部分木構造を含むコンディション部と、変換後部分木構造を含むアクション部と、前記コンディション部の内容から計算された適用順位の優先度と、当該変換ルールを検索する際のインデックスになるキーとを含み、同じキーを持つ複数の変換ルールは前記優先度順に並べられている変換ルール群を記憶する変換ルール辞書を管理する装置において、追加登録する変換ルールのコンディション部からその変換ルールの適用順位の優先度を計算する適用順位決定手段と、該適用順位決定手段で計算された優先度が設定された変換ルールを、同じキーを持つ複数の変換ルールが前記優先度順に並ぶように前記変換ルール辞書に登録する変換ルール登録手段とを備える変換ルール辞書管理装置。
- 前記変換ルール登録手段は、前記変換ルール辞書に登録された変換ルールが修正された場合、修正後の変換ルールの適用順位の優先度を前記適用順位決定手段によって再計算して修正後の変換ルールに設定し、前記変換ルール辞書中の修正後の変換ルール及び該修正後の変換ルールと同じキーを持つ他の既登録の変換ルールが前記優先度順に並ぶように並べ替えを行うものである請求項6記載の変換ルール辞書管理装置。
- コンピュータを、請求項1に記載する、原文解析手段、変換手段、訳文生成手段、適用順位決定手段、および変換ルール登録手段として機能させるプログラム。
- コンピュータを、請求項6に記載する、適用順位決定手段および変換ルール登録手段として機能させるプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003152155A JP2004355322A (ja) | 2003-05-29 | 2003-05-29 | 機械翻訳装置、変換ルール辞書管理装置およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003152155A JP2004355322A (ja) | 2003-05-29 | 2003-05-29 | 機械翻訳装置、変換ルール辞書管理装置およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004355322A true JP2004355322A (ja) | 2004-12-16 |
Family
ID=34047447
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003152155A Pending JP2004355322A (ja) | 2003-05-29 | 2003-05-29 | 機械翻訳装置、変換ルール辞書管理装置およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004355322A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008108209A (ja) * | 2006-10-27 | 2008-05-08 | Internatl Business Mach Corp <Ibm> | 機械翻訳の精度を向上させる技術 |
-
2003
- 2003-05-29 JP JP2003152155A patent/JP2004355322A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008108209A (ja) * | 2006-10-27 | 2008-05-08 | Internatl Business Mach Corp <Ibm> | 機械翻訳の精度を向上させる技術 |
US8126698B2 (en) | 2006-10-27 | 2012-02-28 | International Business Machines Corporation | Technique for improving accuracy of machine translation |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | A transition-based algorithm for AMR parsing | |
US5495413A (en) | Translation machine having a function of deriving two or more syntaxes from one original sentence and giving precedence to a selected one of the syntaxes | |
US8468446B2 (en) | Dynamic method for generating XML documents from a database | |
US11138005B2 (en) | Methods and systems for automatically generating documentation for software | |
US7630892B2 (en) | Method and apparatus for transducer-based text normalization and inverse text normalization | |
JP2009521026A (ja) | 探索および置換入力の派生を活用する探索および置換機能でテキストを編集するための方法およびシステム | |
KR20100038378A (ko) | 지능적인 텍스트 주석을 위한 방법, 시스템 및 컴퓨터 프로그램 | |
JPH0830620A (ja) | 構造検索装置 | |
JP2009545077A (ja) | 利用可能なソースデータ及びローカライゼーションの再利用 | |
US11537797B2 (en) | Hierarchical entity recognition and semantic modeling framework for information extraction | |
JP2017199363A (ja) | 機械翻訳装置及び機械翻訳のためのコンピュータプログラム | |
JP3372532B2 (ja) | 感情情報抽出方法および感情情報抽出プログラムの計算機読み取り可能な記録媒体 | |
EP1783628A1 (en) | Document processing method and device | |
KR20210099661A (ko) | 주석이 달린 자연어 구문들을 생성하는 방법 및 장치 | |
JP2005173999A (ja) | 電子ファイル検索装置、電子ファイル検索システム、電子ファイル検索方法、プログラムおよび記録媒体 | |
JP2004355322A (ja) | 機械翻訳装置、変換ルール辞書管理装置およびプログラム | |
JP2019133534A (ja) | 併合方法、併合装置、および併合プログラム | |
JP3898615B2 (ja) | 短縮語作成支援装置および短縮語作成支援プログラム | |
JP2020115246A (ja) | 生成装置、ソフトウェアロボットシステム、生成方法及び生成プログラム | |
JPH05135054A (ja) | 文書処理方法 | |
WO2015030016A1 (ja) | 非構造化データ処理システム、非構造化データ処理方法および記録媒体 | |
JP5160120B2 (ja) | 情報検索装置、情報検索方法及び情報検索プログラム | |
JP2001134596A (ja) | 構造化文書管理装置および構造化文書検索方法 | |
JP3804243B2 (ja) | 構造化文書処理装置、構造化文書処理方法及び構造化文書処理プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
Krivochen | Fundamentals of Graph-Theoretic Syntax |