(57)【特許請求の範囲】
【請求項１】
機械翻訳プログラム、翻訳に必要な語彙・規則を蓄積した翻訳辞書部を記憶した記憶装置と、翻訳対象の第一言語の原文をデータとして入力する入力装置と、翻訳後の第二言語の訳文を出力する出力装置と、前記機械翻訳プログラムを演算実行するプロセッサとを備えた機械翻訳装置において、前記入力装置から入力された第一言語文書の文の先頭に引用記号が存在するか否かを判定し引用記号が存在するときは文の先頭からの引用記号の個数を引用形式の階層と判定する文書階層判定部と、前記文書階層判定部で判定された引用形式の階層ごとに第一言語文書の文を格納する文書記憶部と、前記入力装置から入力された第一言語文書の文を翻訳する際に用いられる翻訳知識情報を格納するための翻訳知識情報格納部と、前記文書記憶部に格納された第一言語文書の文のうち引用形式の階層が深い順に前記翻訳辞書部の語彙や変換規則及び前記翻訳知識情報格納部に格納された翻訳知識情報を利用して翻訳を行いその翻訳の際に使用した前記翻訳辞書部の語彙や変換規則から訳語を選択する際に用いた翻訳知識情報を取り出し前記翻訳知識情報格納部に格納し翻訳結果を前記出力装置に出力する翻訳部とを備えたことを特徴とする機械翻訳装置。
【請求項２】
前記文書階層判定部は、前記入力装置から入力された第一言語文書の文の出現順序を前記文書記憶部に記憶し、前記出力部は第一言語の文書を構成する各文の出現順序と同じ順序で翻訳結果の文を出力することを特徴とする請求項１に記載の機械翻訳装置。
【請求項３】
機械翻訳プログラム、翻訳に必要な語彙・規則を蓄積した翻訳辞書部を記憶した記憶装置と、翻訳対象の第一言語の原文をデータとして入力する入力装置と、翻訳後の第二言語の訳文を出力する出力装置と、前記機械翻訳プログラムを演算実行するプロセッサとを備え、前記記憶装置は、前記入力装置から入力された第一言語文書の文の先頭に存在する引用記号の個数を引用形式の階層として前記引用形式の階層ごとに第一言語文書の文を格納する文書記憶部と、前記入力装置から入力された第一言語文書の文を翻訳する際に用いられる翻訳知識情報を格納するための翻訳知識情報格納部とを有した機械翻訳装置を用いて機械翻訳を行う機械翻訳方法において、前記入力装置から入力された第一言語文書の文を前記プロセッサに入力し、前記プロセッサは、前記入力装置から入力された第一言語文書の文の先頭に引用記号が存在するか否かを判定し、引用記号が存在するときは文の先頭からの引用記号の個数を引用形式の階層と判定し、判定した引用形式の階層ごとに前記文書記憶部に第一言語文書の文を格納し、前記文書記憶部に格納された第一言語文書の文のうち引用形式の階層が深い順に前記翻訳辞書部の語彙や変換規則及び前記翻訳知識情報格納部に格納された翻訳知識情報を利用して翻訳を行い、その翻訳の際に使用した前記翻訳辞書部の語彙や変換規則から訳語を選択する際に用いた翻訳知識情報を取り出し前記翻訳知識情報格納部に格納し、翻訳された翻訳結果を前記出力装置に出力することを特徴とする機械翻訳方法。
【請求項４】
機械翻訳プログラム、翻訳に必要な語彙・規則を蓄積した翻訳辞書部を記憶した記憶装置と、翻訳対象の第一言語の原文をデータとして入力する入力装置と、翻訳後の第二言語の訳文を出力する出力装置と、前記機械翻訳プログラムを演算実行するプロセッサとを備えたコンピュータに用いられる機械翻訳プログラムにおいて、前記記憶装置は、入力された第一言語文書の文の先頭に存在する引用記号の個数を引用形式の階層として前記引用形式の階層ごとに第一言語文書の文を格納する文書記憶部と、前記入力装置から入力された第一言語文書の文を翻訳する際に用いられる翻訳知識情報を格納するための翻訳知識情報格納部とを有し、前記コンピュータに、前記入力装置から入力された第一言語文書の文を入力する手順と、前記入力装置から入力された第一言語文書の文の先頭に引用記号が存在するか否かを判定し引用記号が存在するときは文の先頭からの引用記号の個数を引用形式の階層と判定する手順と、判定された引用形式の階層ごとに前記文書記憶部に第一言語文書の文を格納する手順と、前記文書記憶部に格納された第一言語文書の文のうち引用形式の階層が深い順に前記翻訳辞書部の語彙や変換規則及び前記翻訳知識情報格納部に格納された翻訳知識情報を利用して翻訳を行う手順と、その翻訳の際に使用した前記翻訳辞書部の語彙や変換規則から訳語を選択する際に用いた翻訳知識情報を取り出し前記翻訳知識情報格納部に格納する手順と、翻訳された翻訳結果を前記出力装置に出力する手順とを実行させるための機械翻訳プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子メール送受信ツール、Ｗｅｂブラウザ等において第一言語と第二言語との間の翻訳を行うものに好適な機械翻訳装置、方法及びプログラムに関する。
【背景技術】
【０００２】
近年、パソコンの普及率は高くインターネット環境が整備されるに伴って、電子メールやＷｅｂ（world wide web）サイトを利用した掲示板（以降、Ｗｅｂ掲示板）により海外との情報のやり取りが盛んになってきた。機械翻訳装置による翻訳精度も向上してきており、電子メールソフトやＷｅｂブラウザソフトから機械翻訳プログラムを呼び出して、翻訳処理を行うこともできるようになっている。
【０００３】
ところで、翻訳精度を向上させるために、文脈情報を利用した翻訳方法が採用されることがある。この文書翻訳技術においては、文書全体を前もって解析して各種情報を抽出し、抽出した内容を翻訳に利用したり、文書の翻訳を進めながら翻訳した文の情報を後の文の翻訳に利用する。
【０００４】
また、メール文書やＷｅｂ掲示板の翻訳を向上させるために、翻訳対象の文書以外の関連を有する文書から翻訳処理に利用可能な情報を抽出することにより、翻訳精度を向上させるようにしたものがある（例えば、特許文献１参照）。
【特許文献１】特開２００３−１０８５５３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、文書全体や関連文書を前もって解析して各種情報を抽出し、抽出した内容を翻訳に利用するので、適切な訳語を決定するためには、形態素解析、構文・意味解析、第一言語から第二言語への意味構造変換、構文生成、形態素生成という翻訳処理の各ステップの中で意味構造変換のステップまで行わないと訳語が決定しないなど、実際に翻訳するのと同等のコストがかかってしまう。
【０００６】
また、文書の翻訳を進めながら翻訳した文の情報を後の文の翻訳に利用する場合は、前者の手法のようにコストはかからないが、文の出現順によって翻訳精度が左右されるという問題がある。例えば、電子メールのやりとりを考えた場合、受信したメールを引用して返信を行う際、引用内容の下に返信内容を記述する場合と、引用内容の上に記述する場合、引用の途中に記述する場合など様々な形態が存在する。返信部分を翻訳するうえで、引用部分に翻訳精度を向上させる情報が存在したとしても、引用部分の上に返信部分が記述されていると、その情報を利用できずに翻訳をすることになり、引用の下に記述した場合と比較して翻訳精度が低下するという問題がある。また、引用の途中に記述した場合も、翻訳精度を向上させる情報が存在する位置との関係で、翻訳精度が低下するという問題がある。
【０００７】
このように、電子メールやＷｅｂ掲示板等の電子情報の授受において、文書の内容が同じであっても、文の出現順により翻訳精度が左右されるという問題点があった。また、文書全体を前もって解析した場合には翻訳処理にコストがかかるという問題点があった。
【０００８】
本発明の目的は、電子メールやＷｅｂ掲示板などのやり取りの際に含まれる引用記号を利用して、同一内容の文書が文の出現順に左右されずに翻訳精度を向上させることができる機械翻訳装置、方法及びプログラムを提供することである。
【課題を解決するための手段】
【０００９】
本発明に係る機械翻訳装置は、機械翻訳プログラム、翻訳に必要な語彙・規則を蓄積した翻訳辞書部を記憶した記憶装置と、翻訳対象の第一言語の原文をデータとして入力する入力装置と、翻訳後の第二言語の訳文を出力する出力装置と、前記機械翻訳プログラムを演算実行するプロセッサとを備えた機械翻訳装置において、前記入力装置から入力された第一言語文書の文の先頭に引用記号が存在するか否かを判定し引用記号が存在するときは文の先頭からの引用記号の個数を引用形式の階層と判定する文書階層判定部と、前記文書階層判定部で判定された引用形式の階層ごとに第一言語文書の文を格納する文書記憶部と、前記入力装置から入力された第一言語文書の文を翻訳する際に用いられる翻訳知識情報を格納するための翻訳知識情報格納部と、前記文書記憶部に格納された第一言語文書の文のうち引用形式の階層が深い順に前記翻訳辞書部の語彙や変換規則及び前記翻訳知識情報格納部に格納された翻訳知識情報を利用して翻訳を行いその翻訳の際に使用した前記翻訳辞書部の語彙や変換規則から訳語を選択する際に用いた翻訳知識情報を取り出し前記翻訳知識情報格納部に格納し翻訳結果を前記出力装置に出力する翻訳部とを備えたことを特徴とする。
【発明の効果】
【００１０】
本発明によれば、電子メールやＷｅｂ掲示板などのやり取りの際に含まれる引用記号を利用して、文書の引用形式の階層構造を判断し、引用形式の階層が深い順に翻訳することにより、翻訳処理に要するコストを抑え、引用形式の階層が浅い文の翻訳において、同一内容の文書が文の出現順に左右されずに翻訳精度を向上させることができる。
【発明を実施するための最良の形態】
【００１１】
図１は本発明の実施の形態に係る機械翻訳装置のハードウエア構成を示すブロック構成図である。機械翻訳装置１１は、例えば一般的なコンピュータに機械翻訳プログラムなどのソフトウェアプログラムがインストールされ、そのソフトウェアプログラムが演算制御装置１２のプロセッサ１３において実行されることにより実現される。
【００１２】
演算制御装置１２は機械翻訳に関する各種演算を行うものであり、演算制御装置１２はプロセッサ１３とメモリ１４とを有し、メモリ１４には翻訳に関する機械翻訳プログラム１５が記憶され、プロセッサ１３により処理が実行される際には作業エリア１６が用いられる。演算制御装置１２の演算結果等は出力装置１７である表示装置１８に表示出力され、また、通信制御装置１９を介して通信ネットワークに出力される。
【００１３】
入力装置２０は演算制御装置１２に情報を入力するものであり、例えば、マウス２１、キーボード２２、ディスクドライブ２３、通信制御装置１９から構成され、例えば、マウス２１やキーボード２２は表示装置１８を介して演算制御装置１２に各種指令を入力し、キーボード２２、ディスクドライブ２３、通信制御装置１９は翻訳対象の文書を入力する。
【００１４】
すなわち、ディスクドライブ２３は翻訳対象の文書のファイルを記憶媒体に入出力するものであり、通信制御装置１９は機械翻訳装置１１をインターネットやＬＡＮなどの通信ネットワークに接続するものである。通信制御装置１９はＬＡＮカードやモデムなどの装置であり、通信制御装置１９を介して通信ネットワークと送受信したデータは入力信号又は出力信号として演算制御装置１２に送受信される。さらに、演算制御装置１２の演算結果や翻訳に必要な知識・規則を蓄積した翻訳辞書等を記憶するハードディスクドライブ（ＨＤＤ）２４が設けられている。
【００１５】
図２は本発明の実施の形態に係わる機械翻訳装置１１の機能ブロック図である。図２に示す演算制御装置１２内の各機能ブロックは、上述の機械翻訳プログラム１５を構成する各プログラムに対応する。すなわち、プロセッサ１３が機械翻訳プログラム１５を構成する各プログラムを実行することで、演算制御装置１２は、各機能ブロックとして機能することとなる。また、記憶装置２５の各ブロックは、演算制御装置１２内のメモリ１４及びハードディスクドライブ２４の記憶領域に対応する。
【００１６】
機械翻訳装置１１は、装置全体の制御を行う制御部２６、外部との入力のインターフェースを行う入力部２７、外部との出力のインターフェースを行う出力部２８、入力部２７を介して入手された入力文書を翻訳するための翻訳部２９、入力部２７から入力された第一言語文書の文の先頭に引用記号が存在するか否かを判定し引用記号が存在するときは文の先頭からの引用記号の個数を引用形式の階層と判定する文書階層判定部３０、翻訳部２９が翻訳時に用いる各種翻訳知識を収納した翻訳辞書部３１、文書階層判定部３０で判定された引用形式の階層ごとに第一言語文書の文を格納する文書記憶部３２、引用記号が存在する文に関連した文を翻訳する際の訳語を選択するに有用な翻訳知識情報を格納する翻訳知識情報格納部３３、引用記号を記憶する引用記号記憶部３９によって構成されている。
【００１７】
入力部２７は、入力装置２０であるインターネットなどの通信制御装置１９やキーボード２２等を通じて、翻訳対象の第一言語文書やコマンドを受け取るものである。制御部２６は、入力部２７から送られた翻訳対象の第一言語文書の文章データを文書階層判定部３０に送ったり、文書記憶部３２から取り出した文書を翻訳部２９に送り、翻訳部２９での翻訳結果を出力部２８に送るなどの全体の制御を司るものである。
【００１８】
翻訳部２９は、制御部２６から送られてきた第一言語文書による文章データに対して、翻訳辞書部３１の辞書や翻訳知識情報格納部３３に格納された知識情報を参照しながら翻訳処理を行うものである。
【００１９】
翻訳辞書部３１は、翻訳部２９の翻訳処理に必要な翻訳知識を記憶している。例えば、翻訳部２９が日英・英日双方向の翻訳処理を行うものとすると、辞書部３１は夫々の翻訳方向毎に、基本辞書部３４、専門用語辞書部３５、ユーザ辞書部３６を有している。基本辞書部３４は、語彙部３４ａ、形態素解析規則３４ｂ、構文・意味解析規則３４ｃ、変換規則３４ｄ、構文生成規則３４ｅ、形態素生成規則３４ｆからなり、専門用語辞書部３５は語彙部３５ａのみからなり、ユーザ辞書部３６は、語彙部３６ａ、訳語学習部３６ｂからなる。基本辞書部３４、専門用語辞書部３５、ユーザ辞書部３６の構成は以下の通りである。
【００２０】
（１）基本辞書部
（ａ）語彙部
少なくとも第１言語の語彙の各々についての活用情報、意味情報、分野情報、訳語情報、訳語毎の分野情報
（ｂ）形態素解析規則
第１言語の入力文を形態素解析するための知識
（ｃ） 構文・意味解析規則
第１言語の入力文を形態素解析した後、構文的・意味的な解析を行うための知識
（ｄ）変換規則
構文・意味解析された結果の第１言語の意味構造を第２言語の意味構造へ変換するための知識
（ｅ）構文生成規則
第２言語の意味構造から第２言語の単語列を生成するための知識
（ｆ）形態素生成規則
第２言語の語の活用を反映し、最終的な訳文を出力するための知識
（２）専門用語辞書部
専門用語辞書部は、複数の分野別辞書が用意されており、入力文書の内容により翻訳時に用いる辞書を選択することが出来る。語彙部のみからなる  。
【００２１】
（３）ユーザ辞書部
ユーザ辞書部は、ユーザ定義用の辞書である。翻訳する文書に合わせてユーザが複数作成することができる。各々について語彙部と訳語学習部とがある  。
【００２２】
（ａ）語彙部
ユーザが新規登録した用語についての活用情報、意味情報、訳語情報等
（ｂ）訳語学習部
ある第１言語の語句に対してユーザが学習させた訳語の情報を格納する。
【００２３】
次に、翻訳知識情報格納部３３は、翻訳部２９において翻訳辞書部３１を参照した際に、参照した見出し語に特定の分野情報が付与されている場合は分野情報を格納したり、語の共起関係で決定した見出し語と訳語のペア等、翻訳の過程で他の文にも適用できると判定された情報が格納される。例えば、引用記号が存在する文に関連した他の文を翻訳する際の訳語を選択するに有用な翻訳知識情報が格納される。詳細については具体例を用いて後述する。
【００２４】
出力部２８は、翻訳部１０４により訳出された第二言語の文章（訳文）を、制御部２６からの指示により出力する。文書階層判定部３０は、制御部２６より渡された入力データに引用形式の階層情報が含まれるかを判定して、引用形式の階層毎に文書記憶部３２に格納する。そして、文書記憶部３２は、文書階層判定部３０で判定された引用形式の階層ごとに第一言語文書の文を格納する。文書階層判定部３０での処理が完了すると制御部２６より文書記憶部３２の記憶内容が取り出され、翻訳部２９に渡され翻訳が行われる。これらの処理内容の詳細については後述する。
【００２５】
図３は本発明の実施の形態に係る機械翻訳装置の第一言語文書が入力されてから訳文を出力するまでの処理内容の一例を示すフローチャートである。以下の説明では、入力装置２０から入力部２７を介して入力された第一言語文書は英語による原文であり、第二言語の日本語による訳文に翻訳する場合について説明する。
【００２６】
制御部２６は、入力部２７を介して第一言語文書の原文データが入力されると、文書階層判定部３０を起動し、文書解析判定部３０は文書の引用形式の階層を判定する（Ｓ１０１）。ここでは、入力部２７よりに以下に示す原文が入力されたとする。
【００２７】
He is a reliever.
>We got Taro Toshiba.
>Do you know him?
２文目、３文目の先頭に存在する「>」はメールの引用記号であり、２文目、３文目のメールの内容に対して、１文目に返信内容を記述したものである。ここでは引用記号を「>」としているが、メールツールにより引用記号は異なる場合もあるため、引用記号は機械翻訳装置の利用者が自由に引用記号記憶部３９に設定できるようにしてもよい。また引用記号の指定は単一ではなく、複数の組合せを指定できるようにしてもよい。
【００２８】
本発明の実施の形態では、引用記号記憶部３９は、図４に示すように、予め引用記号として「>」、「|」の二つが指定されており、引用記号の配列位置ＭがＭ＝１のときは、引用記号は「>」であり、引用記号の配列位置ＭがＭ＝２のときは、引用記号は「|」である場合を示している。
【００２９】
図５は、図３中のステップＳ１０１における文書階層判定部３０の処理内容を示すフローチャートである。文書階層判定部３０は、第一言語文書の原文データが入力されると、入力された文字列を改行毎に文Ｓを取得する（Ｓ２０１）。続いて文書の引用形式の階層を示す変数Ｌ、取得した文Ｓの判定開始位置を示す変数Ｎ、引用記号の配列位置を示す変数Ｍをそれぞれ初期値の１に設定する（Ｓ２１）。引用形式の階層を示す変数Ｌが初期値（Ｌ＝１）であるときは引用記号がない文Ｓ、取得した文Ｓの判定開始位置を示す変数Ｎが初期値（Ｎ＝１）であるときは文Ｓの先頭位置、引用記号の配列位置を示す変数Ｍが初期値（Ｍ＝１）であるときは引用記号が「>」である場合である。
【００３０】
次に、引用記号の配列位置の変数Ｍ（Ｍ＝１）が示す引用記号「>」と文Ｓの先頭位置（Ｎ＝１）の文字とを比較し一致するか否かを判定する（Ｓ２０３）。一致する場合には、Ｌ＝Ｌ＋１を行い、引用形式の階層を示す変数Ｌを１つだけ深くする（Ｓ２０４）。そして、Ｎ＝Ｎ＋１を行い、文Ｓの判定開始位置を次の文字位置（２番目の文字位置）にずらし、引用記号の配列位置Ｍ（Ｍ＝１）の引用記号「>」と一致するか否かを判定する（Ｓ２０５）。一致する場合には、Ｌ＝Ｌ＋１を行い、引用形式の階層を示す変数Ｌを１つだけ深くし（Ｓ２０６）、ステップＳ２０５に戻る。そして、文Ｓの判定開始位置（Ｎ番目の位置）の文字が引用記号の配列位置Ｍ（Ｍ＝１）の引用記号「>」と一致しないと判定されるまでＳ２０５、Ｓ２０６の処理を繰り返し行う。
【００３１】
ステップＳ２０５の判定で、文Ｓの判定開始位置（Ｎ番目の位置）の文字が引用記号の配列位置Ｍ（Ｍ＝１）の引用記号「>」と一致しないと判定されたときは、そのときの引用形式の階層を示す変数Ｌを階層Ｌの文として文書記憶部３２に格納する（Ｓ２０７）。そして、第一言語文書の原文データの最後の文Ｓであるかどうかを判定し、最後の文ＳでないときはステップＳ２０１に戻り、最後の文Ｓであるときは処理を終了し、文書階層判定部３０は制御部２６に処理を戻す。
【００３２】
一方、ステップＳ２０３の判定で、引用記号の配列位置の変数Ｍ（Ｍ＝１）が示す引用記号「>」と文Ｓの先頭位置（Ｎ＝１）の文字とが一致しない場合は、Ｍ＝Ｍ＋１を行い、引用記号の配列位置Ｍ（Ｍ＝２）から別の引用記号「|」を取得して、文Ｓの先頭位置（Ｎ＝１）の文字と比較する（Ｓ２０９）。一致しない場合は、そのときの引用形式の階層を示す変数Ｌを階層Ｌの文として文書記憶部３２に格納する（Ｓ２０７）。
【００３３】
一方、一致する場合には、Ｌ＝Ｌ＋１を行い、引用形式の階層を示す変数Ｌを１つだけ深くする（Ｓ２１０）。そして、Ｎ＝Ｎ＋１を行い、文Ｓの判定開始位置を次の文字位置（２番目の文字位置）にずらし、引用記号の配列位置Ｍ（Ｍ＝２）の引用記号「|」と一致するか否かを判定する（Ｓ２１１）。一致する場合には、Ｌ＝Ｌ＋１を行い、引用形式の階層を示す変数Ｌを１つだけ深くし（Ｓ２１２）、ステップＳ２１１に戻る。そして、文Ｓの判定開始位置（Ｎ番目の位置）の文字が引用記号の配列位置Ｍ（Ｍ＝２）の引用記号「|」と一致しないと判定されたときは、そのときの引用形式の階層を示す変数Ｌを階層Ｌの文として文書記憶部３２に格納する（Ｓ２０７）。このようにして文Ｓの先頭から引用記号配列に格納されている各引用記号と一致するかを判定する。
【００３４】
例えば、１文目の” He is a reliever.”には引用記号が存在しないため、ステップＳ２０１、Ｓ２０２、Ｓ２０３、Ｓ２０９、Ｓ２０７に進む。ステップＳ２０７では、階層を示す変数Ｌ（Ｌ＝１）とともに文Ｓを文書記憶部３２に記憶する。続いてステップＳ２０８において最後の文まで読み込んだか否かを判定し、まだ文書が存在する場合は、ステップＳ２０１に戻り、次の文Ｓを取得する。そして、各変数Ｌ、Ｎ、Ｍを前述と同様に初期化する。
【００３５】
２文目の” We got Taro Toshiba.”の場合は、ステップＳ２０３の判定において、引用記号配列の「>」と文ＳのＮが指す位置の文字である「>」が一致するためＳ２０４に進む。Ｓ２０４では、Ｌ＝Ｌ＋１を行い、引用形式の階層を示す変数Ｌを１つだけ深くする。そして、Ｎ＝Ｎ＋１を行い、文Ｓの判定開始位置を次の文字位置（２番目の文字位置）にずらし、引用記号の配列位置Ｍ（Ｍ＝１）の引用記号「>」と一致するか否かを判定する（Ｓ２０５）。引用記号と一致する部分がなくなった時点で、Ｓ２０７に進み、階層を示す変数Ｌとともに文Ｓを文書記憶部３２に記憶する。３文目に対しても同様の処理を行う。
【００３６】
図６は文書記憶部３２に格納される第一言語文書の一例の説明図である。図６に示すように、翻訳対象である第一言語文書の文は引用形式の階層ごとに格納される。すなわち、引用記号のない１文目は「He is a reliever.」は階層１に格納され、引用記号が一つの２文目「We got Taro Toshiba.」、及び３文目「Do you know him?」は階層２に格納される。この場合、階層１は階層２より階層が浅く、逆に階層２は階層１より階層が深いことになる。なお、文書記憶部３２には、後の処理で翻訳部２９で翻訳された第二言語の訳文も格納されるようになっている。
【００３７】
以上の説明では、引用記号を基に文書の引用形式の階層を判定したが、転送メールの場合は、転送部分と転送時に記述した内容とが区別できるように転送内容の直前に、”-------- Original Message --------“や、”<zzzz@bbb.co.jp> wrote:”などが含まれることがある。これらを階層の判断として利用してもよい。
【００３８】
図３のステップＳ１０１の処理が終了すると、次に制御部２６において、文書記憶部３２より階層の最大値Ｌmaxを取得する（Ｓ１０２）。続いて、文書記憶部３２より、階層の最大値Ｌmaxに対応する文を取得する（Ｓ１０３）。この場合、同じ階層の分が複数あるときはすべての文を取得する。取得した文データを対象に翻訳部２９が起動され翻訳が行われる（Ｓ１０４）。これにより、つまり、階層の深いものから翻訳されることになる。図６に示した文書記憶部３２の一例では、引用形式の階層Ｌの最大値は２である。そして、階層Ｌの最大値（Ｌ＝２）の文は、２文目「We got Taro Toshiba.」及び３文目「Do you know him?」の２つの文がある。階層の最大値に複数の文がある場合には、第一言語文書の文の出現順に翻訳対象の文とする。従って、この場合には、「We got Taro Toshiba.」が最初の翻訳対象の文となる。
【００３９】
図７は図３中のステップＳ１０４における翻訳部２９の翻訳処理を示すフローチャートである。図７では、第一言語文書の原文中の１文に対する翻訳部２９の翻訳処理を示しており、入力された原文全体の翻訳には、文書末まで図７のステップＳ３０１〜Ｓ３０８が繰り返し処理される。
【００４０】
翻訳部２９は、制御部２６から翻訳対象の原文が送られてくると、まず、翻訳知識情報格納部３３より翻訳知識情報を読み込む（Ｓ３０１）。図８は翻訳知識情報格納部３３に格納される翻訳知識情報の一例の説明図である。翻訳知識情報は、翻訳対象文書の分野を特定する分野情報３７や、変換規則の適用により決定した見出し語、品詞、訳語の訳語選択情報３８などである。初期状態ではいずれも空の状態である。
【００４１】
翻訳部２９は、２文目の入力文「We got Taro Toshiba.」に対して辞書部３１の下記知識を用いて、辞書引き及び形態素解析処理を行う（Ｓ３０２）。
【００４２】
（１）基本辞書部３４
（ａ）語彙部３４ａ
（ｂ）形態素解析規則３４ｂ
（２）専門用語辞書部３５
（３）ユーザ辞書部３６
次に、翻訳部２９は、図７のステップＳ３０３ において、基本辞書部３４の構文・意味解析規則３４ｃを用いて、入力原文の構文・意味解析を行う。この段階で、入力言語の解析結果の構造が構築されている。
【００４３】
次に、翻訳部２９は、図７のステップＳ３０４に処理を移行して、基本辞書部３４の語彙部３４ａ、変換規則３４ｄ、専門用語辞書部３５の語彙部３５ａ、ユーザ辞書部３６の語彙部３６ａ、訳語学習部３６ｂの知識を用いて、入力言語の構造を出力言語の構造に変換する処理を行う。この段階で、出力言語の言語的な構造と共に、入力単語に対する訳語の決定も行う。
【００４４】
図９は、２文目の入力文「We got Taro Toshiba.」の入力文字列「Taro Toshiba.」に対する基本辞書部３４の語彙部３４ａの一例の説明図である。翻訳部２９は、入力文字列「Taro Toshiba.」に対する基本辞書部３４の語彙部３４ａの中から見出し語分野情報３７ａを参照し、見出し語分野情報３７ａの有無を判定する（Ｓ３０５）。見出し語分野情報３７ａが存在する場合は、その見出し語分野情報３７ａ（スポーツ：野球）を翻訳知識情報格納部３３に格納する（Ｓ３０６）。これにより、図８に示すように、入力文の”Taro Toshiba”に付与されている「スポーツ：野球」が翻訳知識情報格納部３３に格納される。
【００４５】
この一例による例文では、翻訳知識情報格納部３３に分野情報３７が格納されるが、分野情報３７だけではなく、共に使用される単語との関係（訳語選択情報）によって訳語が決定された場合も翻訳知識情報として格納するようにしてもよい。以下の例文を用いて説明する。
【００４６】
例文
「He erected a tent city along the banks of the Grand Canal.」
この例文中の「bank」には、「銀行」と「土手」という全く異なる性質の訳語が含まれている。このような場合は、基本辞書部３４の変換規則３４ｄには、例えば、下記のような規則１、２、３が記述されている。
【００４７】
規則１  （「of」の目的語が都市名の場合は「銀行」）
規則２  （「of」 の目的語が「* canal」or 「* river」の場合は「土手」）
規則３  （いずれにも該当しない場合は「銀行」）
この例文には、「Grand Canal」が存在するため規則２が採用され、訳語が「土手」に決定される。このように決定された情報も翻訳知識情報格納部３３に格納する。こうして、出力言語の構造が構築されると、翻訳部２９は処理をステップＳ３０７に移行して、基本辞書部３４の構文生成規則３４ｅを用いて、２次元的な構造を１次元的な構造に変換する。最後に、翻訳部２９は、ステップＳ３０８において、基本辞書部３４の形態素生成規則３４ｆを用いて、個々の語の表層形態を生成し、最終的な訳文を文書記憶部３２に出力する。
【００４８】
引き続き、次の文である３文目の「Do you know him?」に対してもステップＳ３０１〜Ｓ３０８の処理を行い、文書記憶部３２に訳文を出力する。そして、文書記憶部３２に訳文を出力した時点で階層２の翻訳が完了し制御部２６に処理が戻る。
【００４９】
次に、制御部２６は、図３のステップＳ１０５により、引用形式の階層１の翻訳が完了したかの判定を行う（Ｓ１０５）。翻訳を完了した「Do you know him?」の引用形式の階層（Ｌ）は、階層１ではない（階層２である）ため、Ｌ＝Ｌ−１を実行した後（Ｓ１０６）、ステップＳ１０３に処理を移行する。これにより、階層１の文である１文目の「He is a reliever.」を取得し、翻訳部２９は、階層１の文である「He is a reliever.」に対して、図７のステップＳ３０１〜Ｓ３０８の翻訳処理を行う。
【００５０】
すなわち、翻訳部２９は、翻訳知識情報格納部３３より、階層２の文書を翻訳した際に格納された図８の分野情報３７より分野が「スポーツ：野球」という翻訳知識情報を取得する（Ｓ３０１）。続いて、入力文「He is a reliever.」に対して辞書部３１の知識を用いて、辞書引き及び形態素解析処理（Ｓ３０２）、構文・意味解析を行い（Ｓ３０３）、ステップＳ３０４の変換処理に移行する。ステップＳ３０４において訳語を決定する際に、取得した翻訳知識情報である「スポーツ：野球」と、図９の訳語分野情報３７ｂを参照して同じ分野の訳語が存在するか判定する。
【００５１】
ここで、見出し語に多数の訳語がある場合には、見出し語分野情報３７ａを一義的に定めることができないので、そのような見出し語に対する見出し語分野情報３７ａには「０」が記述され、各々の訳語ごとに訳語分野情報３７ｂが記述されている。
【００５２】
これにより、「reliever」の訳語を決定するときに、訳語分野情報３７ｂが「スポーツ：野球」である「リリーフ投手」が取得される。引き続き、新たに取得された翻訳知識情報があるかを判定し（Ｓ３０５）、翻訳知識情報がある場合は翻訳知識情報格納部３３に翻訳知識を格納し（Ｓ３０６）、構文生成処理を行い（Ｓ３０７）、形態素生成処理を行って（Ｓ３０８）訳文が文書記憶部３２に格納される。
【００５３】
階層１の文である「He is a reliever.」の翻訳が完了すると制御部２６は、図３のステップＳ１０７に示すように、翻訳結果を文書記憶部３２より取得して（Ｓ１０７）、出力部２８を呼び出す。出力部２８は渡された翻訳結果を出力する（Ｓ１０８）。
【００５４】
図１０は本発明の実施の形態に係る機械翻訳装置の第一言語文書が入力されてから訳文を出力するまでの処理内容の他の一例を示すフローチャートである。この他の一例は、図３に示した一例に対し、文書階層判定部３０は、ステップＳ４０１の文書階層判定処理において、入力装置２０から入力部２７を介して入力された第一言語文書の文の出現順序を文書記憶部３２に記憶し、制御部２６はステップＳ４０２の訳文のソート処理において、第一言語の文書を構成する各文の出現順序と同じ順序に訳文をソートし、出力部２８は、ステップＳ４０３の翻訳結果出力処理において、第一言語の文書を構成する各文の出現順序と同じ順序で翻訳結果の文を出力するようにしたものである。図３と同一処理については同一符号を付し重複する説明は省略する。
【００５５】
制御部２６は、入力部２７を介して原文データが入力されると、文書階層判定部３０を起動する（Ｓ４０１）。ここでは、入力部２７よりに以下に示す原文が入力されたとする。
【００５６】
No, He is reliever.
>>We got Taro Toshiba.
>>He is a pitcher.
>Is he a starter?
図１１は、図１０中のステップＳ４０１における文書階層判定部３０の処理内容を示すフローチャートである。図１１は、図５に示した一例に対して、ステップＳ５０１において、入力された原文の行番号を格納する変数Ｐを設け、ステップＳ５０２において、入力された原文の行番号の変数Ｐを更新し、ステップＳ５０７において、引用形式の階層Ｌの文として行番号Ｐとともに文書記憶部３２に格納するようにしたものである。図５と同一処理については同一符号を付し重複する説明は省略する。
【００５７】
図１１において、まず、入力された原文の行番号を格納する変数Ｐに０を設定する（Ｓ５０１）。続いて文Ｓを取得して（Ｓ２０１）、続いて文書の階層を示す変数Ｌ、取得した文Ｓの判定開始位置を示す変数Ｎ、引用記号配列の位置を示す変数Ｍをそれぞれ１に設定するとともに、Ｐに１を加える（Ｓ５０２）。
【００５８】
そして、ステップＳ２０３〜Ｓ２０６、ステップＳ２０９〜Ｓ２１２において、図３と同様な処理により、引用形式の階層Ｌを求め、ステップＳ５０７において、階層Ｌの文とともに、行番号Ｐを文書記憶部３２に格納する。
【００５９】
図１２は本発明の実施の形態に係る機械翻訳装置の他の一例での文書記憶部３２に格納される第一言語文書の一例の説明図である。図１２に示すように、文書記憶部３２には、引用形式の階層、原文とともにその原文が存在した行番号が記憶される。最後の文まで処理が終わったか否かを判定し（Ｓ２０８）、最後の文まで処理が終わった場合は制御部２６に復帰する。
【００６０】
このようにして、ステップ４０１にて原文が存在した行番号が記憶された状態で、図１０のステップＳ１０２〜Ｓ１０７の処理が図３の場合と同様に行われる。そして、制御部２６は、文書記憶部３２より訳文とともに行番号を取得し、取得したデータに対して、行番号を元に昇順にソートを行い（Ｓ４０２）、出力部２８を呼び出し、出力部２８は渡された翻訳結果を第一言語の文書を構成する各文の出現順序と同じ順序で出力する（Ｓ４０３）。
【００６１】
本発明の実施の形態によれば、電子メールやＷｅｂ掲示板などのやり取りの際に含まれる引用記号などを利用して文書の階層構造を判断し、階層が深い順に翻訳することにより、獲得した翻訳知識情報を階層が浅い文の翻訳に適用できる。従って、同一内容の文書が文の出現順に左右されずに翻訳精度を向上させることができる。
【００６２】
また、階層が深い順に翻訳するため原文の記述状態によっては、翻訳した順序に出力すると、原文と訳文の並びがことなる結果となる場合がある。そこで、原文の出現順を記憶させ、対応する訳文を原文の並び順にソートすることで訳文を原文と同じ順に出力することができるので、翻訳結果が読みやすくなる。
【図面の簡単な説明】
【００６３】
【図１】本発明の実施の形態に係る機械翻訳装置のハードウエア構成を示すブロック構成図。
【図２】本発明の実施の形態に係わる機械翻訳装置の機能ブロック図。
【図３】本発明の実施の形態に係る機械翻訳装置の第一言語文書が入力されてから訳文を出力するまでの処理内容の一例を示すフローチャート。
【図４】本発明の実施の形態における引用記号の配列位置の説明図。
【図５】図３中のステップＳ１０１における文書階層判定部の処理内容を示すフローチャート。
【図６】本発明の実施の形態における文書記憶部に格納される第一言語文書の一例の説明図。
【図７】図３中のステップＳ１０４における翻訳部の翻訳処理を示すフローチャート。
【図８】本発明の実施の形態における翻訳知識情報格納部に格納される翻訳知識情報の一例の説明図。
【図９】入力文「We got Taro Toshiba.」の入力単語「Taro Toshiba.」に対する基本辞書部の語彙部の一例の説明図。
【図１０】本発明の実施の形態に係る機械翻訳装置の第一言語文書が入力されてから訳文を出力するまでの処理内容の他の一例を示すフローチャート。
【図１１】図１０中のステップＳ４０１における文書階層判定部の処理内容を示すフローチャート。
【図１２】本発明の実施の形態に係る機械翻訳装置の他の一例での文書記憶部に格納される第一言語文書の一例の説明図。
【符号の説明】
【００６４】
１１…機械翻訳装置、１２…演算制御装置、１３…プロセッサ、１４…メモリ、１５…機械翻訳プログラム、１６…作業エリア、１７…出力装置、１８…表示装置、１９…通信制御装置、２０…入力装置、２１…マウス、２２…キーボード、２３…ディスクドライブ、２４…ハードディスクドライブ、２５…記憶装置、２６…制御部、２７…入力部、２８…出力部、２９…翻訳部、３０…文書階層判定部、３１…翻訳辞書部、３２…文書記憶部、３３…翻訳知識情報格納部、３４…基本辞書部、３５…専門用語辞書部、３６…ユーザ辞書部、３７…分野情報、３８…訳語選択情報、３９…引用記号記憶部
【図１】
0004729063.tif 000002
【図２】
0004729063.tif 000003
【図３】
0004729063.tif 000004
【図４】
0004729063.tif 000005
【図５】
0004729063.tif 000006
【図６】
0004729063.tif 000007
【図７】
0004729063.tif 000008
【図８】
0004729063.tif 000009
【図９】
0004729063.tif 000010
【図１０】
0004729063.tif 000011
【図１１】
0004729063.tif 000012
【図１２】
0004729063.tif 000013