(57)【特許請求の範囲】
【請求項１】
言語データを登録するコーパス記録部と、少なくとも前記言語データを編集する編集部と、前記コーパス記録部に登録された言語データより指定した単独あるいは複数の語句を含む文を検索するキーワード検索部と、前記キーワード検索部で検索された文と前記編集部で編集中のカーソルがあるアクティブ文との類似度を比較し前記キーワード検索部により検索された文のうち編集中の前記アクティブ文と類似度が高いものから表示する類似文検索部とを備えたことを特徴とする機械翻訳装置。
【請求項２】
言語データを登録するコーパス記録部と、少なくとも前記言語データを編集する編集部と、前記コーパス記録部に登録された言語データより指定した単独あるいは複数の語句を含む文を検索するキーワード検索部と、前記キーワード検索部で検索された文と前記編集部で編集中の文章中の前記指定した語句を含むアクティブ文との類似度を比較し前記キーワード検索部により検索された文のうち編集中の前記アクティブ文と類似度が高いものから表示する類似文検索部とを備えたことを特徴とする機械翻訳装置。
【請求項３】
コーパス記録部と表示部を持つ機械翻訳装置において、コンピュータに、前記コーパス記録部に言語データを登録する手順、前記コーパス記録部に記録された言語データを編集する手順、前記コーパス記録部に記録された言語データから指定した語句を含む文を検索する手順、前記検索された文と前記編集部で編集中のカーソルがあるアクティブ文との類似度を比較し前記検索された文のうち編集中の前記アクティブ文と類似度が高いものから前記表示部に表示する手順を実行させるための機械翻訳プログラム。
【請求項４】
コーパス記録部と表示部を持つ機械翻訳装置において、コンピュータに、前記コーパス記録部に言語データを登録する手順、前記コーパス記録部に記録された言語データを編集する手順、前記コーパス記録部に記録された言語データから指定した語句を含む文を検索する手順、前記キーワード検索部で検索された文と前記編集部で編集中の文章中の前記指定した語句を含むアクティブ文との類似度を比較し前記キーワード検索部により検索された文のうち編集中の前記アクティブ文と類似度が高いものから表示する手順を実行させるための機械翻訳プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自然言語を別の自然言語に翻訳する機械翻訳装置及び機械翻訳プログラムに関する。
【背景技術】
【０００２】
翻訳の専門家は、翻訳時にある語句（単一の語句だけでなく、フレーズを含む。以下同じ）が訳文中にどのように使われるのが適当かという判断を重視する。このため、翻訳にあっては、注目している語句について言語データベースやインターネット上での実例にあたることが多い。また、この際、訳文の言語のデータだけでなく、日英など対訳データベースを使用し、原文中の着目している語句の訳語を訳文中に見出し、どのような訳がどのような形で出現するかを検討することが多い。
【０００３】
この際、着目する語句が訳文側の言語（以下、第２言語と言う）である場合には、検索対象は第２言語の単言語コーパスで十分であるが、着目する語句が原文側の言語（以下、第１言語と言う）である場合は、対訳コーパスである必要があった。また、それらのコーパスを対象に得られた結果はＫＷＩＣ（Key Word In Context：検索結果の表示の際に、検索キーワードだけでなく、文中での検索キーワードの使用状況を併せて表示する方法）で表示するとわかりやすい（例えば、特許文献１参照）。
【特許文献１】特開２００６−２６８６２１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、この場合、あくまでもコーパスを語句で検索するため、注目している語句は含まれるが、注目している用途とは異なる用法で使用されている例が検出されることも多く適用可否の判断に時間を要する。
【０００５】
また、語句ではなく文全体に着目し、着目している文とコーパスに登録されている文との間の距離を測定し、距離の近いものを検索結果として提示することも行われている。距離は、例えば表層文字や単語の一致率などで判定する。この方法では、文の距離が近い（文が似ている）ため文全体の訳としては流用できる可能性が高いが、ある語句の訳文中の用法を参照するには適さない場合がある。
【０００６】
例えば、２０語からなる文に着目した場合、コーパスより９５％一致する文が発見されたとすると、通常の類似文の検索では非常に高い一致度であるため、訳文を参考にすることができるが、食い違った１語が着目している語句の場合には、この検索結果は全く適さないことが分かる。
【０００７】
表１に、従来のバイリンガルコーパスに対するキーワード検索の結果提示の一例を示す。ビジネス関係の英日バイリンガルコーパスを用いて、「Brief」という単語を検索し、この単語が訳文中でどのように使用されているかを調べた場合の原文と訳文の検索結果である。
【表１】
0004528818.tif 000002
【０００８】
この一例では「brief」を含む英文が５種類検索されているが、表示の順位はデータベース中で発見された順である。また、「Brief」に相当する訳語としては「簡単な」が２件、「短時間」が２件、「要約」が１件出現しているため、単純に考えると「brief」は「簡単な」あるいは「短時間」として訳出することが普通であり、「要約」と訳することは少ないと思え、オペレータは「簡単な」あるいは「短時間」という訳語を与えてしまう可能性があった。
【０００９】
このように、従来のコーパスの活用法においては、語句に着目した場合には目的と異なった用法を用いた例が発見されたり、文全体に着目した場合には、着目している語句が検索されないケースがある。
【００１０】
本発明の目的は、翻訳編集作業中の文書中で検索キーワードを含む文を検索して、着目した語句の的確な用法を検索できる機械翻訳装置及び機械翻訳プログラムを提供することである。
【課題を解決するための手段】
【００１１】
本発明の機械翻訳装置は、言語データを登録するコーパス記録部と、少なくとも前記言語データを編集する編集部と、前記コーパス記録部に登録された言語データより指定した単独あるいは複数の語句を含む文を検索するキーワード検索部と、前記キーワード検索部で検索された文と前記編集部で編集中のカーソルがあるアクティブ文との類似度を比較し前記キーワード検索部により検索された文のうち編集中の前記アクティブ文と類似度が高いものから表示する類似文検索部とを備えたことを特徴とする。
【発明の効果】
【００１２】
本発明によれば、翻訳編集作業中の文書中で検索キーワードを含む文を検索するので、着目した語句の的確な用法を検索できる。
【発明を実施するための最良の形態】
【００１３】
図１は、本発明の実施の形態に係わる機械翻訳装置の構成図である。機械翻訳装置１１は、例えば一般的なコンピュータに機械翻訳プログラムなどのソフトウェアプログラムがインストールされ、そのソフトウェアプログラムがマイクロプロセッサ１２において実行されることにより実現される。機械翻訳装置１１は、マイクロプロセッサ１２、ＲＯＭ（Read Only Memory）１３及びＲＡＭ（Random Access Memory）１４がバス１５を介して接続されている。バス１５には、入力部１６、表示部１７、ネットワークインターフェース１８及び磁気ディスク装置１９が接続されている。
【００１４】
磁気ディスク装置１９には、機械翻訳プログラム２０が記憶されるとともに、翻訳辞書部２１が記憶される。機械翻訳プログラム２０は、制御部２２、編集部２３、翻訳部２４、キーワード検索部２５、類似文検索部２６を有し、翻訳辞書部２１は、コーパス記録部２７及び編集文書記録部２８を有している。なお、翻訳辞書部２１は基本用語辞書や専門用語辞書などを有しているが図示を省略している。
【００１５】
マイクロプロセッサ１２は、図示を省略したオペレーティングシステムの制御の下に磁気ディスク装置１９に記憶された機械翻訳プログラム２０を実行することにより機械翻訳装置１１の機能を実現している。
【００１６】
入力部１６は、翻訳する文章や各種コマンド、あるいはデータベースとして記録されるコーパスを入力するためのものであり、キーボードやマウス・タッチパネルなどの入力装置、音声認識装置や文字認識機能、あるいは、ＣＤドライブなどの外部記憶媒体読取装置を含む。
【００１７】
表示部１７は、入力部１６から入力されたデータや、翻訳処理に関する処理結果、コマンド入力ガイドなどを表示するためのものであり、通常、ＣＲＴ表示装置、液晶モニタで実現される。
【００１８】
翻訳辞書部２１のコーパス記録部２７は、入力部１６から入力されたデータや、処理されたデータをコーパスとして記録するためのものである。
【００１９】
キーワード検索部２５は、入力部１６により指定されたキーワード（単語、フレーズ）をコーパス記録部２７に記録されているコーパス中から検索するためのものであり、本発明の実施の形態では、検索対象が単言語コーパスの場合は指定されたフレーズを含む文を取得し、バイリンガルコーパスの場合は指定されたフレーズを含む文とその文に対応する他方の言語の文とを合わせて取得するものである。キーワード検索部２５の詳細に関しては後述する。
【００２０】
類似文検索部２６は、編集文書記録部２８中から指定された文と類似する文を、キーワード検索部２５で検索された文の中から検索するものである。類似文検索部２６の詳細に関しては後述する。
【００２１】
編集文書記録部２８は、編集（翻訳）作業を行っている文章を記録するものであり、この文書は、通常、入力部１６を経由して入力され、原文・訳文が対にして記録されているほか、オペレータが現在編集中の文が文章中のどの文であるかも合わせて記録する。
【００２２】
編集部２３は、編集文書記録部２８に記録されている文章を編集するためのものであり、コンピュータプログラムで実現される。また、翻訳部２４は、編集文書記録部２８に記録されている文章や入力部１６から入力された文章を翻訳するためのものであり、コンピュータプログラムで実現される。
【００２３】
制御部２２は、機械翻訳装置１１全体を制御するためのものであり、一般的な機械翻訳装置１１の制御部に加え、入力部１６から入力されたキーワードをキーワード検索部２５に送り、キーワードを含む複数のコーパスデータを取得し、そのコーパスデータそれぞれを類似文検索部２６へ送り、編集文書記録部２８中のオペレータが編集中の文と類似する文をその類似度合いを取得し、類似度合いが近い順に表示するデータを作成し、表示部１７へ送るという機能を有するものであり、コンピュータプログラムで実現される。
【００２４】
次に本発明の実施の形態に係わる機械翻訳装置の動作の一例を説明する。図２は本発明に実施の形態に係わるコーパス記録部２７におけるコーパスの記録に関するフローチャートである。コーパス記録は制御部２２により行われる。まず、入力部１６などから第１言語と第２言語との対のデータを読み込むことにより動作を開始する（Ｓ２０１）。以下、第１言語のデータをＡ、第２言語のデータをＢと呼ぶことにする。また、以下の説明では、対訳データを例に説明するが、第１言語だけのデータ、第２言語だけのデータを対象にしてもよい。
【００２５】
この取り込んだデータＡが含まれる複数の文に対して順次インデックスｉを付与する（Ｓ２０２）。この取り込んだデータＡより、順次、第ｉ文データＡｉ（ｉ＝１〜ｎ）を取り出し、そのデータに対応する第２言語のデータＢｉを検索する（Ｓ２０３）。すなわち、まず、この取り込んだデータＡより第１文Ａ1を取り出し、そのデータに対応する第２言語のデータＢ１を検索する（Ｓ２０２，Ｓ２０３）。そして、対応する第２言語の文がある場合には、データＡｉ、Ｂｉをセットでコーパス記録部２７に登録する（Ｓ２０４）。この実施の形態ではバイリンガルコーパスを扱っているが、必ずしも全ての文に対応する訳語データが付属しているとは限らないため、対応するＢｉが発見できない可能性もある。このため、対応している訳文がない場合には原文Ａｉのみをコーパス記録部へ登録する（Ｓ２０５）。また、対応する第２言語の文がない場合にはエラーとして登録しないとことも可能である。
【００２６】
次に、データＡｉが最後の文かどうかを判定し（Ｓ２０６）、最後の文でないときはインデックスｉに１を加算してステップＳ２０３に戻り（Ｓ２０７）、データＡｉが最後の文になるまでステップＳ２０３〜Ｓ２０７を繰り返す。
【００２７】
なお、図２における説明では、第１言語を中心に行っているが、これを第２言語を中心に考えてもよい。すなわち、まず第２言語のデータＢｉを取り出し、それに対応する原文Ａｉが有るかどうかを検索し、有る場合はデータＢｉ、Ａｉのセットで登録し、ない場合はＢｉのみ登録あるいは、エラーとして登録しないということである。第１言語を中心として考える場合には、第２言語にのみ文がある場合は登録できないが、第２言語を中心として考える場合には、第２言語にのみ文がある場合でもその文を活用することができる。
【００２８】
翻訳作業中には、この登録されたコーパスを使用する場合、ターゲット言語（訳文側の言語）だけが有る方が、ソース言語（原文側の言語）だけにあるより活用範囲が広いため、想定される言語方向に応じて中心として据える言語を決定するとよい。また、文の記録時に検索を高速化するために、インデックスを付けたりハッシュしたりする方法が考えられる。
【００２９】
図３は、本発明の実施の形態に係わるコーパス記録部２７におけるアクティブ文を考慮したキーワード検索における動作の一例を示すフローチャートである。キーワード検索はキーワード検索部２５により行われる。本発明の実施の形態では、キーワード検索は文書の翻訳／編集作業中に行われることを前提としているので、図３に示すように、翻訳あるいは編集する文書Ｃが読み込まれることにより、キーワード検索の動作が開始される（Ｓ３０１）。
【００３０】
オペレータより入力部１６などから検索コマンドが発生した場合、入力部１６などから入力された検索すべき文字列を取得し第１言語の語句Ｄとする（Ｓ３０２）。次に、文書Ｃ中のカーソルがある文Ｌを取得する（Ｓ３０３）。これをアクティブ文と呼ぶことにする。
【００３１】
ここで、オペレータの操作の状況によっては、検索すべき文字列である第１言語の語句Ｄが文書Ｃ中のカーソルがある文中に存在しない場合もあり得る。しかし、この場合に置いても、オペレータは編集作業中の文書の翻訳に供するために、コーパスからの検索を行うことが予想されるため、文書Ｃ中の語句Ｄを含む他の文をアクティブな文として設定してもよい。
【００３２】
この語句Ｄをキーとして検索を行うわけであるが、図３ではリニアサーチを行う例で説明する。なお、上述の様にその他の検索方法を用いてもよい。また、第１言語のキーワードで検索する例で説明するが、第２言語側のキーワードで検索してもよい。
【００３３】
図３においては、この取り込んだキーワードＤが含まれるコーパス記録部２７に記録されている第１言語データの複数の文に対して順次インデックスｊを付与する（Ｓ３０４）。この取り込んだキーワードＤより、順次、第ｊ文データＥｊ（ｉ＝１〜ｍ）を取り出し（Ｓ３０５）、第ｊ文データＥｊにキーワードＤは含まれているかどうかを判断する（Ｓ３０６）。すなわち、まず、コーパス記録部２７に記録されている第１言語データの１番目Ｅ１を取り出し（Ｓ３０４、Ｓ３０５）、その中にキーワードが含まれるかどうかを調べる（Ｓ３０６）。この場合、完全に表層で一致しなくとも、活用形で一致している、あるいは、複数の語句からなるキーワードＤの場合の一部が一致しているなどを「含まれている」と判断してもよい。
【００３４】
キーワードＤが含まれている場合は、この文Ｅｊとアクティブ文Ｌとの距離（類似度）を測定し、文Ｅｊと共に記録する（Ｓ３０７）。距離の測定方法は、例えば、文全体に占める表層上の同一の単語や文字の割合、形態素解析・構文解析・意味解析など解析結果レベルでの一致度合いや、あるいは、これらに対し、品詞別に重みを付ける、同義語は一致とみなす、活用形は同一とみなすなどのオプションを付ける方法がある。
【００３５】
次に、データＥｊが最後の文かどうかを判定し（Ｓ３０８）、最後の文でないときはインデックスｊに１を加算してステップＳ３０５に戻り（Ｓ３０９）、データＥｊが最後の文になるまでステップＳ３０５〜Ｓ３０９を繰り返す。
【００３６】
このようにして、得られたキーワードＤを含んだ文Ｅｊを類似度が高い（距離が近い）順に１つ取り出し（Ｓ３１０）、取り出した文Ｅｊに対応する第２言語のデータを含むかどうかを判断し（Ｓ３１１）、第２言語のデータを含む場合には、原文、訳文をセットで取り出して表示し（Ｓ３１２）、対応する第２言語のデータがない場合には第１言語のデータだけを取り出して表示する（Ｓ３１３）。
【００３７】
これを、キーワードＤが含まれたと判定され、記録されたすべてのデータＥｊに対して行う（Ｓ３１４）。なお、オペレータに対し提示するのは、ステップＳ３０７で記録されたすべてのデータを必ずしも行う必要はなく、一定の数に達した時点、あるいは、距離が一定値以上に達した時点で終了してもよい。
【００３８】
表２は、本発明の実施の形態におけるバイリンガルコーパスの検索の中間の検索状況を示す表である。表２では、図３のステップＳ３０３で得られたアクティブな文が、「Enclosed is a brief of the material we expect to be covering during my lecture on June 1.」であり、この文中の「brief」を検索文字列とした場合に、図３のステップＳ３０９まで終了したときに記録される「brief」を含んだデータとアクティブ文との距離を示している。
【表２】
0004528818.tif 000003
【００３９】
ここでは、（「アクティブ文中の単語のうち、コーパスから発見された文中に含まれる単語数」／「アクティブ文中の単語数」）×１００を距離として設定している。表３は、この表２より距離が近い（数値が大きい）ものから順にオペレータに対して提示したデータを示したものである。
【表３】
0004528818.tif 000004
【００４０】
表３に示すように、オペレータは最初にアクティブ文に近い文を得られるため、この文では「要約」という言葉が適切であることを容易に判断することができる。従来例との対比のために、従来例で得られる検索結果を表４に示す。
【表４】
0004528818.tif 000005
【００４１】
ここで、用いている従来例では文の距離だけを利用する類似文検索を用いてコーパスに登録されたデータを検索している。ここで、文全体としては非常に類似度が高い（距離が近い）データが検出されているが、それらにおいては着目している「Brief」が含まれていない。このため、表３に示す本発明の方が従来例に比べ優位であることが容易に分かる。以上の説明では、英日翻訳を例に取って説明したが、英独翻訳など他の言語の翻訳にも使用することができる。
【００４２】
このように、本発明の実施の形態では、コーパスを用いた語句の検索は翻訳作業中に行われることに着目し、コーパスを用いた語句の検索は翻訳中に行われることを前提にする。そして、その場合、カーソルは翻訳中の文にあるはずであり、ユーザはこの文で指定した単語がどのように使われたかを知りたい筈である。つまり、参考にしたい単語を含む文は、カーソルが置かれている文、つまりアクティブな文であることに着目し、本発明の実施の形態では、着目した語句でコーパス中を検索した結果、発見された文とアクティブな文との距離（類似度）を測定し近いものから先に提示するようにしている。従って、指定した語句の使い方をコーパスより参照する際に、翻訳・編集中の文と近い文を表示出力する。これにより、より参照したい用法に近いものからコーパス中のデータを得ることができる。
【００４３】
また、着目した語句（検索キーワード）がアクティブな文中にない場合もあり得る。この場合も、編集中の文書の翻訳のために検索していることが予想されるため、翻訳編集作業中の文書中で検索キーワードを含む文を検索するようにしている。そして、発見された文をアクティブな文として、着目した語句でコーパス中を検索した結果、発見された文とアクティブな文との距離（類似度）を測定し、近いものから先に表示出力する。従って、指定した語句の使い方をコーパスより参照する際に、翻訳・編集中の文章に含まれる文と近い文を出力する。これにより、より参照したい用法に近いものからコーパス中のデータを得ることができる。
【図面の簡単な説明】
【００４４】
【図１】本発明の実施の形態に係わる機械翻訳装置の構成図。
【図２】本発明に実施の形態に係わるコーパス記録部におけるコーパスの記録に関するフローチャート。
【図３】本発明の実施の形態に係わるコーパス記録部におけるアクティブ文を考慮したキーワード検索における動作の一例を示すフローチャート。
【符号の説明】
【００４５】
１１…機械翻訳装置、１２…マイクロプロセッサ、１３…ＲＯＭ、１４…ＲＡＭ、１５…バス、１６…入力部、１７…表示部、１８…ネットワークインターフェース、１９…磁気ディスク装置、２０…機械翻訳プログラム、２１…翻訳辞書部、２２…制御部、２３…編集部、２４…翻訳部、２５…キーワード検索部、２６…類似文検索部、２７…コーパス記録部、２８…編集文書記録部
【図１】
0004528818.tif 000006
【図２】
0004528818.tif 000007
【図３】
0004528818.tif 000008