(57)【要約】【課題】ソース言語からターゲット言語への翻訳を行う際に、ソース言語およびターゲット言語内部の単語関係の知識を利用して、自然な訳を出力できるようにする。【解決手段】ソース言語の単語ごとに、見出し語と、文法上の属性と、意味上の属性と、訳語生成規則とを登録した対訳辞書２１と、ソース言語の単語ごとに、見出し語と、文法上の属性と、意味上の属性と、存在する場合の関連語を記述したソース言語辞書２０と、ターゲット言語の単語ごとに、見出し語と、文法上の属性と意味上の属性と、存在する場合の関連語を記述したターゲット言語辞書２２とを備える。このため、ソース言語およびターゲット言語の内部の単語関係の知識を利用して、自然な訳語を出力することができる。【選択図】        図１
2005031922.tif 000002
【特許請求の範囲】
【請求項１】
ソース言語の単語ごとに、見出し語と、文法上の属性と、意味上の属性と、訳語生成規則とを登録した対訳辞書と、
ソース言語の単語ごとに、見出し語と、文法上の属性と、意味上の属性と、存在する場合の関連語を記述したソース言語辞書と、
ターゲット言語の単語ごとに、見出し語と、文法上の属性と、意味上の属性と、存在する場合の関連語を記述したターゲット言語辞書と、
ソース言語の文法を記述する複数の文法規則と、各文法規則に対応して生成されるソース言語の構造を表現する木構造をターゲット言語の構造を表現する木構造に変換する変形規則とを記憶した文法・構文変換データベースと、
ターゲット言語の文法に基づいて、ターゲット言語の訳語の前後に付加されるターゲット言語の文字列の生成方法を規定する前・後置詞生成データベースと、
入力された文章を前記対訳辞書と前記ソース言語辞書とを照合して基本翻訳単位として分割し、前記対訳辞書と前記ソース言語辞書とを参照して前処理を行う前処理部と、
前記前処理部により基本翻訳単位の列に分解された文章を基本翻訳単位ごとに受け取り、前記対訳辞書と前記ソース言語辞書とを照合して形態素に分解し、辞書にある情報を単語に付加する形態素解析部と、
前記形態素解析部によって分解された形態素に付加された情報と、前記文法データベースとを参照して構文木の生成を試み、ひとつあるいは複数の構文木を生成し、前記生成した構文木が複数ある場合に、対訳辞書の各品詞細分類と、文法規則の各々に付加された抵抗値と、構文的な妥当性を考慮して最適な構文木を抽出する構文解析部と、
前記文法データベース中の適用された文法規則に付随する変形規則を参照して、ターゲット言語の構文に対応する構文木への変形を行う構文規則付随変形部と、
前記対訳辞書に記述された訳語生成規則と、前記ソース言語辞書と、前記ターゲット言語辞書とを参照して、ターゲット言語の構文に対応する構文木への変形と各ノードへの訳語関連情報の付加を行う対訳辞書付随変形部と、
前記前・後置詞生成データベースを参照して、構文木の各ノードへの訳語関連情報の付加を行う前・後置詞付加変形部と、
前記前・後置詞付加変形部によって生成された構文木と、その各ノードに付加された訳語関連情報に基づき、訳語を生成する訳語生成部と
ソース言語を前記前処理部に入力するとともに、翻訳結果のターゲット言語を表示するインタフェース部と
を有することを特徴とする機械翻訳装置。
【請求項２】
前記対訳辞書は、見出し語に対応するノードを基準に、ノードに対応する単語、あるいはそのノードの構文上あるいは意味上の属性を参照できるようにしたことを特徴とする請求項１に記載の機械翻訳装置。
【請求項３】
ソース言語辞書およびターゲット言語辞書中に関連語を記述し、辞書を参照する際に、当該単語に関連する単語の情報を必要に応じて出力することを特徴とする請求項１に記載の機械翻訳装置。
【請求項４】
前記関連語としては異綴語である請求項３に記載の機械翻訳装置。
【請求項５】
前記関連語は同義語であることを特徴とする請求項３に記載の機械翻訳装置。
【請求項６】
前記関連語は類似語であることを特徴とする請求項３に記載の機械翻訳装置。
【請求項７】
前記関連語は活用語であることを特徴とする請求項３に記載の機械翻訳装置。
【請求項８】
前記関連語は当該単語の品詞を変換した単語であることを特徴とする請求項３に記載の機械翻訳装置。
【請求項９】
前記対訳辞書は、２語以上の単語から成りまとまりとして特定の意味を持つ複合語を登録する際に、この複合語の構文的構造を記述できる機能を有することを特徴とする請求項１に記載の機械翻訳装置。
【請求項１０】
前記対訳辞書は、２語以上の単語から成りまとまりとして特定の意味を持つ複合語を登録する際に、単語が集まって構成される句を登録できる機能を有することを特徴とする請求項１に記載の機械翻訳装置。
【請求項１１】
前記対訳辞書は、２語以上の単語から成りまとまりとして特定の意味を持つ複合語を登録する際に、ある単語を起点として想定される構文木に部分的にマッチするひとつあるいは複数のノードのみを記述して、実際に生成された構文木と照合し、マッチしないノードに関しては、対応する単語の項目に書かれている訳語を使用する機能を有することを特徴とする請求項１に記載の機械翻訳装置。
【請求項１２】
複数の対訳辞書を用いる場合、辞書に付加されている優先度の設定に検索停止の属性を付加し、その辞書に登録されている単語あるいは句に関しては、その辞書よりも優先度の低い辞書に関しては照合を行わないようにしたことを特徴とする請求項１に記載の機械翻訳装置。
【請求項１３】
複数の対訳辞書を用いる場合、任意の辞書の任意の単語に関して、登録されている単語あるいは句に、検索停止の属性を付加し、その単語に関しては、その辞書よりも優先度の低い辞書に関しては照合を行わないようにしたことを特徴とする請求項１に記載の機械翻訳装置。
【請求項１４】
２語以上の単語から成りまとまりとして特定の意味を持つ複合語に対して、分解不可能の属性を付加し、その単語に関しては、その単語を構成する単語を個別に辞書引きした結果を無視するようにしたことを特徴とする請求項１に記載の機械翻訳装置。
【請求項１５】
前記前・後置詞生成データベースに、ユーザが自由に助動詞、助詞、時制などの翻訳の仕方をカスタマイズできる機能を有することを特徴とする請求項１に記載の機械翻訳装置。
【請求項１６】
前記前処理部に、前記対訳辞書と、前記ソース言語辞書を参照することにより、スペルチェックを行い、自動的に誤りを訂正してから翻訳処理を行う機能を有することを特徴とする請求項１に記載の機械翻訳装置。
【請求項１７】
前記変形部に、前記対訳辞書に登録された訳語生成規則に基づいて前記ターゲット言語辞書を参照して訳語情報を付加する際に、訳語の品詞変換を行う機能を有することを特徴とする請求項１に記載の機械翻訳装置。
【請求項１８】
前記変形部で、前記対訳辞書に登録された訳語生成規則に基づいて前記ターゲット言語辞書を参照して訳語情報を付加する際に、訳語生成規則を適用する条件を直接満たすことができない規則に対して、前記ソース言語に記述された関連単語の情報を参照して条件に記述された単語の異綴語あるいは同義語がないかを調べ、これがある場合には、訳語生成規則を適用するようにしたことを特徴とする請求項１に記載の機械翻訳装置。
【請求項１９】
前記変形部で、前記対訳辞書に登録された訳語生成規則に基づいて前記ターゲット言語辞書を参照して訳語情報を付加する際に、ノードに付加される訳語の情報を、前置詞と、後置詞と、接頭辞と、接尾辞とに分割して記憶するようにしたことを特徴とする請求項１に記載の機械翻訳装置。
【請求項２０】
前記ユーザインタフェース部が提供する訳語の選択を行う機能において、前記ターゲット言語辞書を参照して、訳語に対して、その関連語を分類して表示して利用者が選択可能にする機能を有するようにしたことを特徴とする請求項１に記載の機械翻訳装置。
【請求項２１】
前記ユーザインタフェース部が提供する対訳辞書へ単語情報を登録する機能において、複合語を登録する場合、登録単語の構文解析を行い、その複合語の構文的構造を把握し、その構文構造とともに辞書に登録する機能を有するようにしたことを特徴とする請求項１に記載の機械翻訳装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ある言語（ソース言語）で記載された文章を他の言語（ターゲット言語）に自動的に翻訳する機械翻訳装置に係り、特に、ソース言語内部の単語間の関係と、ターゲット言語内部の単語間の関係とを利用して、合理的な自動翻訳を行う機械翻訳装置に関する。
【０００２】
【従来の技術】
インターネットの発展に伴い、国境を超えた情報のやりとりが爆発的に増大した。しかし、情報をやりとりする際の「言語の壁」は依然として残っており、新たな情報格差の原因ともなっている。この「言語の壁」を取り払うための研究は既に数十年にわたって行われて来ており、パソコン用の機械翻訳ソフトウェアも数多く販売されている。
【０００３】
しかし、従来の機械翻訳ソフトウェアは、文章の意味を大まかに理解するためのツール、あるいは単に高速に辞書を引きソース言語の単語をターゲット言語の単語に置き換えてくれる「高速辞書引きツール」として利用されるのがほとんどであり、読みやすく理解しやすい翻訳を出力して、最終的に質の高い翻訳物を生産する翻訳作業のうちのごく一部を支援するにとどまっている。このため、機械翻訳ソフトウェアの利用は一部にとどまり、広く普及するには至っていない。
【０００４】
一般に、翻訳ソフトウェアは、翻訳対象の言語（以降、「ソース言語」と呼ぶ）で書かれた文書を別の言語（以降、「ターゲット言語」と呼ぶ）に変換する。翻訳ソフトウェアは、一般的には、ソース言語の単語に対応するターゲット言語の単語（訳語）を主な情報として記憶した「辞書」と、ソース言語およびターゲット言語の構文的な特徴（一群の単語列が句、文、段落などの認識の単位として認められるための条件）を示す「文法データベース」と、上記「辞書」と「文法データベース」を参照しつつ各種の処理を行い翻訳を行う「プログラム」とから構成される。
【０００５】
従来の機械翻訳装置は、入力部と、前処理部と、形態素解析部と、構文解析部と、変形部と、生成部と、出力部とを備えている。また、機械翻訳装置は、対訳辞書と、文法データベースとを有している。
【０００６】
対訳辞書には各単語のつづり、品詞（名詞、動詞、形容詞など）、活用、訳語が記述されている。文法データベースには品詞に関する構文の規則（文法規則）が記述されている。品詞に関する文法規則は、品詞の並びに構文木を対応させる規則である。翻訳装置によっては、個々の規則に対して、後の処理が行いやすいよう、構文木の変形を行う規則（変形規則）が付随しているものもある。
【０００７】
従来の機械翻訳装置によれば、入力部にソース言語の文字列を入力し、前処理部にそのソース言語の文字列を渡す。前処理部は、それを文を単位に分割し、形態素解析部に１文ずつ渡す。形態素解析部は、対訳辞書を参照して、文字列から単語を抽出し、それらの単語の品詞（名詞、動詞、形容詞、副詞など）の情報とともに構文解析部に渡す。構文解析部は、文字列の単語の品詞配列と文法データベースから構文木を得る。なお、得られる構文木はひとつの場合もあるが、一般的には複数であるため、これらの解の中から構文的な特徴および意味的な特徴からみて、もっとも妥当な構文木をひとつあるいは複数選択する。
【０００８】
変形部は、文法データベースに記述された変形規則を参照して、あるいはプログラム内に直接記録された変形規則を用いて、構文木をターゲット言語の構文の表現に相応しい形に変形し、これを生成部に送る。
【０００９】
生成部は、対訳辞書を参照して、構文木の各ノードに対応した訳語を付与して、これを部分ごとに合成することにより訳を生成し、これを出力部を介して出力する。
【００１０】
なお、機械翻訳装置の基本的な仕組みについては、たとえば、以下の非特許文献１に記載されている。
【００１１】
【非特許文献１】
武舎広幸著「パソコン英日翻訳ソフト活用法」、株式会社プレンティスホール出版、１９９４年１２月２０日
【００１２】
【発明が解決しようとする課題】
上述のよう構成される従来の機械翻訳装置においては、対訳辞書のみが設けられ、この対訳辞書には、単語の綴り、訳語、品詞、活用等が記述されており、ソース言語あるいはターゲット言語の単語間の関係は、活用情報（ある単語本来の形式である「原形」であるか、その活用形、たとえば、過去形、過去分詞形、動名詞形など、であるか）を除いて記述されることはなかった。これに対し、人間が翻訳を行う際には、自然で理解しやすい訳文を生成するために、ソース言語やターゲット言語の内部の知識を用いて、より自然な表現を考える操作の比重が高い。この部分の知識を機械翻訳ソフトウェアに投入せずには、高品質の訳を生成することはできない。
【００１３】
このように、従来の機械翻訳装置では、ソース言語およびターゲット言語それぞれの範囲内において、活用以外の単語の関係を利用していなかったため、ターゲット言語において不自然な表現をターゲット言語内の知識を用いた自然な表現に改良することができなかった。
【００１４】
したがって、本発明の目的は、ソース言語およびターゲット言語内部の単語関係の知識を利用して、自然な訳を出力できるようにした機械翻訳装置を提供することにある。
【００１５】
【課題を解決するための手段】
上述の課題を解決するために、本発明の翻訳装置は、ソース言語の単語ごとに、見出し語と、文法上の属性と、意味上の属性と、訳語生成規則とを登録した対訳辞書と、ソース言語の単語ごとに、見出し語と、文法上の属性と、意味上の属性と、存在する場合の関連語を記述したソース言語辞書と、ターゲット言語の単語ごとに、見出し語と、文法上の属性と、意味上の属性と、存在する場合の関連語を記述したターゲット言語辞書と、ソース言語の文法を記述する複数の文法規則と、各文法規則に対応して生成されるソース言語の構造を表現する木構造をターゲット言語の構造を表現する木構造に変換する変形規則とを記憶した文法・構文変換データベースと、ターゲット言語の文法に基づいて、ターゲット言語の訳語の前後に付加されるターゲット言語の文字列の生成方法を規定する前・後置詞生成データベースと、入力された文章を対訳辞書と、ソース言語辞書とを照合して、基本翻訳単位として分割し、対訳辞書と、ソース言語辞書とを参照して前処理を行う前処理部と、前処理部により基本翻訳単位の列に分解された文章を基本翻訳単位ごとに受け取り、対訳辞書と、ソース言語辞書とを照合して形態素に分解し、辞書にある情報を単語に付加する形態素解析部と、形態素解析部によって分解された形態素に付加された情報と、文法データベースとを参照して構文木の生成を試み、ひとつあるいは複数の構文木を生成し、生成した構文木が複数ある場合に、対訳辞書の各品詞細分類と、文法規則の各々に付加された抵抗値と、構文的な妥当性を考慮して最適な構文木を抽出するする構文解析部と、文法データベース中の適用された文法規則に付随する変形規則を参照して、ターゲット言語の構文に対応する構文木への変形を行う構文規則付随変形部と、対訳辞書に記述された訳語生成規則と、ソース言語辞書と、ターゲット言語辞書とを参照して、ターゲット言語の構文に対応する構文木への変形と各ノードへの訳語関連情報の付加を行う対訳辞書付随変形部と、前・後置詞生成データベースを参照して、構文木の各ノードへの訳語関連情報の付加を行う前・後置詞付加変形部と、前・後置詞付加変形部によって生成された構文木と、その各ノードに付加された訳語関連情報に基づき、訳語を生成する訳語生成部と、ソース言語を入力するとともに、翻訳結果のターゲット言語を表示するインタフェース部とを有することを特徴とする。
【００１６】
かかる本発明の機械翻訳装置によれば、ソース言語の単語ごとに、見出し語と、文法上の属性と、意味上の属性と、訳語生成規則とを登録した対訳辞書の他に、ソース言語の単語ごとに、見出し語と、文法上の属性と、意味上の属性と、存在する場合の関連語を記述したソース言語辞書と、ターゲット言語の単語ごとに、見出し語と、文法上の属性と、意味上の属性と、存在する場合の関連語を記述したターゲット言語辞書とが備えられている。これにより、異綴語や同義語に対して、適切な翻訳処理を行うことができる。また、より自然な翻訳文が生成できるとともに、対訳辞書の負担が軽減でき、さらに、辞書のメインテナンスの向上が図れ、多言語化が容易になる。また、ユーザの要求に応じて、翻訳結果を選択することができる。
【００１７】
また、本発明の機械翻訳装置では、対訳辞書は、見出し語に対応するノードを基準に、ノードに対応する単語、あるいはそのノードの構文上あるいは意味上の属性を参照できるようにしている。これにより、見出し語のノードの構文上あるいは意味上の属性を辿りながら、見出し語に関連する語を参照することができる。
【００１８】
また、本発明の機械翻訳装置では、ソース言語辞書およびターゲット言語辞書中に関連語を記述し、辞書を参照する際に、当該単語に関連する単語の情報を必要に応じて出力するようにしている。このような関連語により、見出し語に関連する語を参照しながら、翻訳処理を行うことができる。
【００１９】
また、本発明では、対訳辞書に、２語以上の単語から成りまとまりとして特定の意味を持つ複合語を登録する際に、この複合語の構文的構造を記述できる機能を有する。
【００２０】
また、本発明では、対訳辞書に、２語以上の単語から成りまとまりとして特定の意味を持つ複合語を登録する際に、単語が集まって構成される句を登録できる機能を有する。
【００２１】
このように、複合語を対訳単語辞典に登録する際に、変形規則が記述できる。この変形規則に従って木構造の変換を行って、複合語の翻訳を行うことで、より自然な翻訳を行うことができるようになる。
【００２２】
また、本発明では、対訳辞書に、２語以上の単語から成りまとまりとして特定の意味を持つ複合語を登録する際に、ある単語を起点として想定される構文木に部分的にマッチするひとつあるいは複数のノードのみを記述して、実際に生成された構文木と照合し、マッチしないノードに関しては、対応する単語の項目に書かれている訳語を使用する機能を有する。これにより、複合語を自然な表記で翻訳することができるようになる。
【００２３】
また、本発明では、複数の対訳辞書を用いる場合、辞書に付加されている優先度の設定に検索停止の属性を付加し、その辞書に登録されている単語あるいは句に関しては、その辞書よりも優先度の低い辞書に関しては照合を行わないようにしている。
【００２４】
また、本発明では、複数の対訳辞書を用いる場合、任意の辞書の任意の単語に関して、登録されている単語あるいは句に、検索停止の属性を付加し、その単語に関しては、その辞書よりも優先度の低い辞書に関しては照合を行わないようにしている。これにより、無駄な照合が行われることがなくなる。
【００２５】
また、本発明では、２語以上の単語から成りまとまりとして特定の意味を持つ複合語に対して、分解不可能の属性を付加し、その単語に関しては、その単語を構成する単語を個別に辞書引きした結果を無視するようにしている。これにより、より自然な言語で翻訳を行うことができる。
【００２６】
また、本発明では、前・後置詞生成データベースに、ユーザが自由に助動詞、助詞、時制などの翻訳の仕方をカスタマイズできる機能を有する。これにより、ユーザの嗜好に合わせて、翻訳の仕方がカスタマイズできる。
【００２７】
また、本発明では、前処理部に、対訳辞書と、ソース言語辞書を参照することにより、スペルチェックを行い、自動的に誤りを訂正してから翻訳処理を行うことができる。これにより、スペルミスがあっても、正しい翻訳結果を得ることができる。
【００２８】
また、本発明では、変形部に、対訳辞書に登録された訳語生成規則に基づいてターゲット言語辞書を参照して訳語情報を付加する際に、訳語の品詞変換を行う機能を有する。このような品詞変換を行うことにより、不自然な言い回しがより自然な言い回しに変わり、自然な翻訳結果を得ることができる。
【００２９】
また、本発明では、変形部で、対訳辞書に登録された訳語生成規則に基づいてターゲット言語辞書を参照して訳語情報を付加する際に、訳語生成規則を適用する条件を直接満たすことができない規則に対して、ソース言語に記述された関連単語の情報を参照して条件に記述された単語の異綴語あるいは同義語がないかを調べ、これがある場合には、訳語生成規則を適用するようにしている。これにより、対訳辞書には見出し語がない単語がある場合でも、異綴語あるいは同義語を参照しながら、翻訳を行うことができる。
【００３０】
また、本発明では、変形部で、対訳辞書に登録された訳語生成規則に基づいてターゲット言語辞書を参照して訳語情報を付加する際に、ノードに付加される訳語の情報を、前置詞と、後置詞と、接頭辞と、接尾辞とに分割して記憶するようにしている。これにより、２つに分かれるような言葉も翻訳することができる。
【００３１】
また、本発明では、ユーザインタフェース部が提供する訳語の選択を行う機能において、ターゲット言語辞書を参照して、訳語に対して、その関連語を分類して表示して利用者が選択可能にする機能を有している。これにより、フォーマルな言い回しかどうかによって翻訳を変えたり、表記をユーザの好みに合わせたりすることが簡単に行える。
【００３２】
また、本発明では、ユーザインタフェース部が提供する対訳辞書へ単語情報を登録する機能において、複合語を登録する場合、登録単語の構文解析を行い、その複合語の構文的構造を把握し、その構文構造とともに辞書に登録する機能を有する。これにより、ユーザは、通常の英和辞典のように、複合語を自然な表記で登録することができるようになる。
【００３３】
【発明の実施の形態】
以下、本発明の実施の形態について、以下の順に従って、図面を参照して説明する。
１．全体構成
２．機械翻訳の概要
３．翻訳エンジン部の機能
３−１．前処理部
３−２．形態素解析部
３−２−１．ソース言語辞書
３−２−１−１．ソース言語辞書の品詞定義
３−２−１−２．ソース言語辞書の関連語定義
３−２−３．形態素解析の処理手順
３−２−４．辞書引き手順と自動スペル修正
３−２−５．複数の品詞細分類を持つ単語
３−２−６．形態素解析の出力
３−３．構文解析部
３−３−１．文法・構文変換データベース
３−３−２．構文解析部の処理手順
３−３−２−１．構文解析部の処理手順  −  構文解析に成功する例
３−３−２−２．構文解析部の処理手順  −  構文解析に失敗する例
３−３−３．構文的曖昧さの処理
３−４．構文規則付随変形部
３−４−１．変形の目標  −  格構造による日本語の表現
３−４−２．格構造への変換
３−５．対訳辞書付随変形部
３−５−１．対訳辞書
３−５−１−１．対訳辞書の形式  −  見出し語行と品詞細分類行
３−５−１−２．対訳辞書の形式  −  訳語生成規則行
３−５−１−３．対訳辞書の形式  −  ノードの属性の種類
３−５−１−４．対訳辞書の訳語生成規則の記述範囲
３−５−２．訳語付加変形の詳細
３−５−２−１．訳語付加変形の例  −  基本的な表現の記述
３−５−２−２．訳語付加変形の例  −  イディオムの記述
３−５−２−３．訳語付加変形の例  −  複合語の記述
３−５−２−４．訳語付加変形の例  −  接頭辞と接尾辞の使用例
３−５−２−５．訳語付加変形の例  −  ソース言語辞書の利用
３−５−２−６．訳語付加変形の例  −  ターゲット言語辞書の利用  −  品詞変換
３−５−２−７．訳語付加変形の例  −  ターゲット言語辞書の利用  −  訳語の重複の回避
３−５−２−８．訳語付加変形の例  −  ターゲット言語辞書の利用  −  属性による異綴語および同義語の選択
３−５−２−９．訳語付加変形の例  −  ターゲット言語辞書の利用  −  利用者による属性の追加
３−５−２−１０．訳語付加変形の例  −  広範囲に渡るノードの参照
３−６．訳語付加変形部の処理手順
３−７．前・後置詞付加変形部
３−７−１．前・後置詞生成データベースの形式
３−７−２．前・後置詞生成データベースによる活用語の処理
３−７−３．前・後置詞生成データベースによる非活用語の処理
３−７−４．前・後置詞付加変形部の処理手順
３−８．生成部
３−９．ソース言語辞書、対訳辞書、ターゲット言語辞書の役割分担
３−１０．辞書の分割による多言語翻訳装置への応用
４．インタフェース機能
４−１．関連語による訳語選択肢の階層化
【００３４】
１．全体構成
図１は、本発明に係わる機械翻訳装置の構成とその処理の流れを示している。図１に示すように、本発明に係わる機械翻訳装置は、翻訳エンジン部１とインタフェース部２に大別される。
【００３５】
翻訳エンジン部１は、ある言語（ソース言語）の文字列を受け取り、それを別の言語（ターゲット言語）の文字列に翻訳するものであり、図１に示すように、前処理部１１と、形態素解析部１２と、構文解析部１３と、構文規則付随変形部１５と、対訳辞書付随変形部１６と、前・後置詞付加変形部１７と、生成部１８とを備えている。また、翻訳エンジン部１は、ソース言語辞書２０と、対訳辞書２１と、ターゲット言語辞書２２と、文法・構文変換データベース２３と、前・後置詞生成データベース２４とを備えている。これらの構成要素のうち、  構文規則付随変形部１５、対訳辞書付随変形部１６、前・後置詞付加変形部１７の３つの構成要素は、まとめて変形部１４と呼ぶ場合がある。翻訳前の木構造、木構造の途中結果、変換後の木構造は、メモリ２５に記憶される。
【００３６】
インタフェース部２は、翻訳エンジン部１と、機械翻訳装置の利用者や翻訳装置外部のコンピュータ関連資源との間に位置する。機械翻訳装置の利用者から見た場合、このインタフェース部２が利用者とのすべてのやり取りを行う。インタフェース部２は、図１に示すように、  ユーザインタフェース部３１と、標準入力部３２と、標準出力部３３とを有している。
【００３７】
翻訳エンジン部１は、後に詳述するように、インタフェース部２から送られてきたソース言語に対して翻訳処理を行い、ソース言語をターゲット言語に翻訳する。その翻訳結果は、翻訳エンジン部１の生成部１８から出力され、インタフェース部２のユーザインタフェース部３１に送られる。ユーザインタフェース部３１は、メモリ２５に蓄積された翻訳結果を受け取り、利用者に提示する必要のある部分を標準出力部３３に送って、画面上に表示する。
【００３８】
標準入力部３２は、キーボードやマウス、音声入力装置等であり、標準出力部３３は、表示装置、印刷装置、音声出力装置等である。利用者は、標準入力部３２として設けられたキーボード等により、ソース言語の文字列を入力する。あるいは、音声入力装置を経由して認識されたソース言語の文字列を入力する。あるいは、標準入力部３２として設けられたキーボードやマウスを操作して、ソース言語の文字列が記述されているコンピュータ上のファイル（ローカルファイル４１）や、ローカルエリアネットワーク上のファイル（ＬＡＮファイル４２）や、インターネット４３上のファイルあるいはページ等を取り込む。このソース言語の文字列は、インタフェース部２のユーザインタフェース部３１から、翻訳エンジン部１の前処理部１１に送られる。
【００３９】
インタフェース部２は翻訳エンジン部１と、機械翻訳装置の利用者や翻訳装置外部のコンピュータ関連資源との間に位置し、利用者に情報を提示し、それに対する利用者からの反応に従って、必要な処理を行う。以下でインタフェース部２の各構成要素について説明する。
【００４０】
ユーザインタフェース部３１は既存の機械翻訳装置が提供する以下の機能を含む既存の機械翻訳装置で実現されている機能を公知の手法を用いて実現する。
すなわち、ユーザインタフェース部３１は、利用者が標準入力部３２を介して公知の手法により入力した文字列、あるいは公知の手法により指定した、使用中のコンピュータ上のファイル（ローカルファイル４１）、ローカルエリアネットワーク上のファイル（ＬＡＮファイル４２）、インターネット４３上のファイルあるいはページ等の内容を分析し、翻訳エンジン部１の前処理部１１に送る。一方、翻訳の結果を翻訳エンジン部１の翻訳データ出力部１９から受け取り、メモリあるいはファイルなどの記憶領域に記憶し、利用者に提示する必要のある部分を標準出力部３３に送って画面上に表示する。
【００４１】
標準出力部３３は、コンピュータに接続された表示装置、印刷装置、音声出力装置など、利用者が視覚、聴覚、触覚、あるいはほかの感覚器官を用いて理解できる、本発明に係る機械翻訳装置実現時に利用可能な出力装置からなり、ユーザインタフェース部３１から渡される情報を利用者に伝える役目をする。本発明の標準出力部３３は既存の機械翻訳装置で実現されている以下の機能を含む機能を公知の手法を用いて実現する。
【００４２】
（１）  利用者が標準入力部を用いて指定した、文字列、ローカルファイル４１、ＬＡＮファイル４２、インターネット４３上のウェブページあるいはファイル等の翻訳結果を出力する。
（２）  ソース言語の翻訳基本単位（句、文、段落、ページ、章など）と、その翻訳結果を対応関係がわかるように出力する。
（３）  対訳辞書２１、ソース言語辞書２０、あるいはターゲット言語辞書２２の内容を出力する。
（４）  文法・構文変換データベース２３あるいは前・後置詞生成データベース２４の内容を出力する。
【００４３】
標準入力部３２はキーボード、マウス、音声入力装置など、一般に広く用いられている入力装置を用いて、装置に情報を伝える役目をする。標準入力部３２は、機械翻訳装置の利用者とユーザインタフェース部３１との間に位置し、既存の機械翻訳装置で実現されている以下のような機能を公知の方法を用いて提供する。
【００４４】
・利用者が、指定した次のものをはじめとする情報をユーザインタフェース部３１に伝える。
（１）  利用者が翻訳を希望する文字列。
（２）  利用者が翻訳を対象として希望するローカルファイル４１、ＬＡＮファイル４２、インターネット４３上のウェブページあるいはファイル等を特定するために必要な、ファイル名、インターネットアドレスなどの情報。
（３）  利用者が対訳辞書２１、ソース言語辞書２０、あるいはターゲット言語辞書２２に登録したい情報。
（４）    利用者が文法・構文変換データベース２３あるいは前・後置詞生成データベース２４に登録したい情報。
【００４５】
２．機械翻訳の概要
このように、この発明に係わる機械翻訳装置は、キーボード等により入力されたソース言語の文字列、あるいは、コンピュータ上のローカルファイル、ＬＡＮ上のファイル、インターネット上のファイルやページ等から入力されたある言語（ソース言語）の文字列を、他の言語（ターゲット言語）の文字列に翻訳する処理を行っている。このような機械翻訳の概要について説明する。
【００４６】
翻訳処理は、ソース言語の文字の並びというフラットな１次元的構造から、ターゲット言語の文字の並びという１次元的構造への変換となる。
【００４７】
たとえば、
「  Ｔｈｅｙ  ｈａｔｅ  Ｊｏｈｎ．」
という英文を日本語の文に翻訳する場合を考える。この場合、翻訳装置は、
「  Ｔｈｅｙ  ｈａｔｅ  Ｊｏｈｎ．」
という文字列を入力し、
「  彼らはジョンが嫌いである。」
という文字列に変換する。したがって、翻訳装置は、以下の矢印部分に相当する処理を行うことになる。
【００４８】
2005031922.tif 000003
【００４９】
入力と出力は一次元的な文字列であるが、翻訳を行うためには、ソース言語の文の文法的な構造を分析する必要がある。文の文法的な構造は、通常、木構造という２次元的な構造を介して表現される。
【００５０】
たとえば、上述の「Ｔｈｅｙ  ｈａｔｅ  Ｊｏｈｎ．」という英文の構造を木構造を使って表現すると、図２（Ａ）のような構造となる。このように、文の構造を表現する木構造を「構文木」と呼ぶ。
【００５１】
木構造は、一般に、複数の「ノード」を結んだものである。図２（Ａ）において、「文」「節」「名詞句」「動詞句」などの部分がノードになる。「文」「節」など、そのノードの種類を表す文字列を、ノードの「ラベル」と呼ぶ。
【００５２】
木構造において、一番上のノードのことを木構造の「ルートノード」あるいは単に「ルート」と呼ぶ。図２（Ａ）の木構造のルートノードは「文」ノードである。また、直接接続されている上位ノードを「親ノード」、下位ノードを「子ノード」と呼ぶ。たとえば、図２（Ａ）において、「節」ノードは、「名詞句」ノードと「動詞句」ノードの親ノードであり、逆に「名詞句」も「動詞句」も、「節」ノードの子ノードである。
【００５３】
木構造においては、あるノードが２つ以上の親ノードを持つことはないが、ひとつのノードが複数の子ノードを持つことができる。複数の子を持つ場合、その順序は意味を持つ。子ノードは左から右に順に書く。一番左に書かれる最初の子ノードを「第１子」、２番目の子ノードを「第２子」、などと呼ぶ。たとえば、機械翻訳においては、子ノードの順番は、通常、ソース言語あるいはターゲット言語の単語の出現順を表す。たとえば、ターゲット言語の文字列（つまり訳文）を出力する直前の木構造においては、通常、第１子に対応する訳語が、第２に対応する訳語の前に出力される。
【００５４】
あるノードに注目し、その下にある木構造のことを「部分木」と呼ぶ。そのとき、その部分木の一番上位のノードをその部分木のルートノード（あるいは単にルート）と呼ぶ。たとえば、図２（Ａ）の木構造に対して、図２（Ｂ）は「動詞句」をルートとする部分木となる。なお、木構造全体も、一般的な意味からは「部分」ではないが、ひとつの部分木と見なすことにする。
【００５５】
ノードにはラベルの他に任意個数の属性を付加することができる。これについては以下の例で具体的に説明する。
【００５６】
木構造をコンピュータを使って表現する手法は、機械翻訳装置に限らず数多くのシステムで既に利用されており公知のものとなっている。本発明でも公知の手法を用いる。
【００５７】
図２（Ａ）の構文木は、次のことを表現している。
（１）  この文を構成する単語は「Ｔｈｅｙ」と「ｈａｔｅ」と「Ｊｏｈｎ」と「．」（ピリオド）である。
（２）  単語「Ｔｈｅｙ」の品詞は「代名詞」である。
（３）  単語「ｈａｔｅ」の品詞は「他動詞」である。
（４）  単語「Ｊｏｈｎ」の品詞は「名詞」である。
（５）  単語「．」の品詞は「句点」である。
（６）  （２）の「代名詞」は、単独で「名詞句」を構成する。
（７）  （４）の「名詞」は、単独で「名詞句」を構成する。
（８）  （３）の「他動詞」と（７）の「名詞句」はこの２つで、「動詞句」を構成する。（９）  （６）の「名詞句」と（８）の「動詞句」はこの２つで、「節」を構成する。
（１０）  （９）の「節」と（５）の「句点」はこの２つで、「文」を構成する。
【００５８】
通常の機械翻訳装置はこのような木構造を媒介として、翻訳を行う。つまり、通常の機械翻訳装置の処理は、以下の矢印で示すような変換を行うことになる。
【００５９】
［翻訳装置の処理過程（その１）］
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
ソース言語の文字列  →  木構造  →  ターゲット言語の文字列
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
【００６０】
ここで、入力となる「ソース言語の文字列」を、図３（Ａ）に示すように、単にひとつの仮想的なノードの下に、すべての単語がぶら下がったものと考えれば、ひとつの木構造と見なすこともできる。また、同様に、図３（Ｂ）に示すように、「ターゲット言語の単語の並び」も木構造と考えることもできる。
【００６１】
したがって、機械翻訳装置の翻訳の過程は、以下のような処理を行うものと見ることができる。
［翻訳装置の処理過程（その２）］
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
ソース言語の文字列を表す木構造  →  原文の構文構造を表す木構造  →
ターゲット言語の文字列を表す木構造
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
【００６２】
機械翻訳装置においては、原文の構文構造を表す木構造のほかにも、いくつか中間的な木構造を利用するのが普通であり、どのような木構造を利用するかはシステムによって異なっている。しかし、いずれにしろ、一般的に機械翻訳装置による翻訳の過程を考えると、以下のような処理を行うものと見なすことができる。
2005031922.tif 000004
【００６３】
上述の処理において、「ソース言語の文字列」をＴ０、「ターゲット言語の文字列」をＴｎとして、この途中に生成される木構造をＴ１、Ｔ２、．．．、Ｔｎ−１と表記することにすると、Ｔ０→Ｔ１→Ｔ２→．．．→Ｔｎと変形していく過程が、機械翻訳装置の処理過程であると言える。
【００６４】
なお、実際には、自然言語の文には曖昧さがあるため、ソース言語の文を解析して得られる木構造はひとつだけではないため、何らかの方法で一般には複数得られる構文木の中から最も確からしい解釈を表現する構文木を選択する必要がある。ここでは、説明をわかりやすくするために、構文的な選択肢からもっとも確からしい木構造を選択する過程については別に説明することにして、その説明部分を除いては、便宜上ひとつの解（木構造）が選択されて、処理されるものとする。
【００６５】
また、本翻訳装置において、「木構造の変形」と言う言葉で、一般的な意味における変形、すなわち、ノードの接続関係の変化だけでなく、ノードへの何らかの情報（たとえば、品詞、訳語、意味的な属性など）の付加や情報の削除も「変形」と表現することにする。
【００６６】
木構造は２次元的な表現であるため、これを素直に表現するには２次元的な図を描く必要がある。しかし、２次元的な図をコンピュータを用いて処理するのは困難であるため、何らかの方法を使って１次元的に（文字列を用いて）木構造を表現する必要がある。このための手法はいくつか提案されているが、本発明に係る機械翻訳装置においては、鍵括弧（［．．．］）を使った表記法を用いる。これを本翻訳装置では「鍵括弧表記」と呼ぶ。これは、プログラミング言語Ｐｒｏｌｏｇなどで用いられている表現と同様のもので、一般に広く用いられているものである。
【００６７】
図２（Ａ）に示した木構造を、鍵括弧表記を用いて表現すると、以下のようになる。
［木構造の鍵括弧表記の例］
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
［文  ［節  ［名詞句  ［代名詞  ［”Ｔｈｅｙ”］］］  ［動詞句  ［他動詞  ［”ｈａｔｅ”］］  ［名詞句  ［名詞［”Ｊｏｈｎ”］］］］  ［句点  ［”．”］］］］
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
【００６８】
鍵括弧表記は、以下のように、同じレベルのノードを並べるように段付け（インデント）をして表記すると、イメージしやすくなる。
［木構造の鍵括弧表記を段付けして表記した例］
2005031922.tif 000005
【００６９】
同じレベルで並んでいるところが木構造上の同じレベルのノードを表す。たとえば、「文」は「節」と「句点」から構成される、「節」は「名詞句」と「動詞句」から構成される、などといったことが図２（Ａ）の木構造による表現と同じように容易に把握できる。
【００７０】
なお、本発明で使用する木構造においては、ソース言語の単語列、すなわち”Ｔｈｅｙ”、”ｈａｔｅ”、”Ｊｏｈｎ”、”．”は、ノードのラベルとは見なさず、これとは別に扱い、その単語の上位に位置するノードに付随する「属性」と考える。鍵括弧表記の場合、属性はそのノード（この場合には品詞を表すノード）と同じ鍵括弧の組の中に並べて表記する。このため、検討中の例文の構造を鍵括弧表記で表現すると下のようになる。
2005031922.tif 000006
【００７１】
また、木構造においてノードの属性を表現する場合は、図４のように、その属性が属するノードから波線を出して表すことにする。図４は、上の鍵括弧表現を図示したものである。
【００７２】
単語を独立したノードではなく、ノードの属性として表現するのは、ソース言語の構造を解析する構文解析部においては、ソース言語の単語の文字列はまったく参照せずに、その単語の属する品詞（より具体的には、品詞を細かく分類した「品詞細分類」）のみを頼りに解析を行うためである。ソース言語の単語を構成する文字列が何であるかが問題ではなく、その品詞が何であるかによって、構文木が決定するのである。このため、ソース言語の単語を独立したノードとは扱わずに、付加的な情報として扱う。これは、出力されるターゲット言語の単語文字列についても同様である。本翻訳装置では、ソース言語の単語を「”」の組で囲み、ターゲット言語の単語を「｛」と「｝」で囲んで表記する。
【００７３】
また、これまでは、文法的なカテゴリを「文」「節」「名詞句」などのように、日本語を用いて表記したが、以降においては、本翻訳装置で内部的に用いている記号（英語あるいは、その省略形）を用いる。
【００７４】
３．翻訳エンジン部の機能
次に、本発明が適用された機械翻訳装置の各部について説明する。図１に示したように、翻訳エンジン部１は、前処理部１１と、形態素解析部１２と、構文解析部１３と、構文規則付随変形部１５と、対訳辞書付随変形部１６と、前・後置詞付加変形部１７と、生成部１８とを備えている。また、翻訳エンジン部１は、ソース言語辞書２０と、対訳辞書２１と、ターゲット言語辞書２２と、文法・構文変換データベース２３と、前・後置詞生成データベース２４とを備えている。
【００７５】
翻訳エンジン部１は、基本的には、上述の機械翻訳の概要で説明したようにして、ソース言語の文字列からターゲット言語の文字列への翻訳を行う。
【００７６】
以下、この翻訳エンジン部１の各構成要素の役割とその処理内容を例を用いて説明する。以下の例においては、ソース言語が英語、ターゲット言語が日本語のシステム、すなわち英語を日本語に翻訳するシステムを例としているが、本翻訳装置の構成は、任意のソース言語から別の任意のターゲット言語への翻訳に用いることができる。
【００７７】
翻訳エンジン部の入力として［リスト１］に示す文字列が与えられたものとする。なお、［リスト１］において、先頭にある番号およびそれに続く空白は、実際の入力にはなく、説明のため参照用に付加したものである。また、このリストにおいて「↓」は改行文字を表す。このリストでは１０行（空白行１行を含む）に書かれているが、入力として渡される文字列は、３つの改行文字を含むだけで、たとえば、１行目のＩｍｐｏｒｔａｎｔから４行目のｃｏｏｋｉｅｓ．までの間に改行文字はないものとする。つまり、この入力例は２つの段落（パラグラフ）から構成されている。
【００７８】
2005031922.tif 000007
【００７９】
本発明に係る翻訳エンジンでは、リスト１のソース言語文字列を入力すると、リスト２のようなターゲット言語文字列が出力される。
［リスト２］
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
翻訳エンジンの出力例
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
簡単には解消できない依存関係があるため、その互換性が制限される。この問題は次のマイナーバージョンアップで修正されるはずである。ｄｏｃｕｍｅｎｔオブジェクトを使えば、クッキーを直接制御できる。プログラムはクッキーを利用する。↓↓
簡単には解消できない依存関係があるため、その互換性が制限される。時は飛ぶ。
木々は紅葉する。太陽は太陽系の中心である。ソフトウェアのバージョン７．５はＸＸＸをサポートするだろう，そしてそれは今後のリリースによっても変わらないはずである。↓
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
【００８０】
以下で、翻訳エンジン部１の各構成要素において如何なる処理が行われるかについて説明する。
【００８１】
３−１．前処理部
前処理部１１においては、インタフェース部２（より具体的にはユーザインタフェース部３１）からソース言語で書かれた翻訳対象のページやファイル等の内容のすべてを、メモリ領域として受け取り、それを文、段落、ページ、章などの「翻訳基本単位」を単位として、分割する。一般的には、翻訳基本単位を「文」とするものが多い。翻訳基本単位を単位として分割するには、公知の手法を用いるが、その処理手順は、たとえば図５に示すように、たとえば、ソース言語辞書２０を参照しながら、翻訳基本単位を区切る記号があるかどうかが判断される（ステップＳ１）。翻訳基本単位を区切る記号は、たとえば、ソース言語を英語とする場合は、ソース言語辞書２０に書かれた句点の”．”、”？”、”！”などを文の切れ目が使用される。翻訳基本単位を区切る記号があると判断されたら、ソース言語がそこで分割して出力される（ステップＳ２）。
【００８２】
本発明に係る機械翻訳装置においては、翻訳基本単位に特に制限を設けないが、以下では「文」を単位とするものとして説明する。
【００８３】
検討中の入力文字列（［リスト１］）の場合、たとえば利用者が翻訳基本単位を「文」と指定したと仮定すると、次の１１文に分割されることになる。
2005031922.tif 000008
【００８４】
なお、多くの機械翻訳装置においては、メモリ２５に、文４と文５の間には段落の境界が存在することを何らかの方法で記憶しておき、翻訳エンジン部の出力となるターゲット言語の文字列（訳文）においても、段落の境界を出力するのが普通である。このためには、たとえば、段落の境界が始まる文の番号を記憶しておくなどの方法がある。この例の場合は  先頭の文を表す「１」と、Ｉｍｐｏｒｔａｎｔ  ｄｅｐｅｎｄｅｎｃｉｅｓ．．．の文を表す「５」を記憶することになる。
【００８５】
翻訳エンジン部のこれ以降の処理に関しては、前処理部１１によって区切られた次の文（文１）
Ｉｍｐｏｒｔａｎｔ  ｄｅｐｅｎｄｅｎｃｉｅｓ  ｌｉｍｉｔ  ｔｈｅｉｒ  ｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙ．
を中心に各処理の詳細を説明する。また、必要に応じて他の例文を参照する。
【００８６】
３−２．形態素解析部
形態素解析部１２において、前処理部１１によって翻訳基本単位（この例では「文」）ごとに分割されたソース言語の文字列が公知の方法を用いて、ソース言語辞書２０と照合され、各単語には辞書中の情報が付加される。この過程を一般に形態素解析と呼ぶ。
【００８７】
３−２−１．ソース言語辞書
リスト４にソース言語辞書２０の内容の一例を示す。なお、このリストは、検討中の例に関係する単語についてのみ記述したものである。また、このソース言語辞書２０の記述方法は一例であり、以下に述べるような情報が記載されていれば、その形式はどのようなものであってもかまわない。
【００８８】
2005031922.tif 000009
2005031922.tif 000010
2005031922.tif 000011
2005031922.tif 000012
【００８９】
リスト４の左側にある番号は参照用の行番号であり、実際の対訳辞書にはない。したがって、１行目の「＊ｉｍｐｏｒｔａｎｔ」の最初の文字「＊」の位置が、実際の対訳辞書の行の先頭位置になる。また、各行中で、文字「＃」およびそれに続く文字列は翻訳装置からは無視され、翻訳処理に影響を与えない（このような文字列を一般に「コメント」と呼ぶ）。リスト４においては、コメントとして説明を付して、その意味を示している。
【００９０】
リスト４のソース言語辞書２０においては、この辞書に定義される各単語を「見出し語」と呼び、行頭に「＊」を付けて示している。このソース言語辞書２０の実現例においては、ｉｍｐｏｒｔａｎｔ、ｄｅｐｅｎｄｅｎｃｙ、ｌｉｍｉｔ、ｔｈｅｉｒ、ｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙ，  ．（ピリオド）、ｎｅｗ、などの見出し語がある。多くの見出し語はひとつの単語からなるが、複数の単語からなる見出し語を登録してもよい。見出し語のある行を「見出し語行」と呼ぶ。
【００９１】
各見出し語の定義中には、品詞定義あるいは関連語定義のいずれか、あるいは両方がある。品詞定義はその見出し語のもつ品詞を記述するもので、関連語定義はその単語に関連する単語を記述する。
【００９２】
３−２−１−１．ソース言語辞書の品詞定義
品詞定義には、ひとつあるいは複数の品詞の定義があり、品詞の始まりを表す行は「−」で始まっている。品詞の始まりを表す行を「品詞行」と呼ぶ。品詞行は文字「−」と、品詞を表す１文字の「品詞記号」と、「活用情報」とから構成される。活用情報は省略可能である。本説明の例においては、以下のような品詞記号を用いる。
【００９３】
2005031922.tif 000013
【００９４】
リスト４において活用情報には、見出し語がどのように活用するかを記載する。英語の場合、動詞、名詞、形容詞、副詞が活用する。動詞は必ず活用形を持つので、必ず活用情報を記載する。名詞については、複数形を持つものについてその複数形を記載する。形容詞、副詞については、比較級と最上級を持つものについて記載する。
【００９５】
リスト４の例においては、動詞に関しては、その過去形、過去分詞形、三人称単数現在形、現在分詞形（ｉｎｇ形）を「；」で区切って並べている。１０行目に見出し語ｌｉｍｉｔの動詞の活用の記述がある。名詞に関してはその複数形を品詞記号の後に書いている。５行目に見出し語ｄｅｐｅｎｄｅｎｃｙの複数形ｄｅｐｅｎｄｅｎｃｉｅｓの記述がある。
【００９６】
なお、この実現例では、活用形はその語形をすべて記述することにしているが、たとえば、２行目のｉｍｐｏｒｔａｎｔの活用ならば、「ｍｏｒｅ  ￣」「ｍｏｓｔ  ￣」などのように省略して登録できるようにする、１０行目のｌｉｍｉｔの動詞の活用ならば￣ｅｄ、￣ｅｄ、￣ｓ、￣ｉｎｇなどと記述できるようにしてもよい。
【００９７】
「品詞行」に続いて「品詞細分類行」がある。「品詞細分類行」の先頭文字は「  」（空白文字）であり、それに続いて「抵抗値記号」と「品詞細分類」がある。本例では、リスト３に示す抵抗値記号を用いている。
【００９８】
2005031922.tif 000014
【００９９】
抵抗値記号は、その品詞細分類の使われにくさ（抵抗感）を示すものである。ひとつの品詞細分類しか付与されない単語については、あまり意味を持たないが、たとえば、ｌｉｍｉｔにはｎｏｕｎ（名詞）とｖｔｏ（目的語をひとつとる動詞）の２つがあり、ｖｔｏの方が一般的によく使われそうであると思われるためｖｔｏの抵抗値が低くなっている。本例においては抵抗値記号には整数値が対応しており、これを「抵抗値」と呼ぶ。構文解析部で詳しく説明するが、抵抗値を使って、もっとも確からしい構文的解釈を表現する構文木を選択するのは公知の手法である。
【０１００】
「品詞細分類」は、品詞を細かく分類したものである。本例においては、リスト７のような品詞細分類を用いている。なお、リスト４に記載した単語の品詞細分類は、実際に各単語がもつ品詞細分類のすべてを網羅しているものではなく、説明を容易にするために、その一部を省略しているものがある。
2005031922.tif 000015
【０１０１】
３−２−１−２．ソース言語辞書の関連語定義
ソース言語辞書２０の中の見出し語の定義の中には、品詞定義のほかに関連語定義がある。本例においては、関連語として次のものを利用している。
2005031922.tif 000016
【０１０２】
関連語定義の始まりを表す行を「関連語種別行」と呼ぶ。関連語種別行は「＝＞」で始まり、上記リスト８の「辞書中の表記」に記した英単語（ｖａｒｉａｎｔ、ｓｙｎｏｎｙｍｏｕｓ、ａ  ｎａｌｏｇｏｕｓなど）によりその種類を示す。
【０１０３】
関連語種別行に続き、１行以上の「関連語行」が続く。関連語行は２つの空白に続く「：」で始まり、関連語の語形（綴り）が「｛」と「｝」に囲まれて記載される。関連語の語形に続いては、その語に付加される「属性」をひとつあるいは複数指定してもよい。
【０１０４】
例として、まず、リスト４の３１行目から始まる「ｃｅｎｔｅｒ」の定義を見る。単語ｃｅｎｔｅｒは−Ｎ（名詞）と−Ｖ（動詞）の２つの品詞をもち、それぞれｎｏｕｎ（一般的名詞）と、ｖｔｏ（目的語をひとつとる他動詞）およびｖｉ（自動詞）の品詞細分類をもつ。これらの品詞の定義に続いて、関連語種別行「＝＞ｖａｒｉａｎｔ」がある。この行はｃｅｎｔｅｒに異綴語があることを示している。続く関連語行（３８−３９行目）にあるように、ｃｅｎｔｅｒには自分自身とｃｅｎｔｒｅの２つの綴り方がある。ｃｅｎｔｅｒは主に米国式の綴り方なので、ａｍｅｒｉｃａｎ−ｓｐｅｌｌｉｎｇという属性が付加されており、同様にｃｅｎｔｒｅにはｂｒｉｔｉｓｈ−ｓｐｅｌｌｉｎｇ（英国式綴り）という属性が付加されている。
【０１０５】
ｃ  ｅｎｔｅｒの定義に続くｃｅｎｔｒｅはｃｅｎｔｅｒの異綴語であるので、抵抗値や品詞細分類の記述はｃｅｎｔｅｒのものをそのまま利用するため記載はなく、活用形だけが異なるためこれだけが記載されている（リスト４の４１行目および４２行目）。このように重複する情報の記載を一カ所にまとめることにより、情報の重複を防ぎ保守性を高めることができる。
【０１０６】
続いて、リスト４の６４行目から始まるｃｏｍｐａｔｉｂｉｌｉｔｙの定義により、まず類義語の例を見る。リスト４の６７行目からが関連語の定義であり、まず＝＞ａｎａｌｏｇｏｕｓにより類義語の定義が始まる。続く６７行目はｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙがｃｏｍａｔｉｂｉｌｉｔｙと類似した意味を持つことを示す。さらに、６９行目の＝＞ａｄｊにより、名詞ｃｏｍｐａｔｉｂｉｌｉｔｙと同じ意味を持つ単語を形容詞の形で用いたい場合の語形（形容詞化した場合の語形）を示している。次の行にあるようにｃｏｍｐａｔｉｂｌｅが形容詞化した場合の語形である。このような同じ意味を持つが品詞が異なる語を記憶しておくことの有効性は、翻訳エンジン部１の対訳辞書付随変形部１６において、詳しく説明する。
【０１０７】
３−２−３．形態素解析の処理手順
形態素解析の処理手順を図６に示す。入力としては、前処理部１１から一文ずつ原文（ソース言語で書かれた文字列）を受け取る。続いて、最初の単語から順に、ソース言語辞書２０を参照して、各単語に品詞細分類と抵抗値、それにある場合は属性値が付与される。この操作を「辞書引き」と呼ぶ（ステップＳ１１）。翻訳基本単位の最後の単語まで達したかどうかが判断され（ステップＳ１２）、最後の単語に達したら、各単語に品詞細分類と抵抗値、それにある場合は属性値を付加した木構造が出力される（ステップＳ１３）。
【０１０８】
３−２−４．辞書引き手順と自動スペル修正
辞書引きの詳しい処理手順は以下の通りである。たとえば、入力文中に「ｄｅｐｅｎｄｅｎｃｉｅｓ」という文字列が（空白によって他の単語と区切られて）出現した場合、まず、ソース言語辞書２０（リスト４）を参照し、ｄｅｐｅｎｄｅｎｃｉｅｓがｄｅｐｅｎｄｅｎｃｙの複数形であることを認識して、品詞細分類が「ｎｏｕｎ」、抵抗値記号が「＋」となり、属性として複数形を表す「ｐｌｕ」を付加する（リスト４の４行目から６行目）。
【０１０９】
また、「ｃｅｎｔｒｉｎｇ」という文字列が（空白などによって他の単語と区切られて）出現した場合、ソース言語辞書２０を参照することによりそれが「ｃｅｎｔｒｅ」のｉｎｇ形（動名詞形あるいは現在分詞形）であることを識別する（これにより、ｉｎｇ形を示す属性「ｉｎｇ」が付加される）。さらに、ｃｅｎｔｒｅには品詞細分類の記載がないことから、異綴語があることがわかり、ソース言語辞書２０を検索することにより「ｃｅｎｔｅｒ」の異綴語であることから、「ｃｅｎｔｅｒ」に定義されている品詞細分類「ｖｔｏ」と「ｖｉ」（いずれも抵抗値は「％」）であることがわかる（リスト４の３１行目から３９行目）。
【０１１０】
この手順のほとんどは公知の手法であるが、本翻訳装置では、この形態素解析部１２において、ソース言語辞書２０を照合して、公知の方法でスペルチェックを行い、公知の手法を用いて自動的にスペルの修正を行う機能をもつ。
【０１１１】
たとえば、入力文中に「ｃｅｎｒｔｉｎｇ」という文字列が（空白などによって他の単語と区切られて）出現した場合、辞書中にこの見出し語が存在しないことから、公知の手法により類似した綴りを持つ単語を検索し、「ｒ」と「ｔ」を入れ替えることにより、「ｃｅｎｔｒｉｎｇ」となることから、「ｃｅｎｔｒｉｎｇ」が入力されたものとして、すぐ上で見たのと同様の情報を付加する。なお、この「自動スペルチェック・修正機能」は、利用者が当該処理を行うかどうかを選択できるものとし、選択された場合のみこのような処理を行うものとする。
【０１１２】
図７は、辞書引き手順と自動スペル修正を示すフローチャートである。図７に示すように、ソース言語辞書２０を参照し（ステップＳ２１）、該当する単語がソース言語辞書２０中にあるかどうかを判断する（ステップＳ２２）。ステップＳ２２で、該当する単語があれば、その単語が代表語かどうかを判断し（ステップＳ２３）、代表語なら、その品詞細分類および抵抗値記号を出力する（ステップＳ２４）。代表語でなければ、その単語の代表語を辿り、代表語を参照して、その単語の品詞細分類および抵抗値記号を出力する（ステップＳ２４）。たとえば、「ｄｅｐｅｎｄｅｎｃｉｅｓ」という文字列がソース言語辞書２０に見つかったら、その代表語のｄｅｐｅｎｄｅｎｃｙの品詞細分類および抵抗値記号が出力される。ステップＳ２２で、該当する単語がなければ、スペル修正を行う（ステップＳ２６）。スペル修正が行えたかどうかを判断し（ステップＳ２７）、スペル修正が行えたら、ステップＳ２３に行き、スペル修正を行った単語で、その単語が代表語かどうかを判断し（ステップＳ２３）、代表語なら、その品詞細分類および抵抗値記号を出力し（ステップＳ２４）、代表語でなければ、その単語の代表語に行き、その代表語を参照して（ステップＳ２５）、その単語の品詞細分類および抵抗値記号を出力する（ステップＳ２４）。ステップＳ２７で、スペル修正が行えなかったら（ステップＳ２７）、たとえば、ソース言語のまま出力する（ステップＳ２８）。
【０１１３】
３−２−５．複数の品詞細分類を持つ単語
このように、形態素解析部１２で形態素解析を行った結果、ひとつの単語に関して複数の品詞細分類が付与されることがある。たとえば、リスト４の第７行から第１１行に示すように、ｌｉｍｉｔという単語は、名詞と他動詞とで使われる。したがって、形態素解析の結果、ｌｉｍｉｔには、ｎｏｕｎ（名詞）とｖｔｏ（目的語をひとつ持つ他動詞）という品詞細分類が付与される。
【０１１４】
３−２−６．形態素解析の出力
たとえば、リスト３の１行目の文
”Ｉｍｐｏｒｔａｎｔ  ｄｅｐｅｎｄｅｎｃｉｅｓ  ｌｉｍｉｔ  ｔｈｅｉｒ  ｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙ．”
の形態素解析を行い、その形態素解析の結果を２次元的な情報をもった構文木で表すとしよう。形態素解析の結果、”Ｉｍｐｏｒｔａｎｔ”は形容詞、”ｄｅｐｅｎｄｅｎｃｉｅｓ”は名詞”ｄｅｐｅｎｄｅｎｃｙ”の複数形、”ｌｉｍｉｔ”は他動詞、”ｔｈｅｉｒ”は所有代名詞、”ｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙ”は名詞、”．”は．ピリオドと解析されるので、そのその形態素解析の結果は、図８（Ａ）のような木構造になる。また、これを鍵括弧表記によって表現すると以下のようになる（いずれの表現においても、抵抗値記号は省略する）。
【０１１５】
2005031922.tif 000017
【０１１６】
原文中に現れた”ｄｅｐｅｎｄｅｎｃｉｅｓ”は、その原形である”  ｄｅｐｅｎｄｅｎｃｙ”にｐｌｕという属性がついたものと表現される。ｐｌｕ（ｐｌｕｒａｌ）は、構文的性質を表す属性で、それが複数形であることを表す。同様に、他動詞ｌｉｍｉｔにはそれが原形であることを示すｏｒｇという属性（構文的属性）が付与されている。
【０１１７】
前述したように、ｌｉｍｉｔには名詞と他動詞とがあり、実際にはｌｉｍｉｔにはｎｏｕｎとｖｔｏの２つの品詞細分類が付与されているので、以下のような別構造を持つ構文木（図８（Ｂ）に２次元的な図を示す）も存在することになる（＃＃＃がついている行のｌ  ｉｍｉｔの品詞にｎｏｕｎが付与されている。以下、理解を助けるため、比較対象部分についてはその右に「＃＃＃」というコメント文字列を付加して明示する）。
【０１１８】
2005031922.tif 000018
【０１１９】
したがって、実際の処理の際には、（２次元的な情報をもった）構文木を複数記憶する必要が生ずる。この例では、単純に複数の構文木を順に記憶し、次の構文解析部に送ることにする。なお、公知の手法により、３次元的な構造をプログラム中で表現すれば、より効率のよい記憶が可能である。
【０１２０】
たとえば、検討中の例文
”Ｉｍｐｏｒｔａｎｔ  ｄｅｐｅｎｄｅｎｃｉｅｓ  ｌｉｍｉｔ  ｔｈｅｉｒ  ｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙ．”
に関しては、図８（Ａ）と図８（Ｂ）の２つの構文木が、形態素解析部１２から出力され、構文解析部１３に送られることになる。
【０１２１】
３−３．構文解析部
構文解析部１３では、形態素解析部１２から送られる構文木に表現されている、単語の品詞細分類、抵抗値記号、それに属性を、文法・構文変換データベース２３の内容と照合し、一般には複数の構文木を構築する。これには公知の技術を利用しているが、その実現例を以下に示す。
【０１２２】
３−３−１．文法・構文変換データベース
検討中の例文
”Ｉｍｐｏｒｔａｎｔ  ｄｅｐｅｎｄｅｎｃｉｅｓ  ｌｉｍｉｔ  ｔｈｅｉｒ  ｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙ．”
を解析するために使用する文法・構文変換データベース２３の例をリスト９に示す。
2005031922.tif 000019
【０１２３】
また、リスト６および本説明中に使われる、品詞細分類記号以外の構文単位を表す記号（ＳＥ、ＣＬ、ＮＰ、ＶＰ等）の一覧をリスト１０に示す。なお、品詞細分類記号を含む構文単位を表す記号をまとめて、「ソース言語ノードラベル」と呼ぶ。
2005031922.tif 000020
【０１２４】
なお、リスト１０に使われている品詞細分類記号の一覧はリスト５に、変形部で使われている記号（「ターゲット言語ノードラベル」と呼ぶ）の一覧をリスト１１に示す。
2005031922.tif 000021
【０１２５】
なお、リスト８の「ターゲット言語ノードラベルの一覧」においてラベル「Ｎ」は、Ｓ、Ｏなど任意の名詞的な格を表現するものである。これに関しては、対訳辞書付随変形部１６の接頭辞と接尾辞の利用例で詳しく説明する。
【０１２６】
本例の文法・構文変換データベース２３では、各行にひとつずつ構文規則とそれに付随する変形規則が並んでいる。
【０１２７】
各規則の意味は、以下、順に具体的に説明していくが、まずここでリスト９の規則（３）を例に、各構成要素について概要を説明しておく。規則（３）の規則番号に続く”＋”は抵抗値記号であり、意味は、前述のソース言語辞書２０用に用いられたものと同じであり、これと同じくリスト３にあげた意味で用い、同じように整数値が対応している。この場合、この規則（３）が、特に抵抗感なく用いられる、一般的な規則であることを示している。変則的な規則の場合は抵抗値が高くなり、その規則を適用してできた構文木は選択されにくくなる。なお、この例に関しては、対訳辞書２１用と文法・構文変換データベース２３用に同じ抵抗値記号を用いたが、実現上、別の抵抗値記号の集合を用いてもよい。
【０１２８】
続く”ＶＰ  ＜−  ｖｔｏ  ＮＰ”の部分が文法規則の「本体」であり、これは、「＜−」の右側に示された、目的語をひとつ取る他動詞（ｖｔｏ）と名詞句（ＮＰ，  Ｎｏｕｎ  Ｐｈｒａｓｅ）が合体して、「＜−」の左側に示された「動詞句」（ＶＰ，  Ｖｅｒｂ  Ｐｈｒａｓｅ）を形成することを表す（＜−の左側を「左辺」、右側を「右辺」と呼ぶ場合がある）。
【０１２９】
＆＆に続く  ｖｔｏ＾ｉｎｆｌｅｃｔｉｏｎの部分は「条件部」であり、規則を適用する条件や条件として使われる属性の移動を表す。規則（３）の場合、この規則を適用する際にｖｔｏに付加されているｉｎｆｌｅｃｔｉｏｎ（活用）の情報を左辺のＶＰに移動する（ｖｔｏから削除してＶＰに付加する、木構造で見るとｖｔｏからＶＰに上げる）ことを意味する（具体例を後ほど説明する）。
【０１３０】
リスト９の規則（２）の条件部にある”ＶＰ＝ｏｒｇ｜ｐｓｔ｜３ｓｐ”は、この規則を適用する場合は、ＶＰがｏｒｇ（原形）、ｐｓｔ（過去形）、３ｓｐ（三人称単数現在形）のいずれか（「｜」は「いずれか」を表す記号である）の属性を持たなければいけないことを表している。たとえば、過去分詞形や現在分詞形（ｉｎｇ形）の動詞を下にもつＶＰの場合には、この規則を適用することはできない。
【０１３１】
その右にある鍵括弧表記は「変形部」である。後述する構文規則付随変形部で使われるものであり、後ほど説明する。
【０１３２】
３−３−２．構文解析部の処理手順
構文解析部１３は、形態素に分解された情報と、文法・構文変換データベース２３とを参照して、構文木の生成を試みる。構文木の生成を試みた結果、構文木の生成に失敗することがある。また、構文木は複数生成されることがある。
【０１３３】
図９は、構文解析部１３の処理手順の概要を示すものである。図９に示すように、形態素に分解された情報に対して、文法・構文変換データベース２３の文法規則が適用できるかどうかが判断される（ステップＳ３１）。文法規則が適用できれば、変換規則に従って、新たな木構造に書き換えられ（ステップＳ３３）、適用された規則の番号が保存される（ステップＳ３４）。木構造の書き換えが終了したかどうかが判断され（ステップＳ３５）、新たな木構造への書き換えが終了するまで、この処理が継続される。木構造の書き換えが終了したら、その木構造と、適用された規則が出力される（ステップＳ３６）。これらの処理の途中で、文法規則が適用できなくなったら、木構造の生成に失敗したとして処理される（ステップＳ３７）。すべての構文木に対して行い、最終的にリスト９の文法規則（１）を適用することができた構文木は、構文解析に成功したことになる。
【０１３４】
３−３−２−１．構文解析部の処理手順  −  構文解析に成功する例
検討中の例文
”Ｉｍｐｏｒｔａｎｔ  ｄｅｐｅｎｄｅｎｃｉｅｓ  ｌｉｍｉｔ  ｔｈｅｉｒ  ｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙ．”
に関して、順に構文解析してみることにする。形態素解析後の木構造は、前述したように、次の２つ（図８（Ａ）および図８（Ｂ））である。便宜上、図８（Ａ）の構文木を「構文木Ａ」、図８（Ｂ）の構文木を「構文木Ｂ」とする。後に説明するように、ｌｉｍｉｔを他動詞として形態素解析した図８（Ａ）の構文木は構文解析に成功するが、ｌｉｍｉｔを名詞として形態素解析した図８（Ｂ）の構文木は構文解析に失敗する。
【０１３５】
2005031922.tif 000022
【０１３６】
2005031922.tif 000023
【０１３７】
まず、構文木Ａについて見る。最初に適用可能になる文法規則はリスト９の文法規則（４）である。これを適用すると、”Ｉｍｐｏｒｔａｎｔ  ｄｅｐｅｎｄｅｎｃｉｅｓ”の部分がＮＰ（名詞句）となり、次のような木構造に変形される（図１０（Ｂ））。以下、鍵括弧表記については、その変更部分の右に「＃＃＃」という文字列が付加してその旨を示すとともに、それを２次元的に示した図の番号を＃＃＃の後に示すことにする。
【０１３８】
2005031922.tif 000024
【０１３９】
次に、文法規則（５）を”ｔｈｅｉｒ  ｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙ”の部分に適用することにより、ｐｒｏｎＰｏｓ（所有代名詞これがＮＰになる。
【０１４０】
2005031922.tif 000025
【０１４１】
さらに、文法規則（３）により、今できたばかりのＮＰとｖｔｏ（ｌｉｍｉｔ）が結び付き、ＶＰを形成する。規則（３）には「ｖｔｏ＾ｉｎｆｌｅｃｔｉｏｎ」という条件部がある。これは、ｖｔｏについているｉｎｆｌｅｃｔｉｏｎ（活用）の情報を上位ノード、すなわちＶＰ（動詞句）に移動し、自分の属性を削除するよう求めている。この結果、ｖｔｏに付加されていた属性ｏｒｇはＶＰに移動することになる。
【０１４２】
2005031922.tif 000026
【０１４３】
文法規則（２）により、ＮＰとＶＰが  ＣＬ（節，  ｃｌａｕｓｅ）になる。条件に”ＶＰ＝ｏｒｇ｜ｐｓｔ｜３ｓｐ”があるが、これはＶＰにｏｒｇが付加されていることにより満たされているため、この文法規則は適用される。
【０１４４】
2005031922.tif 000027
【０１４５】
ここまでで、規則（１）にあるように、ＳＥとＣＬおよびｐｅｒｉｏｄが結びついたので、構文木Ａの文の構文解析に成功したことになる。もう一度振り返ると、（４）  →  （５）  →  （３）  →  （２）  →  （１）の順に文法規則が適用されて、上記の構文木が完成したことになる。この文法規則の適用順は記憶されて、次の構文規則付随変形部１５に送られる。
【０１４６】
なお、ここで規則（２）の条件部「ＶＰ＝ｏｒｇ｜ｐｓｔ｜３ｓｐ」がない場合、たとえば次のような文も文法的に正しい文として解釈されてしまう点に注意されたい。
【０１４７】
文  Ｉｍｐｏｒｔａｎｔ  ｄｅｐｅｎｄｅｎｃｙ  ｌｉｍｉｔｉｎｇ  ｔｈｅｉｒ  ｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙ．
を図１０（Ｄ）に相当するところまで構文解析すると、今まで見たのと同じ過程を経て、（４）、（５）、（３）の順に文法規則が適用され、次のような木構造ができあがる。
【０１４８】
2005031922.tif 000028
【０１４９】
ここで、文法規則（２）の条件部がないと、ｉｎｇ形であっても（２）の規則が適用されて、全体が文になってしまう。これに対して、「ＶＰ＝ｏｒｇ｜ｐｓｔ｜３ｓｐ」の条件があればこのようなものは排除できる。
【０１５０】
３−３−２−２．構文解析部の処理手順  −  構文解析に失敗する例
今度は、もうひとつの形態素解析の結果を表す構文木Ｂについて検討する。構文木Ｂについてもリスト９の文法規則（４）と（５）を適用することにより、次のような構文木が構築される。
2005031922.tif 000029
【０１５１】
しかし、リスト９の文法規則のどれも見ても、上記の構文木に適用可能な文法規則はない。したがって、この構文木（ｌｉｍｉｔをｎｏｕｎ  −  名詞  −  として解釈したもの）は構文解析に失敗することになる。
【０１５２】
このようにして、形態素解析部１２から送られてきた２つの構文木のうち、構文木Ａが構文解析されたものだけが次の構文規則付随変形部１５に送られることになる。
【０１５３】
３−３−３．構文的曖昧さの処理
検討中の例に関しては、構文解析に成功する木構造はひとつだけだが、一般には、「自然言語」（プログラミング言語のような「人工言語」と区別するため、人間が日常的に使う言語をこう呼ぶ場合がある）には曖昧さがあり、ひとつの文に対して複数の構文的解釈（つまり複数の構文木）が得られる場合が多い。たとえば、文法を拡張してリスト１２のように、（６）、（７）、（８）の３つの文法規則を加えて、「Ｔｉｍｅ  ｆｌｉｅｓ．」という文を解析する場合を検討してみる。
【０１５４】
2005031922.tif 000030
【０１５５】
文法規則（６）は命令形の文の構文を把握するために使うもので、「ＣＬ（節）はＶＰ（動詞句）から成り、このときＶＰは原形（ｏｒｇ）の属性を持つ」ことを表している。文法規則（７）は名詞句が単独の名詞から構成されること、文法規則（８）は動詞句は自動詞から構成されることを表している。
【０１５６】
文法規則（６）の抵抗値が他の文法規則よりも高くなっているが、これは機械翻訳の対象となる公式な文書においては（会話などの場合に比べて）命令文の使われる頻度がかなり低いことを表現している。
【０１５７】
また、リスト４のソース言語辞書２０のｔｉｍｅとｆｌｙの定義の品詞細分類を見ると、ｔｉｍｅに関しては動詞の品詞細分類が、ｆｌｙに関しては名詞の品詞細分類の抵抗値が高くなっている。これは、ｔｉｍｅが動詞として（「〜の時間を計れ」などの意味で）使われることはあまりないと思われること、ｆｌｙは名詞として（「蠅」の意味で）使われることは、動詞として（「飛ぶ」の意味で）使われる場合に比べて、少ないであろうと思われることを表現している。
【０１５８】
リスト４のソース言語辞書２０とこれらの規則から、「Ｔｉｍｅ  ｆｌｉｅｓ．」という文の形態素解析を行うと、Ｔｉｍｅとｆｌｉｅｓのそれぞれが２つずつの品詞細分類を持つことから、次の４つの木構造が構文解析部の入力として送られてくることになる。
2005031922.tif 000031
これを順にリスト９の文法規則を用いて構文解析してみる。まず木構造１は次のような過程を経て構文解析に成功し、木構造１’ができあがる（図１１）。
2005031922.tif 000032
【０１５９】
木構造２と、それに続く木構造３はひとつの文法規則も適用できずに構文解析に失敗する。
【０１６０】
最後の木構造４は、次のような過程を経て、構文解析に成功し、木構造４’が得られる（図１２）。
2005031922.tif 000033
【０１６１】
木構造１’（図１１Ｄ）は「時は飛ぶ。」（意訳すれば「光陰矢のごとし。」）といった訳文に相当するもので、木構造４’（図１２Ｄ）は「蠅の時間を計れ。」といった命令形の訳文に相当する解釈である。いずれも構文的には問題のない解釈となるが、人間が普通に解釈する場合は、木構造１’の方が妥当な解釈であろう。
【０１６２】
正しくないであろう木構造４’ではなく、正しい解釈である可能性が高い木構造１’を選択するには、公知の手法として、ソース言語辞書２０の各品詞細分類と各文法規則に付与された抵抗値を利用することができる。たとえば、ひとつの手法として、採用したすべての品詞細分類と文法規則の抵抗値（抵抗値記号に対応する整数値）の合計を利用することができる。
【０１６３】
木構造１’と木構造４’のそれぞれについて、抵抗値の合計を計算してみる。まず木構造１’については、ｔｉｍｅのｎｏｕｎとｆｌｉｅｓのｖｉ、および”．”のｐｅｒｉｏｄの品詞細分類の抵抗値がそれぞれ１である。また、適用された（７）、（８）、（２）、（１）の文法規則のすべての抵抗値が１である。このため合計は次のようになる。
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
木構造１’の抵抗値  ＝  １×３  ＋  １×４  ＝  ６
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
【０１６４】
木構造４’に関しては、ｔｉｍｅのｖｔｏもｆｌｙのｎｏｕｎもいずれも抵抗値は５であり（ｐｅｒｉｏｄの抵抗値は１）、さらに文法規則（６）の抵抗値も５であることから、合計は次のように計算される。
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
木構造４’の抵抗値  ＝  ５×２＋１  ＋  １×３＋５  ＝  １８
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
【０１６５】
この抵抗値を比較することにより、木構造１’の方が正しい解釈である可能性が高いと決定することができる。
【０１６６】
以上のように、本発明においては、公知の技術を利用して、単語に付与された情報と、文法・構文変換データベース２３の内容を照合し、一般には複数の構文木を構築するが、この中からもっとも正しい解釈である可能性が高い構文木を選択して、次の構文規則付随変形部１５に送る。
【０１６７】
なお、本発明の構文解析部１３は、文法・構文変換データベース２３を文法規則に付随している抵抗値に応じて複数の部分集合に分割し、最初に抵抗値の小さい規則のみを集めた小さな集合を用いて構文解析を行い、その段階で正しいと思われる構文木が得られた場合はその時点で構文解析処理を打ち切ることにより、余分な照合を行わず、また誤った構文木をより可能性の高いものとして採用する可能性を少なくする機能を有する。この手法を「抵抗値による構文解析規則の制限」と呼ぶ。
【０１６８】
さらに、本発明の構文解析部１３は、対訳辞書２１に付加された抵抗値によって、各単語を品詞細分類ごとに複数の集合に分割し、最初に抵抗値の小さい品詞細分類のみを集めた小さな集合を用いて構文解析を行い、その段階で正しいと思われる構文木が得られた場合はその時点で構文解析処理を打ち切ることにより、余分な処理を行わず、また誤った構文木をより可能性の高いものとして採用する可能性を少なくする機能を有する。この手法を「抵抗値による品詞細分類の制限」と呼ぶ。
【０１６９】
上記例文「ｔｉｍｅ  ｆｌｉｅｓ．」に関して、この２つの手法を適用すると、最終的に好ましい解釈ではないと判断された木構造４’をまったく作成せずに、木構造１’のみを作成して、出力することができる。なお、この例の場合は、「抵抗値による構文解析規則の制限」のみを用いても、あるいは「抵抗値による品詞細分類の制限」のみを用いても、木構造４’は生成されないが、一般には、この両者を用いることにより、生成される木構造の数を少なくし、処理効率を上げることが可能になる。
【０１７０】
３−４．構文規則付随変形部
構文解析部１３において、構築され選択された構文木は、構文規則付随変形部１５、対訳辞書付随変形部１６、前・後置詞付加変形部１７の３つの変形部により、構文構造の変更および情報の付加、移動が行われ、ターゲット言語の構文構造と訳を表現するよう木構造を変化させる。
【０１７１】
３つの変形部のうち、最初の変形操作を行う構文規則付随変形部１５では、文法・構文変換データベース２３の構文規則に付随する鍵括弧表記に従って変形操作を行う。この変形は、構文解析部１３で把握したソース言語の文の構文を、ターゲット言語の構文を表現するのに相応しい形式に変形するものである。
【０１７２】
３−４−１．変形の目標  −  格構造による日本語の表現
例として取り上げている英語→日本語の翻訳装置においては、英語の構造を表現する木構造から、日本語を表現する木構造に変換することになる。日本語を表現する構造として、一般に「格構造」がよく用いられる。このため、本発明の例においてもこの格構造を用いて日本語の構造を表現することにする。
【０１７３】
格構造とは、動詞を中心にして文を捉え、その動詞がどのような動作主（「主格」）を持つか、何を対象として動作を行うか（「目的格」あるいは「対象格」」）、いつその動作を行うか（「時間格」）、どこで行うか（「場所格」）などを記述するものである。たとえば、「私は、昨日、デパートで本を買いました」という文は、図１３（Ａ）のような格構造で表すことができる（この図を見てわかるように、格構造も木構造を用いて表現できる）。この図において、「は」「を」「で」は、格と格の関係を表すために付加される送り（多くの場合、助詞）の役目をするもので、図中においては改行して小さな字で示した。
【０１７４】
格構造は、見方を変えれば、「修飾」と「被修飾」の関係を表しているものとも考えられる。たとえば、図１３（Ａ）においては、主要な要素である動詞を、他の主格、場所格などが修飾することにより、その動作についてより細かく記述していると考えられる。
【０１７５】
たとえば図１３（Ｂ）のように、形容詞（連体詞）や副詞の例を考えると、普通の意味の修飾  −  被修飾の関係になるので、よりはっきりするだろう。この文は、「私は、昨日、デパートで非常に高い立派な本を買いました」という文の格構造を表現しているものだが、副詞「非常に」は形容詞「高い」に対して修飾側として働き、逆に「高い」は「非常に」に対して被修飾側として働く。「高い」と「本」、「立派な」と「本」も同様の関係である。
【０１７６】
ここで、検討中の例文１「Ｉｍｐｏｒｔａｎｔ  ｄｅｐｅｎｄｅｎｃｉｅｓ  ｌｉｍｉｔ  ｔｈｅｉｒ  ｉｎｔｅｒｃｈａｎｇｅ  ａｂｉｌｉｔｙ．」について、最終的に得られる（予定の）訳文「簡単には解消できない依存関係があるため、その互換性が制限される」を格構造で表現すると、たとえば図１３（Ｃ）のように表現できる。ここで、「依存関係」に続く「があるため」と「互換性」に続く「が」は、図１３（Ａ）などの「は」「が」などと同様、格と格の関係を表すための「送り」の役目をするものである。
【０１７７】
これまでとは逆に、ターゲット言語側から翻訳処理の過程を見ると、構文規則付随変形部１５以降で変形を行い、図１３（Ｃ）のような格構造ができれば、それを元に日本語を生成すればよいことになる。図１３（Ｃ）においては、ノードのラベルを日本語を用いて表記したが、これを本発明の実現法による表記に改めると図１３（Ｄ）のようになる。さらに、複数の節などを扱う場合に必要になる「節（ｃｌａｕｓｅ、ラベルとしてはＣＬ）」のまとまりや、全体を「文（ｓｅｎｔｅｎｃｅ、ラベルとしてＳＥ）」として捉えるのに必要なノード、それに句点（ラベルは「．」）を加えると、図１３（Ｅ）のようになる。この図１３（Ｅ）が日本語を出力する直前の木構造となる。
【０１７８】
３−４−２．格構造への変換
最終的に図１３（Ｅ）のような格構造（木構造）への変形を行う第１段階として、英語の構文を日本語の格構造による表現に合うよう変形するための規則が、構文規則に付随する変形規則に記述されている。構文規則付随変形部１５においては、図１４に示すような処理を行うことにより、変形を行う。すなわち、図１４において、記憶されていた文法規則のい適用順を読み出し（ステップＳ４１）、適用された文法規則の順に、変形処理を行って、ターゲット言語のラベルを付与していく（ステップＳ４２）。
【０１７９】
以下で、どのような変形が行われるか、具体的に例を見ていく。まず、構文規則付随変形部１５の入力は、既に見た構文解析部１３の出力と同じで、次のようになる（図１０（Ｅ））。
【０１８０】
2005031922.tif 000034
【０１８１】
既に見たように、翻訳装置は、この木構造を構築する際に適用した文法規則を覚えており、その順番に、付随する変形規則を適用していく。上で見たように、リスト９の文法規則の（４）  →  （５）  →  （３）  →  （２）  →  （１）の順に文法規則が適用されたので、その順にリスト９にある規則の右側にある鍵括弧表記による変形を適用していく。
【０１８２】
最初の変形は、文法規則（４）の変形部に従うものである。文法規則（４）の変形部は次のような変換を省略したものと考える。
（４’）  ［ＮＰ  ［ａｄｊ  ｎｏｕｎ］］  −＞  ［ＮＰ  ＜ｎｏｕｎ  ［ａｄｊ  Ａ］］
【０１８３】
（４’）の右辺に現れるＮＰは文法規則（４）の左辺のＮＰを表すものである。ＮＰに続く”＜ｎｏｕｎ”は（４’）の左辺のｎｏｕｎをＮＰノードに合体（マージ）することを意味する。残る［ａｄｊ  Ａ］は、ＮＰノードの子ノードとしてａｄｊノードがあること、そして”Ａ”というがラベルが新たに付加されることを意味する。本発明に係る翻訳装置ではこのラベルを「ターゲット言語ノードラベル」と呼ぶ。ターゲット言語ノードラベルは、ターゲット言語におけるノードの役割（格）を表すものである。たとえば、この例のラベルＡは、名詞を修飾する形容詞（連体詞）としての役割を果たすことを意味する。
【０１８４】
この変形を図示すると、図１５のようになる。右図のノードのラベルとして並んでいる「ａｄｊ」と「Ａ」は、それぞれ、ソース言語ノードラベルと、ターゲット言語ノードラベルである。ＮＰにはｎｏｕｎが合体されるが、ＮＰのターゲット言語ノードラベルはまだ付加されておらず、ここでは空白になっている。
【０１８５】
リスト９の文法規則（  ４）の変形部を適用すると、構文解析部１３から送られてきた木構造は、次のように変換される（図１６（Ａ））。下の鍵括弧表記においては、合体されたノードは「＜−」を使って表わされ、図１６（Ａ）においては、矢印で表わされている。
【０１８６】
2005031922.tif 000035
【０１８７】
リスト９の例にあるように、文法規則に付随する変形規則においては、ターゲット言語ノードラベルは必ずソース言語ノードラベルのすぐ後に書くことにする。図１６（Ａ）においては、ノードのラベルとしてソース言語ノードラベルと、ターゲット言語ノードラベルを併記した。
【０１８８】
文法規則付随変形規則は、ターゲット言語の構造を表す木構造に変換すると同時に、周囲の木構造とソース言語ラベルとから、ターゲット言語ラベル（格を表すラベル  −  「格ラベル」）を付加する規則でもある。
【０１８９】
リスト９の変形規則（４）に続いて、規則（５）に付随する変形規則が適用され、この結果次のような構文木となる（図１６（Ｂ））。
【０１９０】
2005031922.tif 000036
これに続いてリスト９の規則（３）に付随する変形規則が適用される。
【０１９１】
ここで［ＮＰ  Ｏ  ＋ｏｂｊ］の”＋ｏｂｊ”は”ｏｂｊ”という属性を、そのノードに付加することを指示するものである。これにより、このノードは目的語（ｏｂｊｅｃｔ）の役割を果たすことを表現する（ターゲット言語ノードラベル”Ｏ”自体が目的語であることを表現しているが、属性ｏｂｊも後の処理で利用する）。
【０１９２】
2005031922.tif 000037
【０１９３】
さらにリスト９の文法規則（２）に付随する変形規則が適用され、次のような木構造になる。ここで、ｓｕｂｊは主格を表す属性である（図１８（Ｄ））。
【０１９４】
2005031922.tif 000038
すなわち、動詞（Ｖ）の下に主格（Ｓ）、目的格（Ｏ）がぶら下がる形になる。
【０１９５】
変形規則（２）にある”＠０”は、位置を指定するものである。（２）の変形規則が次のように＠０なしで書かれていたとする。
【０１９６】
［０  ［ＶＰ  Ｖ  ［ＮＰ  Ｓ  ＋ｓｕｂｊ］］］
【０１９７】
この場合、規則適用後の木構造は次のようになる（図１８Ｅ。この図１８Ｅでは、煩雑になるため合体された品詞細分類、ｎｏｕｎ，  ｉｔ１は省略している）。
【０１９８】
2005031922.tif 000039
【０１９９】
”＠０”があることにより、ターゲット言語ノードラベルとしてＳをもつノードが、Ｖの第１の子ノードとなるよう変形される。これがない場合、一般的には最後のノード（もっとも右側に位置するノード）となる。
【０２００】
最後にリスト９の文法規則（１）に付随する変形規則が適用され、次のような木構造ができあがる（図１８Ｆ）。
【０２０１】
2005031922.tif 000040
【０２０２】
このように、リスト９に示した文法規則に付随する変形規則により、ソース言語の構文的構造を、ターゲット言語の構文的構造に変換するわけだが、この際に文法的役割を表すラベルの付け替えを行っているわけである。これ以降、ソース言語ノードラベル（ＶＰ、ＮＰなど）は参照されることはなくなるので、ターゲット言語ノードラベル（ＣＬ，  Ｖ、Ｓ，  Ｏなど）のみを表記することにする。すなわち、次のような木構造を扱うことになる。
【０２０３】
2005031922.tif 000041
【０２０４】
これを図示すると、図１８−Ｇのようになる。この木構造は、図１３（Ｅ）の図と同じ構造を持っていることがわかる。この木構造が、次の対訳辞書付随変形部１６に渡されるが、次の対訳辞書付随変形部１６では、この木構造にターゲット言語の訳語を付加していくことになる（そのほか木構造の変形を行う場合もあるが、例文１に関しては変形操作は行われない）。
【０２０５】
３−５．対訳辞書付随変形部
対訳辞書付随変形部１６の変形は、対訳辞書２１の記述に従って行われる。まず、対訳辞書２１について、続いて対訳辞書付随変形部１６の処理内容について説明する。
【０２０６】
３−５−１．対訳辞書
対訳辞書２１の実現例をリスト１３に示す。なお、このリストは、検討中の例に関係する単語についてのみ記述したものである。また、この対訳辞書２１の記述方法は一例であり、以下に述べるような情報が記載されていれば、その形式はどのようなものであってもかまわない。
【０２０７】
2005031922.tif 000042
2005031922.tif 000043
2005031922.tif 000044
2005031922.tif 000045
【０２０８】
３−５−１−１．対訳辞書の形式  −  見出し語行と品詞細分類行
リスト４に示したソース言語辞書２０と同様、リスト１３の左側にある番号は参照用の行番号である。また、各行中で、文字「＃」およびそれに続く文字列は装置からは無視され、翻訳処理に影響を与えないコメントである。リスト１３においても、コメントとして説明を付している。
【０２０９】
リスト１３の対訳辞書２１においては、他の辞書と同様、この辞書に定義される各単語を「見出し語」と呼び、行頭に「＊」を付けて示している。この対訳辞書２１の実現例においては、ｉｍｐｏｒｔａｎｔ、ｄｅｐｅｎｄｅｎｃｙ、ｌｉｍｉｔ、ｔｈｅｉｒ、ｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙ，  ．（ピリオド）、などの見出し語がある。見出し語のある行を「見出し語行」と呼ぶ。本実現例においては、対訳辞書２１に定義されている見出し語は、ソース言語辞書２０において、その品詞、品詞細分類およびその抵抗値が必ず定義されている必要がある。
【０２１０】
各見出し語行に続いては、１行の「品詞細分類行」と１行あるいは複数の「訳語生成規則行」がある。複数の品詞細分類をもつ見出し語の場合は、この品詞細分類行と訳語生成規則行が繰り返し出現する。たとえば、リスト１３において、「ｉｍｐｏｒｔａｎｔ」に定義されている品詞細分類はａｄｊだけで訳語生成規則行も１行だけであるが、「ｌｉｍｉｔ」には、ｎｏｕｎとｖｔｏの２つの品詞細分類があり、それぞれに訳語生成規則行が付随している。
【０２１１】
品詞細分類行の先頭は「  」（空白文字）で、それに続いて、ソース言語辞書２０で定義された品詞細分類（リスト４に一覧）が書かれる。
【０２１２】
３−５−１−２．対訳辞書の形式  −  訳語生成規則行
訳語生成規則行の先頭は２つ以上の「  」（空白文字）で、それに続いて「：」が置かれ、その後に、「訳語生成規則」が置かれる。訳語生成規則はリスト１４のいずれかの形式を持つ。
2005031922.tif 000046
【０２１３】
なお、本例においては、訳語生成規則は物理的な行としては複数の行に渡ることができ、その場合、２行目以降の先頭３文字以上を空白文字とすることにする。したがって、たとえば、リスト１３の１４行目と１５行目を合わせてひとつの訳語生成規則と考える。
【０２１４】
リスト１４にあげた訳語生成規則の種類のうち、形式１がもっとも汎用な訳語生成規則の表記法であり、形式２および形式３は形式１の記述を省略したものである。形式１の行は「：」で始まり、２つの鍵括弧表記とその間に書かれた「−＞」から構成される。２つの鍵括弧表記のひとつめ、すなわち「−＞」の左側におかれるのが「条件部」であり、右側におかれるのが「変形部」である。条件部のことを「左辺」、変形部のことを「右辺」と呼ぶこともある。訳語生成規則の鍵括弧表記で使われる記号「＄」は、見出し語のノードを表すものである。たとえば、７行目の＄は”ｄｅｐｅｎｄｅｎｃｙ”が付加されているノードを表すことになる。
【０２１５】
形式１の訳語生成規則の条件部に記述する木構造（以下「条件木」と記す）は、構文規則付随変形部から送られてきた木構造（以下「解析木」と略す）中の見出し語に対応するノードを中心に照合され、条件木に記述するノードのラベル並びに属性に関する条件がすべて満たされる場合、解析木に対して訳語生成規則の変形部の変形が行われる（この処理に関する詳細は、以降で例をあげて説明する）。
【０２１６】
リスト１４にあげた訳語生成規則の種類のうち、形式２は形式１の条件部と変形部の記述をひとつの鍵括弧表記を使って表したものである。たとえばリスト１３の７行目の訳語生成規則を形式１の形にすると次のようになる。
2005031922.tif 000047
【０２１７】
リスト１４の訳語生成規則の種類のうち、形式３は、見出し語の訳語のみを指定するものであり、この形式による記述はもっとも頻繁に用いられる。
【０２１８】
なお、形式３についても、条件部と変形部を記述する形式１の省略形であると考える。たとえば、「｛重要な｝」という形式３の訳語生成規則は、自分自身（＄ノード）に「重要な」という訳語を属性として付加するので、次のように形式１の表現で記述できる。
【０２１９】
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
［＄］  −＞  ［＄  ｛重要な｝］
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
【０２２０】
ちなみに、これは次のように形式２で記述することもできる。
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
［＄  ｛重要な｝］
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
【０２２１】
３−５−１−３．対訳辞書の形式  −  ノードの属性の種類
対訳辞書２１中の訳語生成規則を記述するのに利用する鍵括弧表記も木構造の表現であるが、対訳辞書付随変形部１６以降ではソース言語ラベルは参照しないので、ノードのラベルとしてターゲット言語ノードラベルを用いる（既に示したように、リスト１１に、検討中の例で用いるターゲット言語ノードラベルの一覧がある）。
【０２２２】
各ノードは、そのノードのラベルの他に任意の属性（ｓｕｂｊ、ｏｂｊ、ｐａｓｓｉｖｅなど既にいくつか登場した）を持つことができるが、リスト１５にあげる各属性については特別な表記を用いて、特定の意味を持たせる。リスト１５にあげたもののうち、（３）の前置詞以外のものは、以下で検討中の入力を例にして具体的に説明する。
【０２２３】
［リスト１５］
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
対訳辞書中の鍵括弧表記で特別な意味を持つ属性の一覧
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
（１）  原文の見出し語  −  ソース言語の文字列。「”」の対に囲まれる。
（２）  訳語本体  −  ターゲット言語の文字列。原文の見出し語に対応する訳。「｛」と「｝」で囲まれる。なお「｛」と「｝」の先頭あるいは末尾に「￣」（チルダ）がある場合は、、訳語本体ではなく、下に示す前置詞あるいは後置詞となる。また、「｛」と「｝」の中に「＿」（アンダースコア）が入る場合は、下に示す接頭辞あるいは接尾辞となる。
（３）  前置詞  −  ｛ＸＸＸ￣｝で「ＸＸＸ」という文字列を訳語本体の前に置く。日本語をターゲット言語とする場合は、用いることはほとんどないと思われるが、たとえば日→英の場合などに使われる。たとえば、「日本へ」にたいして、”ｔｏ  Ｊａｐａｎ”と、名詞Ｊａｐａｎに対してその前に前置詞”ｔｏ”が置かれる。
（４）  後置詞  −  ｛￣ＸＸＸ｝で「ＸＸＸ」という文字列を訳語本体の後ろに置く。日本語の送りなどで利用する。リスト１３の１５行目に例がある。
（５）  接頭辞  −  「ＸＸＸ＿」で「ＸＸＸ」という文字列を訳語本体の前に付加する形で加える。接頭辞と訳語本体はひとつの単語として振る舞う。リスト１３の３４行目に例がある。
（６）  接尾辞  −  「＿ＸＸＸ」で「ＸＸＸ」という文字列を訳語本体の後ろに付加する形で加える。接尾辞と訳語本体はひとつの単語として振る舞う。リスト１３の３４行目に例がある。この例からわかるように、接頭辞と接尾辞を一度に指定する場合は「ＸＸＸ＿ＹＹＹ」のように指定することができる。
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
【０２２４】
３−５−１−４．対訳辞書の訳語生成規則の記述範囲
対訳辞書２１に書かれる訳語生成規則は、既に説明したように、ある木構造から別の木構造への変形を記述する。変形の中心となるノードは、見出し語に対応するノードであり、多くの訳語変形規則はこのノードをルートとする木構造の変形を記述する。たとえば、図１８において、動詞”ｌｉｍｉｔ”に対応するＶノードと、その目的語”ｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙ”に対応するＯノードとに関係する変形を行う場合は、Ｖノードをルートとして、その子であるＯノードに関する記述を行う。この場合、訳語変形規則の条件部（左辺）はたとえば次のように記述される。
［＄  ［Ｏ  ”ｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙ”］］
ここで、＄は見出し語”ｌｉｍｉｔ”に対応するＶノードを表現することになる。
【０２２５】
変形規則によっては、見出し語に対応するノードの上位ノードに関係する場合もある。たとえば、図１８において、形容詞”ｉｍｐｏｒｔａｎｔ”に対応するＡノードに付属する訳語を決定する場合、その親であるＳノードが何であるかによって、訳語を決めるような記述をする場合には、見出し語に対応するＡノードを起点として、親ノード（この場合”ｄｅｐｅｎｄｅｎｃｉｅｓ”に対応するノード）に関する記述を行うことになる。上で見た訳語変形規則の条件部では、＄ノードがルートとなっていたが、この場合は、＄ノードはＳノードの子ノードとして現れ、次のように表記されることになる。
［Ｓ  ”ｄｅｐｅｎｄｅｎｃｙ”  ［＄］］
【０２２６】
上の例では１段階だけ上位に位置するノード（つまり親ノード）に関して記述したが、本発明に係る訳語生成規則においては、木構造中を何段階でもさかのぼって記述することができる。また、逆に何段階でも下位のノードに関しても記述することができる。具体例については、後述する。
【０２２７】
３−５−２．訳語付加変形の詳細
対訳辞書付随変形部１６では、構文規則付随変形部１５から出力される構文木を受け取り、この構文木の各ノードに付いて対訳辞書を参照しながら木構造の変形操作（情報の付加を含む）を行う。例をあげて、訳語付加変形の処理の詳細を示す。
【０２２８】
３−５−２−１．訳語付加変形の例  −  基本的な表現の記述
中心に検討している例文
Ｉｍｐｏｒｔａｎｔ  ｄｅｐｅｎｄｅｎｃｉｅｓ  ｌｉｍｉｔ  ｔｈｅｉｒ  ｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙ．
について、対訳辞書を参照した訳語付加変形の過程を見る。構文規則付随変形部１５からの出力、すなわち対訳辞書付随変形部１６の入力は次のような木構造であった（図１８。図１９（Ａ）に同じものを示す）。
【０２２９】
2005031922.tif 000048
【０２３０】
装置はこの木構造を図１８の○で囲まれた数字で示すように、子ノードから順番に、また子ノードが複数ある場合は左側の子ノード（第１子）から順にたどり、自分のノードに原文の単語の情報がある場合に対訳辞書の情報を参照して、変形（情報の付加を含む）を行う。
【０２３１】
まず、木構造のもっとも左下に位置するＡノード（ｉｍｐｏｒｔａｎｔ）に対して対訳辞書中の定義が参照される。Ａノード（ｉｍｐｏｒａｎｔ）の訳語としては、リスト１３の３行目の次の訳語生成規則しかない。
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
：｛重要な｝  ＃  「訳語生成規則」（形式３）
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
【０２３２】
この訳語生成規則は、対応するノードの属性として訳語｛重要な｝を追加することを意味するものである。これを図示すると図２１（Ａ）のように表現できる。この規則に条件はないので、この訳語生成規則が適用され、ノードの属性として訳語として｛重要な｝が付加される。この変形規則は形容詞ｉｍｐｏｒｔａｎｔに関するものなので、＄は「Ａ」ノードを表しており、「Ａ」ノードには、原文の単語が”ｉｍｐｏｒｔａｎｔ”であるという情報が保持されている。つまり、この訳語生成規則により、図２１（Ｂ）のような変形（訳語の付加）が行われることになる。
【０２３３】
この結果、全体の木構造は次のようなものとなる（＃＃＃で変更部分を示す。図１９（Ｂ））。
【０２３４】
2005031922.tif 000049
【０２３５】
続いて、”ｉｍｐｏｒｔａｎｔ”のＡノードの親ノード（”ｄｅｐｅｎｄｅｎｃｙ”）の処理を行う。対訳辞書の実現例リスト１３の６行目から７行目にｄｅｐｅｎｄｅｎｃｉｅｓの訳語生成規則がある。６行目の訳語生成規則は、単に｛依存性｝を訳語として付加するものである。この規則には条件がないので適用可能である。これは上で見た、図２１（Ａ）および図２１（Ｂ）と同じように、訳語の付加を行う訳語生成規則である。
【０２３６】
リスト１３の７行目の規則は、条件部と変形部がひとつの鍵括弧表記にまとめられた形式である。既に見たように、この規則をリスト１４の形式１の形に直すと次のようになる。
2005031922.tif 000050
【０２３７】
これを図示すると、図２２（Ａ）のような条件部と変形部になる。これを、検討中の例の構文木のＳノードの下の部分木と比較すると、図２２（Ａ）にある各ノードと属性がすべて図２２（Ｂ）に存在することから、条件が満たされていることがわかる。条件が満たされたので、この規則を適用すると”ｄｅｐｅｎｄｅｎｃｉｅｓ”に対応するＳノードには「依存関係」という訳語が付加される。さらに、自分の子ノードであるＡのラベルを持つノード、つまり”ｉｍｐｏｒｔａｎｔ”の訳語は「簡単には解消できない」となる。このような指定により、ｉｍｐｏｒｔａｎｔの訳語としてはリスト１３の３行目にある”ｉｍｐｏｒｔａｎｔ”そのものの定義にある「重要な」ではなく、７行目の”ｄｅｐｅｎｄｅｎｃｙ”の定義に記述された「簡単には解消できない」という訳語が出る。
【０２３８】
このように、検討中の例ではこのＳノード（”ｄｅｐｅｎｄｅｎｃｉｅｓ”に対応するノード）においては、２つの訳語生成規則（リスト１３の６行目と７行目）が適用可能になる。このような場合、より多くのノードに対する条件が課せられておりそれが満たされる規則（この例の場合７行目の規則）を採用する。これにより”ｉｍｐｏｒｔａｎｔ”の訳語は｛重要な｝から｛簡単には解消できない｝に置き換えられる。また、”ｄｅｐｅｎｄｅｎｃｙ”の訳語｛依存関係｝が付加される。これを木構造で表現すると次のようになる（図１９（Ｃ））。
2005031922.tif 000051
【０２３９】
この例においては、ｉｍｐｏｒｔａｎｔの訳語をｉｍｐｏｒｔａｎｔ自身の定義と、ｄｅｐｅｎｄｅｎｃｙの定義との２つの箇所から指定している。このように、複数箇所から、同じ単語の訳語の指定が行われた場合、競合（コンフリクト）が発生することになる。この例においては、下位のノードから順に訪問し、上位ノードでは、既に決まっていたものでも上書きする形で、つまり「上位ノードの指定を優先する」方法を採用している。このほか、「訳語の指定（対訳辞書の訳語生成規則）に優先度を設け、優先度の高い方の訳語を優先し、同じ優先度の場合は上位ノードからの指定を優先する」といった方策なども考えられる。
【０２４０】
これでｄｅｐｅｎｄｅｎｃｉｅｓに対応するＳノードの（Ｖノードの第１子）の処理が終了したので、次に、Ｖノードの第２子であるＯノードの処理に進む。このノードにはさらに下位のノード（Ａノード）があるので、そのノードの処理が先になる。対訳辞書中の”ｔｈｅｉｒ”の定義が参照され、訳語として先頭の｛その｝が付加される。この例のように、適用可能な訳語生成規則が複数あり、他の条件がまったく同じという場合、対訳辞書中で上に並んでいるの方が優先される。この処理の結果、次のような木構造に変形される。
2005031922.tif 000052
【０２４１】
さらに、  Ａノードの親ノードのＯノードに対応する”ｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙ”の訳語｛互換性｝が付加され、次のような鍵括弧表記で表現される木構造になる（図１９（Ｄ））。
2005031922.tif 000053
【０２４２】
これで、Ｖノードの下位に位置するノード（子ノード）の処理が終わったので、Ｖノード（ｌｉｍｉｔ）の訳語を付加するが、ｌｉｍｉｔの他動詞ｖｔｏの生成規則にはリスト１３の１２行目から１５行目の３つがある（１４〜１５行目は改行されているがひとつの訳語生成規則である）。
【０２４３】
３番目（１４〜１５行目）の定義の左辺にはＳノードとＯノードという２つの条件が設定されているため、これが満たされればこの規則が適用されることになる。条件部では＄（自分自身、すなわち”ｌｉｍｉｔ”に対応するＶノード）の下にＳノードとＯノードがあり、それぞれ”ｄｅｐｅｎｄｅｎｃｙ”と”ｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙ”に対応するノードであることを要請している。この例の場合、この条件が満たされるので、条件のない１２行目あるいは１３行目の定義よりも優先されて適用されることになる。
【０２４４】
対訳辞書付随変形部１６では、まず＄（Ｖノード）に訳語｛制限する｝を属性として付加し、ｐａｓｓｉｖｅという属性を加える。ｐａｓｓｉｖｅは受け身（受動態）の意味が加わることを示す属性である（後の過程で、｛制限する｝という動詞と「ｐａｓｓｉｖｅ」という属性から、「制限される」という訳が生成されることになる）。
【０２４５】
さらに、Ｓノードには後置詞｛￣があるため、｝、そしてＯノードには同じく後置詞の｛￣が｝が指定されている。この結果次のような木構造ができる（図２０（Ａ））。
2005031922.tif 000054
【０２４６】
2005031922.tif 000055
【０２４７】
以上で、原文の単語をもつすべてのノードの訳語が付加された。この木構造が対訳辞書付随変形部１６の出力として、次の前・後置詞付加変形部１７に渡されることになる。
【０２４８】
３−５−２−２．訳語付加変形の例  −  イディオムの記述
本発明に係る対訳辞書２１においては、訳語生成規則を用いて様々なイディオム（複数の単語からなり、それらが単純に合わさった意味ではなく、組み合わせによって特別な意味を表現する）を記述できる。検討中の入力（リスト３）の例文４の「Ｔｈｅ  ｐｒｏｇｒａｍｓ  ｔａｋｅ  ａｄｖａｎｔａｇｅ  ｏｆ  ｔｈｅ  ｃｏｏｋｉｅｓ．」を例にして説明する。”ｔａｋｅ  ａｄｖａｎｔａｇｅ  ｏｆ  〜”は、単純に個別の単語の意味を合わせると「〜の利点を取る」といった訳になるが、この３つの単語が連続して出現することにより、「〜を利用する」などといった訳に対応する意味をもつ表現になる。なお、この文で使われている「ｃｏｏｋｉｅｓ」はインターネットブラウザで特定のサイトに関する情報を記憶するための機構であり「クッキー」と訳される。
【０２４９】
例文４は構文解析とそれに続く構文規則付随変形の結果、図２３（Ａ）のような構文木となる。この構文木のＶノードをルートとする部分木は、リスト１３の対訳辞書の８２行目の条件部の条件を満たす（”ｔａｋｅ”に対応するＶノードの子のＯノードが”ａｄｖａｎｔａｇｅ”に対応し、さらにその子ノードに”ｏｆ”で始まる前置詞句がある）ことから、この訳語生成規則が適用可能になる。この結変形部に指定された変形が行われ、”ａｄｖａｎｔａｇｅ”に対応するＯノードはＶノードに合体され、Ｖノードの訳語として｛利用する｝が付加される。また、”ｏｆ”の訳語として｛を｝が付加されることになる（図２３（Ｂ））。この結果最終的に「このプログラムはクッキーを利用する」という訳文が生成されることになる。
【０２５０】
リスト１３の８２行目のイディオムの定義の表現は、以下の手順に従って内部的に変換されて、翻訳に使われる。
（ａ−１）  ”＄  ａｄｖａｎｔａｇｅ  ｏｆ  ｓｏｍｅｔｈｉｎｇ−１”
↓（手順Ａ１）「＄」をラベルとして持つノードをひとつ作り、その下に、各単語をノードとして仮のラベルｘを付与したノードをおいた木構造（鍵括弧表記）を作る。
2005031922.tif 000056
【０２５１】
このように、複数の語から特別な意味を表す表現を前記対訳辞書に登録する際に、複数の語から特別な意味を表す表現のソース言語とそれに対応するターゲット言語とを木構造で表し、ソース言語の木構造とターゲット言語とを木構造で対応づけるようにして登録することができる。このため、一般的な辞典の表記の表現を用いることができる。
【０２５２】
３−５−２−３．訳語付加変形の例  −  複合語の記述
機械翻訳装置で利用する辞書（本発明でいうところの対訳辞書）においては、複数の単語から構成されるものの、全体でひとつの意味を表現する単語、すなわち複合語を登録できるようになっているのが一般的である。たとえばリスト１６に示すように対訳辞書に単語を登録すると、”ｐｏｉｎｔ”と”ｒｅｌｅａｓｅ”という２つの単語を、あたかもひとつの単語であるかのごとく扱い、”ｐｏｉｎｔ  ｒｅｌｅａｓｅ”全体に対して訳語を指定できる。
［リスト１６］
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
複合語の対訳辞書への記述例（従来例）
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
１      ＊ｐｏｉｎｔ  ｒｅｌｅａｓｅ
２      −Ｎｐｏｉｎｔ  ｒｅｌｅａｓｅｓ
３      ＋ｎｏｕｎ
４      ：｛マイナーバージョンアップ｝
５  ：｛ポイントリリース｝
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
【０２５３】
しかし、複合語を単純に辞書に登録した場合、周囲の単語との関係から問題が生じる場合がある。
【０２５４】
次の例文と訳例について検討する。
（例文）
Ｔｈｉｓ  ｐｒｏｂｌｅｍ  ｓｈｏｕｌｄ  ｂｅ  ｒｅｍｅｄｉｅｄ  ｗｉｔｈ  ａ  ｎｅｗ  ｐｏｉｎｔ  ｒｅｌｅａｓｅ．
（訳例）
この問題は次のマイナーバージョンアップで修正されるはずである。
【０２５５】
ｐｏｉｎｔ  ｒｅｌｅａｓｅはソフトウェアの新しいバージョンだが、前回のバージョンに比べて修正あるいは改良の規模がごく小規模なもののことを意味する単語で、「マイナーバージョンアップ」あるいは「ポイントリリース」などと訳される。ここでは、より一般的な単語である「マイナーバージョンアップ」の方を選択することにする。
【０２５６】
この例で、処理が複雑になるのは単語”ｎｅｗ”と”ｐｏｉｎｔ  ｒｅｌｅａｓｅ”の関係である。”ｎｅｗ  ｒｅｌｅａｓｅ”は、ｎｅｗおよびｒｅｌｅａｓｅの一般的な訳語を用いて「新しいリリース」とするよりも「次のリリース」と訳す方が自然である。このような訳は、ｎｅｗ  あるいは  ｒｅｌｅａｓｅに両者の関係（「共起関係」と呼ばれる）を記述することにより可能になる。本発明のこれまでの説明に用いた対訳辞書の形式に従えば、たとえばリスト１３の５９−６２行目のようにｎｅｗの定義を記述することで可能になる。
【０２５７】
リスト１３の６１行目にある｛新しい｝は通常のｎｅｗの訳語であるが、６２行目に示すように、＄、すなわち単語ｎｅｗが、ｒｅｌｅａｓｅという名詞を修飾した場合は「次の」と訳すことになる。なおここで、ターゲット言語ノードラベル「Ｎ」はＳ、Ｏ、Ｏ２など、名詞を表現するターゲット言語ノードラベルのいずれとも置き換わることのできるノードラベルである。ｒｅｌｅａｓｅという単語は「Ｔｈｅ  ｎｅｗ  ｐｏｉｎｔ  ｒｅｌｅａｓｅ  ｉｓ  ｉｍｐｏｒｔａｎｔ．」のように主格（Ｓ）としても、「Ｗｅ  ｎｅｅｄ  ａ  ｎｅｗ  ｐｏｉｎｔ  ｒｅｌｅａｓｅ．」のように目的格（Ｏ）としても、さらには、本説明では用いないが、「Ｔｈｉｓ  ｉｓ  ｔｈｅ  ｎｅｗ  ｐｏｉｎｔ  ｒｅｌｅａｓｅ．」のように補語としても）使われうるので、「Ｎ」を用いて任意の名詞的な格すべてを表現する（このようなノードがないと、Ｓ、Ｏ、Ｏ２などそれぞれの場合について重複して記述する必要が生じるため、特別なノードラベルＮを用いる）。
【０２５８】
一方「ｐｏｉｎｔ  ｒｅｌｅａｓｅ」を「マイナーバージョンアップ」と訳すためには、たとえばリスト１６のように、ｐｏｉｎｔ  ｒｅｌｅａｓｅをひとつの単語と同じように登録する必要がある。しかし、ここで問題が生じる。リスト１３の６２行目にあるｎｅｗを「次の」と訳すための指定は、”ｒｅｌｅａｓｅ”が対象となっているだけで”ｐｏｉｎｔ  ｒｅｌｅａｓｅ”は対象となっていない。このため、このままでは、望まれている訳「次のマイナーバージョンアップ」ではなく、「新しいマイナーバージョンアップ」と訳出されてしまう。
【０２５９】
これを解決するもっとも単純な方法は、ｎｅｗの定義に新たにリスト１７の６行目のような記述を加えることである。
2005031922.tif 000057
【０２６０】
これにより、複合語の”ｐｏｉｎｔ  ｒｅｌｅａｓｅ”を修飾した場合にも「次の」と訳されるようになる。しかし、この方法は、類似する情報を重複して記述する必要が生じることから好ましくない。たとえば、”ｎｅｗ  ｍａｊｏｒ  ｒｅｌｅａｓｅ”といった単語についても同様の操作を行う必要が生じてしまう。
【０２６１】
本発明に係る機械翻訳装置の対訳辞書においては、ｐｏｉｎｔ  ｒｅｌｅａｓｅをたとえば、リスト１３の６８行目のようにｒｅｌｅａｓｅの定義中に登録しておくことができる。
【０２６２】
この記述ではｒｅｌｅａｓｅが”ｐｏｉｎｔ”によって修飾された場合、全体でマイナーバージョンアップとなることを示している（「＜ＡＮ」は、既に説明したようにＡＮのノードが＄に合体されることを示す）。複合語”ｐｏｉｎｔ  ｒｅｌｅａｓｅ”の訳を、このようにｒｅｌａｓｅの定義の一部として記述しておくことにより、「ｎｅｗ」  と「ｐｏｉｎｔ  ｒｅｌｅａｓｅ」との関係を改めて記述しなくても、リスト１３の６２行目の変形が可能になり、「次のマイナーバージョンアップ」という訳を出すことができる。
【０２６３】
３−５−２−４．訳語付加変形の例−接頭辞と接尾辞の使用例
接頭辞と接尾辞の使用例を見る。この例では、ターゲット言語辞書２２を参照して訳語情報を付加する際に、ノードに付加される訳語の情報を、前置詞と、後置詞と、接頭辞と、接尾辞とに分割して記憶するようにしている。これにより、従来では困難であった翻訳が可能になる。
【０２６４】
入力文リスト３の５番目の文「Ｓｅｅ  Ｃｈａｐｔｅｒ  １０  ｆｏｒ  ｄｅｔａｉｌ．」の”Ｃｈａｐｔｅｒ  １０”を「第１０章」と訳したいとする。ｃｈａｐｔｅｒを「第」と「章」の二つに分割することは従来の枠組みでは難しかった。しかし、本発明によれば、リスト１３の３３行目の訳語生成規則のように接尾辞と接頭辞を用いることによって、簡単に実現できる。
【０２６５】
リスト４のソース言語辞書の９２行目にあるように、数字１０は品詞細分類ｎｏｕｎをもつ、また同じく９４行目にあるように属性としてｎｕｍｂｅｒとｓｐｅｌｌｉｎｇ−ｎｕｍｅｒｉｃの２つが付加されている。また、リスト１３の対訳辞書の２９行目にはその訳語｛１０｝が指定されている。一方、ソース言語辞書において、”ｃｈａｐｔｅｒ”のｎｏｕｎの品詞細分類をもち、対訳辞書において、３２−３３行目に訳語変形規則が指定されている。
【０２６６】
なお、多くの機械翻訳装置においては、数字はその数が非常に多いため、特別に処理され、ひとつひとつの単語の定義が辞書に書かれることはないが、ここでは説明の便宜上、ほかの単語と同じように、ソース言語辞書、対訳辞書、およびターゲット言語辞書に記述されているものとする。
【０２６７】
リスト１３の３３行目が接頭辞と接尾辞を用いた例である。この変形規則の条件部では、ｃｈａｐｔｅｒがｎｕｍｂｅｒという属性を持つラベル「Ｎ」をもつノードを修飾している場合という条件を課している（ラベル「Ｎ」は、既に見たように、任意の名詞的な格（ラベル）を表現するもの）。
【０２６８】
訳語生成規則の条件部と変形部を図で表現すると図２４（Ａ）のようになる。すなわち、条件としては＄が修飾する名詞ノードに「ｎｕｍｂｅｒ」という属性があればこの規則が適用可能になる。検討中の例文「Ｓｅｅ  Ｃｈａｐｔｅｒ  １０  ｆｏｒ  ｄｅｔａｉｌ．」の「Ｃｈａｐｔｅｒ  １０」の部分木は図２４（Ｂ）の条件部（左側）のようになるので、この条件が満たされていることがわかる（ノードラベル「ＡＮ」は名詞を形容詞的に修飾する名詞）。
【０２６９】
この訳語生成規則を適用すると、図２４（Ｂ）の変形部（右側）のように変形され、「＄」すなわちｃｈａｐｔｅｒのノードは修飾先のｎｕｍｂｅｒ属性を持つ単語、この例の場合｛１０｝に合体される。同時に、１０の訳語の前後に「第」および「章」が加わって、一体となってひとつの単語を形成する旨が記録される。
【０２７０】
ラベルＡＮのノードの処理を終わり、親の”１０”に対応するラベルＯのノードを処理するとき、”１０”の訳語｛１０｝が対訳辞書から抽出され、先ほどの「第」と「章」の間にこれが入り、全体として｛第１０章｝という訳語が一体となって、Ｏノードに付加される。（図２４（Ｃ））。
【０２７１】
本発明の対訳辞書２１は、一般には公知の手法を用いて複数用いられる。その際に公知の手法により、辞書の間に優先度を設定することができるが、従来の装置においては、優先度が低い辞書に関しても必ず参照して形態素解析を行っていた。
【０２７２】
実際の翻訳装置の運用の際には、既に別の目的で作成した辞書を機械翻訳用の辞書（本発明においては、対訳辞書）に転用する場合など、内容の信頼度の低い辞書を用いることがある。従来の方法ではそのような辞書の優先度を下げておき、それよりも優先度の高い辞書に記載された定義が採用されやすくすることはできたが、たとえ優先度の高い辞書に定義されている単語であっても、必ずすべての辞書を参照し、これにより信頼度の低い定義が採用される場合があった。
【０２７３】
本発明の対訳辞書においては、さらに、各単語に対して「検索停止」という属性を設定することができる。これにより、たとえば、利用者が作成した対訳辞書（「ユーザ辞書」と呼ばれることが多い）の特定の単語に対して検索停止属性を付与しておけば、そのほかの対訳辞書（たとえば翻訳装置が提供する「システム辞書」）に記載されている定義を無視することができる。従来型の翻訳装置においては、必ずすべての辞書にある定義を参照してしまうため、希望しない解釈や訳語が出力される原因となる場合があった。
【０２７４】
本発明においては，構成要素が非常に密な関係を持つ複合語（複数の単語からなる語）の場合，そのような単語に対して「分解不可能」という属性を付加することができる。これにより，構成要素の各々の単語の定義を利用した解釈を避けることができる。たとえば、ｃｏｕｎｌｄ  ｎｏｔ  ｈａｖｅ  ｂｅｅｎという単語を助動詞を複合語として登録し、これに分解不可能属性を付与しておくと、ｃｏｕｌｄやｎｏｔ，ｈａｖｅなどを個別に参照した解釈は形態素解析の段階で排除され、構文解析以降では使われずに処理が行われ，ｃｏｕｌｄ  ｎｏｔ  ｈａｖｅ  ｂｅｅｎの解釈に対する曖昧さがなくなり、処理効率もよくなる。
【０２７５】
３−５−２−５．訳語付加変形の例  −  ソース言語辞書の利用
訳語付加変形部においては、ソース言語辞書に記述された関連語の情報を用いて、より好ましい訳文を生成するよう訳語を選択することができる。リスト３の入力の文６「Ｉｍｐｏｒｔａｎｔ  ｄｅｐｅｎｄｅｎｃｉｅｓ  ｌｉｍｉｔ  ｔｈｅｉｒ  ｃｏｍｐａｔｉｂｉｌｉｔｙ．  」を例に、訳語付加変形部におけるソース言語辞書の利用について説明する。
【０２７６】
この英文は、既に検討中の例文（リスト３の入力の文１）と比べて、ｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙがｃｏｍｐａｔｉｂｉｌｉｔｙに代わっただけであり、この２つの単語はいずれもｎｏｕｎという品詞細分類を持ち、また対訳辞書２１の２３行目と３６行目にあるように、ｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙとｃｏｍｐａｔｉｂｉｌｉｔｙは単独では同じ｛互換性｝という訳語を持つ。このため、構文規則付随変形部からはまったく同じ木構造が出力されて、さらに訳語付加変形部の処理も、Ｖノードにぶら下がるの各ノードについてはほぼ同じように処理されて、図２５（Ａ）のような木構造ができる。
【０２７７】
続いて、Ｖノード（”ｌｉｍｉｔ”）の処理に移るが、リスト１３の対訳辞書の１４〜１５行目の条件部では”ｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙ”が指定されているため、この訳語生成規則は適用できずに、１２行目の｛制限する｝が採用されることになる。（詳しい過程は後で示すが）このまま訳語を生成すると「簡単には解消できない依存関係はその互換性を制限する。」という訳が生成されることになる。この訳は、目標の訳「簡単には解消できない依存関係があるため、その互換性が制限される。」に比べると、ややぎこちない印象を受ける。
【０２７８】
しかし、ここでソース言語辞書４のｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙおよびｃｏｍｐａｔｉｂｉｌｉｔｙに記述されているａｎａｌｏｇｏｕｓ（類義語）の関係を見れば、ｉｎｔｅｒｃｈａｎｇｅａｂｉｌｉｔｙとｃｏｍｐａｔｉｂｉｌｉｔｙは似たような意味合いを持つ言葉なので、同じような変形操作をしても妥当である可能性がある。具体的には、対訳辞書２１の１４〜１５行目の訳語生成規則を拡張して解釈して、文１とまったく同じ変形を行える可能性がある。このような拡張を行えば、図２５（Ｂ）のような木構造が生成される。この木構造からは、文１の訳と同じ訳文「簡単には解消できない依存関係があるため、その互換性が制限される。」が生成される。
【０２７９】
なお、このような拡張解釈機能は、常に好ましい訳文を生成するとは限らないので、利用者が選択的に適用できるようにすることが好ましいであろう。利用者が、辞書に記述された安全な訳語生成規則のみの適用を求める場合は、類義語をたどることによって同じ変形操作を適用することは行わないようにする必要がある。
【０２８０】
上の例は、類義語の関係を利用して、同じ変形を行うよう訳語生成規則を拡張したが、異綴語に対してもこのような拡張解釈を行うことが可能である。たとえば、リスト１の入力例の文７「Ｔｒｅｅｓ  ｔｕｒｎ  ｃｏｌｏｕｒｓ．」を見る。対訳辞書のｔｕｒｎの定義（５１行目）で、目的語に”ｃｏｌｏｒ”を指定して、訳語生成規則の条件が書かれており、この規則により”Ｔｒｅｅｓ  ｔｕｒｎ  ｃｏｌｏｒｓ．」で「木々は紅葉する。」という訳語が生成される。この規則を”ｃｏｌｏｒ”の異綴語である”ｃｏｌｏｕｒ”に対しても適用すれば、「Ｔｒｅｅｓ  ｔｕｒｎ  ｃｏｌｏｕｒｓ．」に対しても「木々は紅葉する。」という訳を生成できる。
【０２８１】
異綴語の場合、類義語の場合と異なり、意味はまったく同じであると考えられるので、利用者に設定用の仕組みを提供せずに、無条件にこのような拡張解釈を行ってもよいと考えられる。
【０２８２】
３−５−２−６．訳語付加変形の例  −  ターゲット言語辞書の利用  −  品詞変換対訳辞書付随変形部１６においては、ターゲット言語辞書２２に記述された関連語の情報を用いて、より好ましい訳文を生成するよう訳語を選択することができる。リスト３の入力の文３「Ｔｈｅ  ｄｏｃｕｍｅｎｔ  ｏｂｊｅｃｔ  ｇｉｖｅｓ  ｙｏｕ  ｄｉｒｅｃｔ  ｃｏｎｔｒｏｌ  ｏｖｅｒ  ｔｈｅ  ｃｏｏｋｉｅｓ．」を例に、対訳辞書付随変形部１６におけるターゲット言語辞書２２の利用について説明する。
【０２８３】
なお、例文３に出現する中のｏｂｊｅｃｔはプログラミング上で使われる概念で「オブジェクト」と訳される。ｄｏｃｕｍｅｎｔ  ｏｂｊｅｃｔはｄｏｃｕｍｅｎｔという名称のオブジェクトでありｄｏｃｕｍｅｎｔ  ｏｂｊｅｃｔ全体で「ｄｏｃｕｍｅｎｔオブジェクト」と訳される。
【０２８４】
リスト１３の３９〜４１行目にあるｇｉｖｅに関する２つの訳語生成規則のうち、３９行目の訳語生成規則を適用する場合、例文３は次のように翻訳される。
（訳文）
ｄｏｃｕｍｅｎｔオブジェクトはあなたにクッキーの直接的制御を与える。
【０２８５】
ここで、「直接的制御を与える」というのは、日本語として不自然な表現である。また、「あなたに」もない方が好ましい。これに対して本発明に係る装置では次のような訳を生成することができる。
（訳文）
ｄｏｃｕｍｅｎｔオブジェクトを使えば、クッキーを直接制御できる。
【０２８６】
この訳を実現するのが４０〜４１行目訳語生成規則である。この規則の条件部と変形部を図示すると図２６のようになる。
【０２８７】
具体的には、条件部は次のような木構造を持つことを要請している。
（１）  ＄で表される自分自身（この場合ｇｉｖｅ）がトップにある（＄は実際はＶノードになる）
（２）  ＄の下にＳ（主語）がある。単語は何でもよい
（３）  ＄の下にＯ２（間接目的語、ｉｎｄｉｒｅｃｔ  ｏｂｊｅｃｔ）があってそれが”ｙｏｕ”である。
（４）  ＄の下にＯ（直接目的語）がありそれが”ｃｏｎｔｒｏｌ”で、それを”ｏｖｅｒ”で始まる前置詞句Ｐが修飾している。
【０２８８】
対訳辞書付随変形部１６は次のような変形を規定している。
（１）  Ｏノードは＄（すなわちＶノード”ｇｉｖｅ”）に合体され、一体となって全体で｛制御する｝という訳になる。
（２）  さらに、＄（Ｖ）にはａｂｌｅという属性が付与される。これにより、「〜できる」といった「可能」の意味を持つ訳が付加される（後述する「前・後置詞生成データベース」に属性ａｂｌｅを持つ場合の活用の情報が記述されている）。
（３）  ＄（Ｖ）ノードの下にはＳ、Ｏ２、Ｐがその子ノードとしてぶら下がる。
（４）  Ｓは該当する単語の定義に従って訳されるが、後置詞（送り）は「を使えば」となる。
（５）  Ｏ２の訳はない（｛｝）
（６）  Ｐすなわち”ｏｖｅｒ”は「を」と訳される。
【０２８９】
この規則（辞書の定義）を適用する前の木構造（Ｖの下の部分木）は下のようなものになる（図２７（Ａ））。この段階までに決定されているはずの訳語は、ｄｉｒｅｃｔのものを除いて省略する。また、ｓｕｂｊ、ｏｂｊなどの属性も省略する）。
2005031922.tif 000058
【０２９０】
ここで、ＡＮは名詞を修飾する名詞（形容詞的に働く）を意味するターゲット言語ノードラベルである。
【０２９１】
リスト１５の５行目から６行目の規則を適用することにより、この木構造は次のように変換される（図２７（Ｂ））。
【０２９２】
2005031922.tif 000059
【０２９３】
このままの状態で、訳語を生成すると、次のようなものになる。
ｄｏｃｕｍｅｎｔオブジェクトを使えば、クッキーを直接的制御できる。
【０２９４】
単語”ｄｉｒｅｃｔ”のＡノードは以前は名詞ｃｏｎｔｒｏｌを修飾していたため「直接的」という訳語になっている。
【０２９５】
本翻訳装置では、修飾されているノードに品詞変換が行われた場合（この場合ｃｏｎｔｒｏｌが動詞の一部になった）、それに呼応して修飾側のノードの品詞の変換も行う機能をもつ。この際にターゲット言語辞書２２を使う。
【０２９６】
ターゲット言語辞書２２の例を示す。まず最初に検討中の例で利用する「直接的」の定義は、たとえばリスト１８のターゲット言語辞書２２の１２行目からのように記述することができる。
2005031922.tif 000060
2005031922.tif 000061
2005031922.tif 000062
【０２９７】
検討中の例の場合、１８行目から始まる副詞に変換された場合の訳語を参照して、品詞の変換が行われ、次のような木構造となる（図２７（Ｃ）。太い丸で囲まれた部分が品詞変換が行われた部分）。
2005031922.tif 000063
【０２９８】
以上により、次のように訳出されることになる。
（訳文）
ｄｏｃｕｍｅｎｔオブジェクトを使えば、クッキーを直接制御できる。
【０２９９】
なお、ターゲット言語辞書２２に形容詞「直接的」が副詞化された単語が定義されていない場合は、次のいずれかの処理を行う（いずれを行うかは利用者があらかじめ設定できる）。
【０３００】
（１）  対訳辞書リスト１３の４０行目の条件部が満たされないものと判断し、３９行目の訳｛与える｝が採用される。
（２）  対訳辞書リスト１３の４０行目の条件部が満たされたので、図２７（Ｂ）の木構造への変換だけを行って、形容詞（Ａ）ノードの副詞（Ｄ）ノードへの自動的な変換は行わず、｛直接的｝を訳語とする。
【０３０１】
３−５−２−７．訳語付加変形の例  −  ターゲット言語辞書の利用  −  訳語の重複の回避
検討中の入力例（リスト３）の例文９「Ｗｅ  ｂｕｙ  ｎｅｗ  ｃｏｍｐｕｔｅｒｓ  ａｎｄ  ｐｒｉｎｔｅｒｓ．」をもとに、別のターゲット言語辞書２２の使用例を示す。この例文に出現する「ｂｕｙ」、「ａｎｄ」および「ｃｏ  ｍｐｕｔｅｒ」の訳語のひとつとして妥当であると考えられる「買う」、「及び」、そして「コンピュータ」のターゲット言語辞書２２における記述を見る（リスト１８の２２〜４９行目）
【０３０２】
このターゲット言語辞書２２の２７行目で動詞「買う」の同義語として「購入する」があることを示し、２９〜３０行目で名詞に変換された（名詞化された）場合の訳語を示している。さらに、各単語には「属性」が付加されており、たとえば「買う」は一般的に使われるもの（ｇｅｎｅｒａｌ）だが、「購入する」はやや形式的な（ｆｏｒｍａｌ）言い方であることを示している。
【０３０３】
３１行目からは単語「コンピュータ」に関連する単語の記述をしている。「コンピュータ」と最後の長音（音引き）を付加しないもの、「電子計算機」と元々から日本語として使われていた単語を用いたもの、その省略形である「電算機」、さらには学術的な場面で使われることがある「計算機」という訳語をそれぞれの特徴を表す属性を付けて記述している。
【０３０４】
４０行目からは同様に接続詞「及び」に関する記述である。４４行目と４５行目で、「及び」と「および」は異綴語の関係にあること、さらに、４７行目からは、同義語として「及び」のほか「と」や「に加え」もあることを示している。
【０３０５】
このように、ターゲット言語辞書２２に関連する単語を記憶しておくことにより、対訳辞書２１には、代表的な訳語（「買う」、「コンピュータ」、「及び」など）だけを訳語として定義し、それ以外の同義語はターゲット言語辞書２２を参照すればよいことになる。こうしておくことにより、対訳辞書２１の情報の重複を避け、保守や改良が容易になる。
【０３０６】
たとえば、対訳辞書２１に「ｂｕｙ」という単語と「ｐｕｒｃｈａｓｅ」を登録した場合、いずれの単語にも「買う」「購入する」といった訳語を選択肢として利用者に提供すべきである。従来の方法では、たとえばリスト１８のようにｂｕｙに対してもｐｕｒｃｈａｓｅに対しても同じ訳語を記述しなければならない。
2005031922.tif 000064
【０３０７】
しかし、本発明の方法を使えば、「買う」または「購入する」のいずれかを対訳辞書２１にリスト１３の７３〜７８行目ように記述しておけばすむわけで、記述量が少なくてすむ。また、訳語の追加、削除、変更などを行う場合、従来の対訳辞書では、ｂｕｙとｐ  ｕｃｈａｓｅの両方に対して行わなければならない。たとえば、新たに「購買する」という訳語を加えたいとすると、これは見出し語ｂｕｙの定義と、見出し語ｐｕｒｃｈａｓｅの定義の両方に訳語を加える必要がある。これに対して本翻訳装置の枠組みにおいては、ターゲット言語辞書２２に同義語「購買する」を追加するだけですむ。
【０３０８】
３−５−２−８．訳語付加変形の例  −  ターゲット言語辞書の利用  −  属性による異綴語および同義語の選択
ターゲット言語辞書２２にある単語の関係や単語に付加された属性は、利用者が望む種類の訳語を一斉に指定するための助けとして利用することもできる。このために、たとえば図２８のような画面を用いることができる。
【０３０９】
図２８の例では、同様の機能の例として、次のような選択肢を提示している。
・フォーマルな、どちらかというと文書で使われることの多い表現を用いるか、あるいは日常語でよく使われる表現を用いるか。翻訳装置側の処理としては、この指定によってリスト１８のターゲット言語辞書の各行のうち属性ｆｏｒｍａｌがついている単語を優先するか、属性ｇｅｎｅｒａｌがついている単語を優先するかを判断する。
【０３１０】
・接続詞の訳語を生成するとき、平仮名語を優先するか、漢字交じりの語を優先するか。翻訳装置側の処理としては、属性ｈｉｒａｇａｎａの付いている方を優先するか、属性ｋａｎｊｉ−ｋａｎａが付いている方を優先するか。
【０３１１】
・カタカナ語の最後の長音「ー」を付けるか付けないか。翻訳装置側の処理としては、属性ｗｉｔｈ−ｃｈｏｏｎがついている単語を優先するか、ｗｉｔｈｏｕｔ−ｃｈｏｏｎがついている単語を優先するかを判断する。
【０３１２】
・カタカナだけからなる訳語と漢字語の訳語がある場合どちらを優先するか、あるいは一般的なものをもっとも優先するか。翻訳装置側の処理としては、「一般的なものをもっとも優先する」と指定された場合、ｇｅｎｅｒａｌの属性がついているものがもっとも優先される。「カタカナだけからなる訳語を優先する」と指定された場合、属性ｋａｔａｋａｎａがある訳語が優先される。さらに、「漢字語を優先する」と指定された場合、属性ｋａｎｊｉがついている訳語が優先される。
【０３１３】
３−５−２−９．訳語付加変形の例  −  ターゲット言語辞書の利用  −  利用者による属性の追加
さらに、利用者がこの属性を新たに定義して単語に付加できるようにしておけば、翻訳対象の文書に応じて優先する訳を簡単に、一斉に指定することが可能になる。たとえば、翻訳会社Ｍは、ＡＢＣ社とＸＹＺ社から頻繁に翻訳を依頼されるが、ある原文の単語についてはＡＢＣ社の指定する訳語とＸＹＺ社の指定する訳語が異なるといった場合、「ａｂｃ」と「ｘｙｚ」という２つの属性を設けて、ＡＢＣ社が指定する訳語に対しては属性ａｂｃを付加し、ＸＹＺ社が指定する訳語に対しては属性ｘｙｚを付加しておけばよい。ＡＢＣ社から依頼された原稿を翻訳する際には、図２８と同じような設定画面を用いて、ａｂｃの属性を持つ訳語を優先するように指定しておけば、属性ａｂｃが指定されたすべての単語に対してこの訳語が優先されるようになる。ＸＹＺ社からの依頼についても同様の操作を行えばよい。
【０３１４】
３−５−２−１０．訳語付加変形の例  −  広範囲に渡るノードの参照
対訳辞書２１の訳語生成規則においては、任意の範囲のノードを参照して、木構造に矛盾が生じない限り、任意の変形（ノードの接続関係や情報の付加、削除）を行うことができる。次に入力例の文１１「Ｖｅｒ  ｉｏｎ  ７．５  ｏｆ  ｔｈｅ  ｓｏｆｔｗａｒｅ  ｗｉｌｌ  ｈａｖｅ  ＹＹＹ  ｓｕｐｐｏｒｔ  ｔｈａｔ  ｓｈｏｕｌｄ  ｂｅ  ｍａｉｎｔａｉｎｅｄ  ｂｙ  ｆｕｔｕｒｅ  ｒｅｌｅａｓｅｓ  ａｓ  ｗｅｌｌ．」を例に、広範囲なノードの参照の例を示す。
【０３１５】
例文１１は構文解析とそれに続く構文規則付随変形の結果、図２９（Ａ）のような構文木となる。なお、この構文木においては、ここでの議論に直接関係ない部分に関する詳細を隠すために三角形を用いている。たとえば、Ｓノードの下にある三角形で、「Ｖｅｒｓｉｏｎ  ７．５  ｏｆ  ｔｈｅ  ｓｏｆｔｗｒｅ」という単語列に対応する部分木を表現している。この部分はこれからの議論の本質には関わりがない。
【０３１６】
この木構造の”ｈａｖｅ”に対応するＶノードの処理に対しては、リスト１３の対訳辞書２１の９４〜９５行目の規則が適用される。この訳語生成規則の条件部においては、”ｈａｖｅ”に対応するＶノードを中心に、上位のＣＬノード、下位のＯノード、さらには、そのＯノードを修飾するＡＮおよびＣＬノード（関係節ノード）までもを条件部に記述している（図２９（Ａ）において太字の○が付いているノード）。各ノードに対する条件がすべて満たされるため、変形が行われ、その結果、図２９（Ｂ）のような構文木になる。これにより、最終的には、「ソフトウェアのバージョン７．５はＸＸＸをサポートするだろう、そしてそれは今後のリリースによっても変わらないはずである。」という訳が生成されることになる。
【０３１７】
３−６．訳語付加変形部の処理手順
上述の対訳辞書付随変形部１６の処理手順を示す。対訳辞書付随変形部１６は、構文規則付随変形部１５から送られてきた木構造（「解析木」）のすべてのノードに対して、図１９の○で囲まれた数字で示すように、子ノードから順番に、また子ノードが複数ある場合は左側の子ノード（第１子）から順にたどり、自分のノードに原文の単語の情報がある場合に対訳辞書２１の情報を参照して、変形（情報の付加を含む）を行う。
【０３１８】
この訳語付加変形は、解析木中の現在処理されているノード（このノードを「解析木カレントノード」と呼ぶことにする）に対応する単語が見出し語となっている、対訳辞書２１中の定義を参照して行われる。リスト１３に数多くの例をあげたように、一般には、ひとつの単語の該当する品詞細分類に対して、複数の訳語生成規則が定義されているため、これらの定義の中から条件部の条件を満たしているものを適用する。条件を満たす訳語生成規則が複数ある場合は、その中からもっとも適するものを選択して適用する。
【０３１９】
適用される訳語生成規則のもっとも一般的なものは、単にノードの訳語情報を付加するものであるが、既に例を見たように、構造を大きく変形する訳語付加変形が適用される場合もある。
【０３２０】
図３０に訳語付加変形部の処理手順の詳細を示す。図３０において、変数ＳＣＯＲＥ、変数ｉ、変数ｊが初期化される（ステップＳ５１）。ｉ番目の訳語変形規則が読み取られ（ステップＳ５２）、品詞細分類が解析木カレントノードに対応する単語の品詞語分類に等しいかどうかが判断される（ステップＳ５３）。それ以外の場合には、ステップＳ５２にリターンされる。品詞細分類が解析木カレントノードに対応する単語の品詞語分類に等しい場合には、条件木ｉと変形木ｉとが生成され、変形木ｉの各ノードに対応する条件木ｉのノードが記憶される（ステップＳ５４）。そして、構文木と条件木とが比較され、条件木ｉの各ノードに対して、対応する構文木のノードが検索され、それが記憶される（ステップＳ５５）。条件木ｉの全てのノードが対応する構文木のノードを持っているかどうかが判断される（ステップＳ５６）。それ以外の場合には、ステップＳ５２にリターンされる。条件木ｉの全てのノードが対応する構文木のノードを持っている場合には、変形部の変形が行えるかどかが判断される（ステップＳ５７）。それ以外の場合には、ステップＳ５２にリターンされる。変形部の変形が行えると判断された場合には、対訳生成規則のスコア（ＴＨＩＳ＿ＳＣＯＲＥ）が計算される（ステップＳ５８）。そして、計算された対訳生成規則のスコア（ＴＨＩＳ＿ＳＣＯＲＥ）がスコアＳＣＯＲＥより大きいかどうかが判断される（ステップＳ５９）。それ以外の場合には、ステップＳ５２にリターンされる。そして、変数ｉがｊに代入され、条件木ｉと条件木ｊと変形木ｉとして記憶される。変数ｉが１つインクリメントされる（ステップＳ６０）。
【０３２１】
全ての規則が終了したかどかが判断され（ステップＳ６１）、全ての規則が終了したら、仮想的なルートノード（ＶＲ）が作成される（ステップＳ６２）。全ての規則が終了していなければ、ステップＳ５２にリターンされる。そして、変形木ｊのルートノードから、上から下、左から右の順に、そのノードに対応する条件木のノードに対応する構文木のノードを構文木から切り離し、仮想的なルートノード（ＶＲ）の下に純にぶら下げられる。そして、合体するノードの場合には、自分の親へのリンクが、合体を示すリンク（図）の点線のリンク）に変えられる。それ以外のノードの場合には、条件木ｊと同じ親子兄弟関係になるように順番に接続される。そして、条件木ｊに記述されていないノードについては、解析木の位置がそのまま保存されて、接続される。
【０３２２】
変数ＳＣＯＲＥは、複数の訳語生成規則が適用可能になった場合、どの規則を選択するかを決めるための評価値を記憶するものである。初期値としては−１を代入しておくが、条件を満たす訳語生成規則についてはスコアが０以上となるため、ひとつでも条件を満たす訳語生成規則があればＳＣＯＲＥの値は０以上となる。
【０３２３】
変数ｉは、検討対象となっている訳語生成規則の番号を示す。最初の訳語生成規則の際はｉの値は０で、次の訳語生成規則に移るたびに１ずつ大きくなる。ｉ番目の訳語変形規則の条件部を表現する木構造を条件木ｉ、同じく変形部を表現する木構造を変形木ｉと書くことにする。
【０３２４】
変数ｊは、もっともスコアの高い訳語生成規則の番号を記憶するための変数である。ｊ番目の訳語変形規則の条件部を表現する木構造を条件木ｊ、同じく変形部を表現する木構造を変形木ｊと書くことにする。
【０３２５】
図３０のステップＳ５４にある、条件木ｉと変形木ｉはそれぞれｉ番目の訳語生成規則の条件部と変形部に対応する木構造である。この図の左側はｉ＝３の時の、リスト１３の４０〜４１行目の訳語生成規則の条件部を示す条件木ｉであり、右側が同じく変形木ｉとなる。図３１の実線の矢印で示すように、この変形木ｉの各ノードには対応する条件木ｉのノードが記憶されている。
【０３２６】
続いて、図３０のステップＳ５５において、構文木と条件木ｉが比較され、条件木ｉの各ノードに対して、それに対応するノードが見つかった場合にそのノードが記憶される。この様子を図３１（Ａ）の条件木ｉから図３１（Ｂ）のＢ構文木への波線の矢印で示した。
【０３２７】
ステップＳ５７の変形部の変形が行えるかのチェックは、通常は常にＹｅｓになり下に進むことになる。ただし、図３１の例のように”ｄｉｒｅｃｔ”に対応するＡノードが修飾するＯノード（”ｃｏｎｔｒｏｌ”）がＶノード（”ｇｉｖｅ”）に合体されることから、ＡノードをＤノードに品詞変換する必要が生じるような場合、ターゲット言語辞書２２を参照して、”ｄｉｒｅｃｔ”の訳語｛直接的｝に対応する副詞があるかをチェックし、この条件が満たされるかを確認する必要がある。なお、「訳語付加変形の例−  ターゲット言語辞書２２の利用  −  品詞変換」で説明したように、このチェックを行わずに、副詞に変換できなかった場合は、そのまま形容詞の訳語｛直接的｝を生成するようにすること可能である。
【０３２８】
ステップＳ５８のＴＨＩＳ＿ＳＣＯＲＥの計算は、たとえば、「条件木ｉに記述されたノードの数をスコアとする」（これを方式Ａとする）、あるいは「条件木ｉに記述されたノードの数と指定された属性の数の和をスコアとする」（これを方式Ｂとする）、また「条件木ｉに記述されたノードの数に所定の係数をかけたものと、指定された属性の数に所定の係数をかけたものの和をスコアとする」（これを方式Ｃとする）などの方法が考えられる。図３１（Ｂ）の構文木に対して、図３１（Ａ）の条件木ｉでは、＄ノードを除いて４つのノードを記述している。また、”ｙｏｕ”、”ｃｏｎｔｒｏｌ”、”ｏｖｅｒ”の３つの属性が指定されている。したがって、ＴＨＩＳ＿ＳＣＯＲＥとしては、方式Ａでは４、方式Ｂでは７となる。ちなみに、リスト１３の３９行目の訳語生成規則のスコアは０（何の制限も記述されていない）となる。
【０３２９】
ステップＳ６０においておこなわれるのは、スコアがこれまでに記憶したもの（条件木ｊおよび変形木ｊとして記憶されている）よりも高い条件木ｉおよび変形木ｉが現れた場合の処理で、これを改めて条件木ｊおよび変形木ｊとして記憶する。
【０３３０】
ステップＳ６２からは、もっともスコアの高い訳語生成規則を適用する部分である（ここまでで適用する訳語生成規則の選択は終わっている）。図３２にここで行われる変形の様子を示す。
【０３３１】
まず、ステップＳ６２において、図３２（Ａ）に示すように仮想的なノード（Ｖｉｒｔｕａｌ  Ｎｏｄｅ、ＶＮ）を設ける。
【０３３２】
続いて、ステップＳ６３において、選択された訳語生成規則ｊに従った木構造の変形が行われる。ここでは、変形木ｊの各ノードに関して、上のノードから、そして左のノード（第１子）から、順に処理が行われる（ただし、合体されるノードがある場合は、第１子の処理を行う前に合体されるノードの処理が行われる）。まず、図３２（Ｂ）にあるように、変形木ｊの＄ノードに対応する条件木ｊの＄ノード、に対応する解析木のノード（すなわちＶノード）が仮想的なノードＶＮの下に移される。この結果Ｖにぶら下がっているノードもすべて移動してしまう。そして、この＄ノードの属性として訳語の｛制御する｝と、ａｂｌｅが付加される。
【０３３３】
変形木ｊの＄ノードにはＯノード（”ｃｏｎｔｒｏｌ”）が合体されるので、図３２（Ｃ）に示すように、このノードに対応する条件木のノードに対応する解析木のノードＯが＄ノードに合体される。
【０３３４】
このとき、Ｏの子ノードは、Ｏの抜けた位置を埋めるようにそのまま上に移動し、新たにＶノード（”ｇｉｖｅ”）の子ノードとなる。ただし、ＡノードがＶノードの子になる場合は、Ｄノードに変わらなければならないので（動詞を修飾するのは副詞なので）、ノードのラベルがＤに変わり同時に訳語も｛直接｝に変更される。この変形（訳語の「副詞化」）は、ターゲット言語辞書２２を参照することによって行われる。
【０３３５】
続いて、図３３（Ａ）のように、変形木ｊの＄ノードの各子ノード  −  Ｓ（”ｏｂｊｅｃｔ”）、Ｏ２（”ｙｏｕ”）、Ｐ（”ｏｖｅｒ”）  −  について順に変形が行われるが、ここでは木構造の親子関係の変更はない。しかし、Ｓについては送りが｛￣を使えば｝に変更され、Ｏ２の訳語は何もなくなり（｛｝）、Ｐの訳語は｛を｝となる。
【０３３６】
以上で、ステップＳ６３の処理が終了し、最後にステップＳ６４の処理を行う。この様子を図３３（Ａ）、図３３（Ｂ）に示す。この図に示すように、ＶＮの下にあった構文木のＶノードはその子ノードとともに、構文木のＣＬノードの下の、元々あった位置に戻される。
【０３３７】
上記の例は、訳語生成規則の＄ノードが条件木のルートノードの場合であったが、条件木の＄ノードの上に上位ノードが存在する場合は、一番上位のノードを上記の＄ノードにあたるものとして処理することにより、まったく同じ手順で処理できる。たとえば、リスト１３の９４〜９５行目の訳語生成規則のような規則の場合、＄ノード（Ｖノードに対応する）の親ノードであるＣＬノードから下の部分木について、処理が行われることになる。
【０３３８】
３−７．前・後置詞付加変形部
前・後置詞付加変形部１７では、対訳辞書付随変形部１６から出力される木構造を受け取り、前・後置詞生成データベース２４を参照して、前・後置詞の付加や活用語の活用処理が行われる。
３−７−１．前・後置詞生成データベースの形式
リスト２０は、この前・後置詞生成データベース２４の一例を示す。
2005031922.tif 000065
【０３３９】
実現例の前・後置詞生成データベースは「属性指定」「変形の種類」「型指定」「選択条件」「付加文字列」の５つの欄から成り、それぞれの欄はひとつ以上の空白で区切られている。
【０３４０】
「属性指定」欄はどのような属性がある場合に規則を実行するか示す条件である。２￣４行目の例では属性としてｐａｓｓｉｖｅ（受け身）が指定されている場合の記述であり、６〜８行は「ｐａｓｓｉｖｅ」と「ｐａｓｔ」（過去）が両方指定されている場合の記述であることを示す。
【０３４１】
「変形の種類」の欄はどのような変形を行うかを示すもので、リスト２０の例では、動詞や形容詞など活用するものに対して適用し活用させて文字列を追加する「ｉｎｆｌｅｃｔ」か、後置詞として文字列を追加する「ｐｏｓｔ」のいずれかを指定する。
【０３４２】
「条件」欄は、「ｉｎｆｌｅｃｔ」の場合にどのような活用型の単語に対して適用するかを示す。「１ｄａｎ」は上一段活用あるいは下一段活用の動詞に対して、「ｓａｈｅｎ」はサ行変格（サ変）活用の動詞に対して適用されることを示すものである。「＊」はそれより上で指定されていないすべての活用型に対して適用されることを示す。
【０３４３】
「型指定」欄は活用語をどのような活用形に活用させるかを示す。ｍｉｚｅｎは未然形に活用させることを、ｒｏｏｔは語幹のみを使うことを表す。
【０３４４】
「付加文字列」欄には、活用したあとに付加する「送り」を表す。「＿」に続く文字列は、本体部に付加されることを意味し、「￣」に続く文字列は、後置詞として付加されることを示す。
【０３４５】
３−７−２．前・後置詞生成データベースによる活用語の処理
具体例を用いて、活用語がどのように処理されるかを示す（図１９−図２０参照）。検討中の例文１ではＶノード（ｌｉｍｉｔ）にｐａｓｓｉｖｅの属性がついている。現在選択されている訳は「制限する」であり、これはサ変動詞である。したがって、リスト２０の３行目の規則が適用可能になり、「制限する」の語幹「制限」に、「される」が付加されて、訳語が「制限される」と変更される。
【０３４６】
別の例として、たとえば「ａｂａｎｄａｎ」に対応するノードに「ｐａｓｓｉｖｅ」の情報が付いており、訳語として「捨てる」（下一段活用の動詞）が選ばれている場合、２行目が適用されて、「捨てる」が未然形（ｍｉｚｅｎ）に活用されて「捨てられる」という訳語が生成される。「ａｂａｎｄａｎ」の訳語として「廃棄する」（サ変活用の動詞）という訳語が選ばれている場合、語幹「廃棄」に「される」が付加されて「廃棄される」となる。
【０３４７】
リスト２０の６行目〜８行目の例は、ｐａｓｓｉｖｅの他にｐａｓｔ（過去）の属性がついている場合に使われる例である。これに従えば、「制限する」や「廃棄する」（サ変動詞）は７行目の規則により語幹に「された」が付加されて、「制限された」「廃棄された」となる。また、「捨てる」（下一段動詞）は、６行目の規則により「捨てられた」となる。
【０３４８】
３−７−３．前・後置詞生成データベースによる非活用語の処理
１０〜１１行目の例は、ノードがｓｕｂｊあるいはｏ  ｂｊという属性を持っていた場合、後置詞（一般的に、ある単語の後ろに置かれる文字列。日本語の場合は「送り」と呼ばれることが多い）として、「は」あるいは「を」を付加するための規則である（ｐｏｓｔは単に後置詞として付加することを意味する）。対訳辞書２１に後置詞の指定があれば、それが使われるが、ない場合はこのデータベースを参照して「を」が付加される。「￣」はすべての場合にマッチすることを示す。型指定欄の０（ゼロ）は、日本語の名詞は活用しないことを表している。
【０３４９】
検討中の例文１（図１９−図２０）では、  Ｓノードが１２行目に、Ｏノードが１３行目にマッチするが、Ｖノード（ｌｉｍｉｔ）の対訳辞書２１における記述で、すでにＳおよびＯの送りが指定されているので、前・後置詞生成データベース２４の記述は無視されることになる。
【０３５０】
３−７−４．前・後置詞付加変形部の処理手順
上で具体例を見た、前・後置詞付加変形部の処理手順は次のとおりである。
（１）  構文木を図１８の○で囲まれた数字で示すように、子ノードから順番に、また子ノードが複数ある場合は左側の子ノード（第１子）から順にたどり、各ノードにおいて以下の処理を行う。
（１−１）  該当ノードのもつ属性を原単語、訳語、前・後置詞を除きすべて集め、それらを合わせたものが前・後置詞生成データベースの「属性指定」欄とマッチした場合、「変形の種類」で指定された変形を「条件」に指定された条件に従って、「型指定」および「付加文字列」に指定された操作を行って、前・後置詞を付加する。「変形の種類」はターゲット言語に依存した処理になるため、それぞれの言語に必要な処理をプログラムで行う必要がある。たとえば、英日翻訳の活用語の場合、公知の手法によって動詞や形容詞を活用させて、それに語尾を付加するといった操作が必要になる。
【０３５１】
なお、前記前・後置詞生成データベースには、ユーザが自由に助動詞、助詞、時制などの翻訳の仕方をカスタマイズすることができる。
【０３５２】
３−８．生成部
３つの変形部（構文規則付随変形部１５、対訳辞書付随変形部１６、前・後置詞付加変形部１７）に続く生成部１８では、これまでに情報を付加された構文木を受け取って、木構造の各ノードを図１９と同じように、左下のノードから順番にたどり、訳語を生成する。
【０３５３】
この結果、例文１に関しては、次の訳が生成されることになる。
（訳文）
簡単には解消できない依存関係があるため、その互換性が制限される。
【０３５４】
３−９．ソース言語辞書、対訳辞書、ターゲット言語辞書の役割分担
ソース言語辞書２０あるいはターゲット言語辞書２２と、対訳辞書２１に記述する内容は、実現する翻訳装置の要件に応じて変更してもよい。
【０３５５】
上記の実現例では、ソース言語の単語の情報（活用、品詞、品詞細分類、抵抗値など）をソース言語辞書２０に記述した。これは、活用情報は本来的にはソース言語のみに関わる情報であり、ソース言語辞書２０に記述した方が翻訳装置全体としての整合性がとれるためである。
【０３５６】
しかし、従来の機械翻訳装置においては、ソース言語辞書２０およびターゲット言語辞書２２は用いられていないため、すべての情報を対訳辞書２１に記述していた。このため、こういった翻訳装置に対して、新たにソース言語辞書２０あるいはターゲット言語辞書２２（あるいはこの両方）を加える場合は、これまでに見た例のように、従来の翻訳装置において対訳辞書２１に書かれた内容はそのままにして、関連単語（異綴語、同義語、類義語、反意語、品詞変換された語など）のみをソース言語辞書２０記載した方が、変更が少なくてすむ。また、このように辞書を構成していけば、従来の辞書に徐々に関連語を付加する形で、情報を増やしていくことができる。
【０３５７】
したがって、本発明で提案したソース言語辞書２０、対訳辞書２１、ターゲット言語辞書２２の内容を、以下のような形態で実現してもよい。
【０３５８】
（１）  上で見た実現例でソース言語辞書２０に記載したソース言語に関する活用および関連語の情報語を、対訳辞書２１に記述する。
（  ２）  上で見た実現例でターゲット言語辞書２２に記載したターゲット言語に関する活用および関連語の情報語を、対訳辞書２１に記述する。
（３）  上で見た実現例でソース言語辞書２０に記載したソース言語に関する活用および関連語の情報と、ターゲット言語辞書２２に記載したターゲット言語に関する活用および関連語の情報の両方を、対訳辞書２１に記述する。
【０３５９】
（３）の形態は、従来の対訳辞書２１のみを用いた翻訳装置と装置構成は同じになるが、対訳辞書２１の中に、ソース言語の関連語の情報あるいはターゲット言語の関連語の情報、あるいは両言語の関連語の情報を記述する点で、従来の翻訳装置とは異なっている。このように、本発明で提案した、ソース言語およびターゲット言語に関する活用および関連語の情報の記載は、実現上の形態にとらわれる必要はなく、それぞれの翻訳装置において過去の資産および今後の作業量を検討してどの辞書にどの情報を含めるかを決定すればよい。
【０３６０】
３−１０．辞書の分割による多言語翻訳装置への応用
本翻訳装置で利用する辞書を、ソース言語辞書２０、対訳辞書２１、ターゲット言語辞書２２の３種類に分けたことにより、言語Ａから言語Ｂへの翻訳装置（これを「Ａ→Ｂシステム」と表す）用の辞書を作成しておけば、Ｂ→Ａシステム用の辞書を作成する際には、ソース言語辞書２０としては、既にＡ→Ｂシステム用に作成した言語Ｂの活用や関連語について記述したターゲット言語辞書２２を元にして開発することができる。
【０３６１】
Ａ→Ｂシステムのターゲット言語辞書２２に、Ｂ→Ａシステムを実現するために必要なすべての情報が入っているとは限らないが、Ａ→Ｂシステム構築時にＢ→Ａシステムの構築について考慮しておけば、Ａ→Ｂシステムのソース言語辞書２０とＢ→Ａシステムのターゲット言語辞書２２を共通のものとして作成することも可能である。同様に、Ａ→Ｂシステムのターゲット言語辞書２２とＢ→Ａシステムのソース言語辞書２０を共通のものとすることも可能であるので、Ｂ→Ａシステムを作成するのに、対訳辞書２１だけを新たに作成すればよいことになる。
【０３６２】
４．インタフェース機能
４−１．関連語による訳語選択肢の階層化
【０３６３】
機械翻訳装置のインタフェースとして、利用者にソース言語の単語に対して、図３５のような訳語の選択肢を提示することが公知の手法として知られている。しかし、従来の翻訳装置ではすべての訳語が同列に提示される。たとえば、図３４の例は、接続詞ａｎｄの訳語の選択肢を提示したものであるが、訳語「および」の異綴語の「及び」も、同義語だがニュアンスが若干異なる「かつ」あるいはその異綴語の「且つ」、さらにはややインフォーマルな印象を受ける「と」がまったく並列に表示され、表示されている語の間の関係はまったく無視されている。
【０３６４】
これに対して、本発明に基づく実現では、ターゲット言語辞書に、異綴語や同義語などの情報を入れておくことにより、たとえば図３５に示すように、異綴語に関しては、最初は代表となる訳語（この例の場合は「および」）のみを表示し、その代表の訳語を選んだ際に、図３６に示すように他の選択肢を表示し、必要ならば別の候補（この場合は「及び」）を選択できるようになる。
【０３６５】
ａｎｄの場合は意味がほぼひとつに定まるが、複数の意味が大きく異なる訳語を持つ単語の場合、図３７のような訳語の選択肢の提示を行うことが好ましいであろう。この例に用いた英単語ｃｈａｎｇｅに関しては、「変化」「交替」「移動」「（音楽の）転調」「（数学の）順列」などの意味がある。図３７において、利用者は「交替」の意味を選択したが、訳語としては類義語の「取替」を選択し、しかも表記としては「取替」の他に提示された３つの選択肢（「取替」を含めると合計４つ）の中から、「取りかえ」を選択しているところである。
【０３６６】
このように、ターゲット言語辞書２２を用いることにより、訳語選択の選択肢に構造を入れ、よりわかりやすい選択肢を利用者に提示することが可能になる。
【０３６７】
指定されたノードに対応する単語に関して、階層化された訳語の選択肢を提供するための処理手順を説明する。
【０３６８】
まず、訳語の選択肢を階層的に表示するために、木構造を利用する。たとえば、図３６のような階層的な表示の場合、次のような木構造を作成しておけばよい（図３８）。
2005031922.tif 000066
【０３６９】
上記の木構造では、仮想的なノード＄の子ノードとして｛と｝、｛および｝、｛そして｝などがあり、｛および｝の異綴語｛及び｝は｛および｝のノードの子ノードとして記述している。
【０３７０】
このような木構造を準備しておけば、表示の際には、まず＄ノードの子ノードを順にたどって表示し、その中の特定の単語が選択された場合、その語に子ノード（＄から見れば孫ノード）があれば、その右に（一般には複数個の）子ノードを表示すればよい。以下、階層がいくら深くなっても同様の処理が行える。
【０３７１】
階層的訳語選択の木構造を作成するには、たとえば次のような手順で処理を行えばよい。
（１）  階層的訳語選択用の木構造のルートノード（ラベル＄）を作成する（図３９（Ａ））。
（２）  ノードＮに関して、対訳辞書中の訳語生成規則のうち条件部の条件が満たされるもの変形部の＄に対応する訳語をすべて集め、それらを＄ノードの子ノードとして木構造に付加する。リスト１３の対訳辞書の場合、ａｎｄに関する訳語生成規則はひとつだけで訳語は｛と｝であるので、図３９（Ｂ）のようになる。
（３）  ＄ノードの各子ノードに対して、ターゲット言語辞書を参照して、同義語を弟ノード（自分からみて右側に位置するノード）として木構造に追加する。リスト１８のターゲット言語辞書の場合、この辞書の見出し語に「と」がないため、「と」を同義語としてもつ見出し語を検索する。すると、４０行目の見出し語「および」の定義中に「と」が同義語（ｓｙｎｏｎｙｍ）として定義されている。したがって、「および」の同義語をすべての弟ノードとして木構造に追加する（図３９（Ｃ））。
（４）  ＄の各子ノードに対してターゲット言語辞書を参照して、異綴語がないかを確認し、ある場合は、自分の子ノードとして木構造に追加する。リスト１８のターゲット言語辞書の場合、「および」の異綴語に「及び」が、「かつ」の異綴語に「且つ」が定義されているので、この２つがそれぞれのノードの子ノード（＄の孫ノード）として加えられる（図３９（Ｄ））。
【０３７２】
図３７のような、複数の異なる意味を持つような単語に関しては、対訳辞書に複数の訳語が記載されていることから、＄ノードの子ノードとして、同義語ではなく、対訳辞書に記載されたそれぞれの訳語を追加していけばよい。各子ノードに関する処理は、上記の処理と同様で、まず、ターゲット言語辞書２２を参照して同義語を見つけ、その各同義語を、自分の子ノード（＄ノードの孫ノード）として木構造に追加する。さらに、各孫ノードに関して、異綴語がないか検索し、ある場合は、異綴語を＄ノードの孫ノードの子ノードとして追加すればよい。
【０３７３】
以上説明したように、本発明に係わる機械翻訳装置は、ソース言語の単語ごとに、見出し語と、文法上の属性と、意味上の属性と、訳語生成規則とを登録した対訳辞書２１と、ソース言語の単語ごとに、見出し語と、文法上の属性と、意味上の属性と、存在する場合の関連語を記述したソース言語辞書２０と、ターゲット言語の単語ごとに、見出し語と、文法上の属性と意味上の属性と、存在する場合の関連語を記述したターゲット言語辞書２２とが備えられる。このため、ソース言語およびターゲット言語の内部の単語関係の知識を利用して、自然な訳語を出力することができる。
【０３７４】
なお、この発明は、上述した実施形態に限定されるものではなく、この発明の要旨を逸脱しない範囲内で様々な変形や応用が可能である。
【０３７５】
【発明の効果】
本発明の機械翻訳装置によれば、ソース言語の単語ごとに、見出し語と、文法上の属性と、意味上の属性と、訳語生成規則とを登録した対訳辞書の他に、ソース言語の単語ごとに、見出し語と、文法上の属性と、意味上の属性と、存在する場合の関連語を記述したソース言語辞書と、ターゲット言語の単語ごとに、見出し語と、文法上の属性と、意味上の属性と、存在する場合の関連語を記述したターゲット言語辞書とが備えられている。これにより、異綴語や同義語に対して、適切な翻訳処理を行うことができる。また、より自然な翻訳文が生成できるとともに、対訳辞書の負担が軽減でき、さらに、辞書のメインテナンスの向上が図れ、多言語化が容易になる。また、ユーザの要求に応じて、翻訳結果を選択することができる。
【０３７６】
また、本発明の機械翻訳装置では、前記対訳辞書は、見出し語に対応するノードを基準に、ノードに対応する単語、あるいはそのノードの構文上あるいは意味上の属性を参照できるようにしている。これにより、見出し語のノードの構文上あるいは意味上の属性を辿りながら、見出し語に関連する語を参照することができる。
【０３７７】
また、本発明の機械翻訳装置では、ソース言語辞書およびターゲット言語辞書中に関連語を記述し、辞書を参照する際に、当該単語に関連する単語の情報を必要に応じて出力するようにしている。このような関連語により、見出し語に関連する語を参照しながら、翻訳処理を行うことができる。
【０３７８】
また、本発明では、前記対訳辞書に、２語以上の単語から成るがまとまりとして特定の意味を持つ複合語を登録する際に、この複合語の構文的構造を記述できる機能を有する。また、本発明では、前記対訳辞書に、２語以上の単語から成りまとまりとして特定の意味を持つ複合語を登録する際に、単語が集まって構成される句を登録できる機能を有する。このように、複合語を対訳単語辞典に登録する際に、変形規則が記述できる。この変形規則に従って木構造の変換を行って、複合語の翻訳を行うことで、より自然な翻訳を行うことができるようになる。
【０３７９】
また、本発明では、前記対訳辞書に、２語以上の単語から成りまとまりとして特定の意味を持つ複合語を登録する際に、ある単語を起点として想定される構文木に部分的にマッチするひとつあるいは複数のノードのみを記述して、実際に生成された構文木と照合し、マッチしないノードに関しては、対応する単語の項目に書かれている訳語を使用する機能を有する。これにより、複合語を自然な表記で翻訳することができるようになる。
【０３８０】
また、本発明では、複数の対訳辞書を用いる場合、辞書に付加されている優先度の設定に検索停止の属性を付加し、その辞書に登録されている単語あるいは句に関しては、その辞書よりも優先度の低い辞書に関しては照合を行わないようにしている。また、本発明では、複数の対訳辞書を用いる場合、任意の辞書の任意の単語に関して、登録されている単語あるいは句に、検索停止の属性を付加し、その単語に関しては、その辞書よりも優先度の低い辞書に関しては照合を行わないようにしている。これにより、無駄な照合が行われることがなくなる。
【０３８１】
また、本発明では、２語以上の単語から成りまとまりとして特定の意味を持つ複合語に対して、分解不可能の属性を付加し、その単語に関しては、その単語を構成する単語を個別に辞書引きした結果を無視するようにしている。これにより、より自然な言語で翻訳を行うことができる。
【０３８２】
また、本発明では、前・後置詞生成データベースに、ユーザが自由に助動詞、助詞、時制などの翻訳の仕方をカスタマイズできる機能を有する。これにより、ユーザの嗜好に合わせて、翻訳の仕方がカスタマイズできる。
【０３８３】
また、本発明では、前記前処理部に、前記対訳辞書と、前記ソース言語辞書を参照することにより、スペルチェックを行い、自動的に誤りを訂正してから翻訳処理を行うことができる。これにより、スペルミスがあっても、正しい翻訳結果を得ることができる。
【０３８４】
また、本発明では、前記変形部に、前記対訳辞書に登録された訳語生成規則に基づいて前記ターゲット言語辞書を参照して訳語情報を付加する際に、訳語の品詞変換を行う機能を有する。このような品詞変換を行うことにより、不自然な言い回しがより自然な言い回しに変わり、自然な翻訳結果を得ることができる。
【０３８５】
また、本発明では、前記変形部で、前記対訳辞書に登録された訳語生成規則に基づいて前記ターゲット言語辞書を参照して訳語情報を付加する際に、訳語生成規則を適用する条件を直接満たすことができない規則に対して、前記ソース言語に記述された関連単語の情報を参照して条件に記述された単語の異綴語あるいは同義語がないかを調べ、これがある場合には、訳語生成規則を適用するようにしている。これにより、対訳辞書には見出し語がない単語がある場合でも、異綴語あるいは同義語を参照しながら、翻訳を行うことができる。
【０３８６】
本発明では、前記変形部で、前記対訳辞書に登録された訳語生成規則に基づいて前記ターゲット言語辞書を参照して訳語情報を付加する際に、ノードに付加される訳語の情報を、前置詞と、後置詞と、接頭辞と、接尾辞とに分割して記憶するようにしている。これにより、２つに分かれるような言葉も翻訳することができる。
【０３８７】
また、本発明では、前記ユーザインタフェース部が提供する訳語の選択を行う機能において、前記ターゲット言語辞書を参照して、訳語に対して、その関連語を分類して表示して利用者が選択可能にする機能を有している。これにより、フォーマルな言い回しかどうかによって翻訳を変えたり、表記をユーザの好みに合わせたりすることが簡単に行える。
【０３８８】
また、本発明では、前記ユーザインタフェース部が提供する対訳辞書へ単語情報を登録する機能において、複合語を登録する場合、登録単語の構文解析を行い、その複合語の構文的構造を把握し、その構文構造とともに辞書に登録する機能を有する。これにより、ユーザは、通常の英和辞典のように、複合語を自然な表記で登録することができるようになる。
【図面の簡単な説明】
【図１】本発明に係る機械翻訳装置の一実施形態のブロック図である。
【図２】木構造の例を説明するための図である。
【図３】木構造の例を説明するための図である。
【図４】ソース言語の単語の並びを示す木構造の図である。
【図５】前処理の説明に用いるフローチャートである。
【図６】前処理の説明に用いるフローチャートである。
【図７】前処理でのスペルチェックの説明に用いるフローチャートである。
【図８】形態素解析の説明に用いる木構造の図である。
【図９】構文解析の説明に用いるフローチャートである。
【図１０】構文解析の説明に用いる木構造の図である。
【図１１】構文解析の説明に用いる木構造の図である。
【図１２】構文解析の説明に用いる木構造の図である。
【図１３】格構造の説明に用いる木構造の図である。
【図１４】格構造への変換の説明に用いるフローチャートである。
【図１５】格構造への変換の説明に用いる木構造の図である。
【図１６】格構造への変換の説明に用いる木構造の図である。
【図１７】格構造への変換の説明に用いる木構造の図である。
【図１８】格構造への変換の説明に用いる木構造の図である。
【図１９】翻訳処理の説明に用いる木構造の図である。
【図２０】翻訳処理の説明に用いる木構造の図である。
【図２１】翻訳処理の説明に用いる木構造の図である。
【図２２】翻訳処理の説明に用いる木構造の図である。
【図２３】翻訳処理の説明に用いる木構造の図である。
【図２４】翻訳処理の説明に用いる木構造の図である。
【図２５】翻訳処理の説明に用いる木構造の図である。
【図２６】翻訳処理の説明に用いる木構造の図である。
【図２７】翻訳処理の説明に用いる木構造の図である。
【図２８】訳語選択の画面の説明図である。
【図２９】翻訳処理の説明に用いる木構造の図である。
【図３０】木構造の変換の説明に用いるフローチャートである。
【図３１】翻訳処理の説明に用いる木構造の図である。
【図３２】翻訳処理の説明に用いる木構造の図である。
【図３３】翻訳処理の説明に用いる木構造の図である。
【図３４】同義語を単位として分類する訳語の選択肢の提示例を示す図である。
【図３５】同義語を単位として分類する訳語の選択肢の他の提示例を示す図である。
【図３６】同義語を単位として分類する訳語の選択肢の提示例を示す図である。
【図３７】同義語を単位として分類する訳語の選択肢の提示例を示す図である。
【図３８】同義語を単位として分類する場合の説明に用いる木構造の図である。
【図３９】同義語を単位として分類する場合の説明に用いる木構造の図である。
【図４０】同義語を単位として分類する場合の説明に用いる木構造の図である。
【符号の説明】
１…翻訳エンジン部、２…インタフェース部、１１…前処理部、１２…形態素解析部、１３…構文解析部、１４…変形部、１５…構文規則付随変形部、１６…対訳辞書付随変形部、１７…前・後置詞付加変形部、１８…生成部、１９…翻訳データ出力部、２０…ソース言語辞書、２１…対訳辞書、２２…ターゲット言語辞書、２３…構文変換データベース、２４…前・後置詞生成データベース
【図１】
2005031922.tif 000067
【図２】
2005031922.tif 000068
【図３】
2005031922.tif 000069
【図４】
2005031922.tif 000070
【図５】
2005031922.tif 000071
【図６】
2005031922.tif 000072
【図７】
2005031922.tif 000073
【図８】
2005031922.tif 000074
【図９】
2005031922.tif 000075
【図１０】
2005031922.tif 000076
【図１１】
2005031922.tif 000077
【図１２】
2005031922.tif 000078
【図１３】
2005031922.tif 000079
【図１４】
2005031922.tif 000080
【図１５】
2005031922.tif 000081
【図１６】
2005031922.tif 000082
【図１７】
2005031922.tif 000083
【図１８】
2005031922.tif 000084
【図１９】
2005031922.tif 000085
【図２０】
2005031922.tif 000086
【図２１】
2005031922.tif 000087
【図２２】
2005031922.tif 000088
【図２３】
2005031922.tif 000089
【図２４】
2005031922.tif 000090
【図２５】
2005031922.tif 000091
【図２６】
2005031922.tif 000092
【図２７】
2005031922.tif 000093
【図２８】
2005031922.tif 000094
【図２９】
2005031922.tif 000095
【図３０】
2005031922.tif 000096
【図３１】
2005031922.tif 000097
【図３２】
2005031922.tif 000098
【図３３】
2005031922.tif 000099
【図３４】
2005031922.tif 000100
【図３５】
2005031922.tif 000101
【図３６】
2005031922.tif 000102
【図３７】
2005031922.tif 000103
【図３８】
2005031922.tif 000104
【図３９】
2005031922.tif 000105
【図４０】
2005031922.tif 000106