(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、従来のコーパス作成方法では、単語の一致数のみに着目して文同士を対応付ける結果、文全体として見たときに対訳となっていない文同士を対応付けてしまう場合があった。
【0005】
本発明は、このような事情に鑑みてなされたものであり、単語の一致数のみに基づいて文の対応付けを行う場合と比較して、より品質の高い対訳コーパスを作成することを目的とする。
【課題を解決するための手段】
【0006】
上記の課題を解決するため、本発明は、第1言語と第2言語の対訳文書を取得する対訳文書取得部と、前記取得された対訳文書を構成する前記第1言語の文と前記第2言語の文を、前記第1言語と前記第2言語の対訳辞書を用いてマッチングして、前記第1言語と前記第2言語の1以上の対訳文を取得する対訳文取得部と、前記取得された1以上の対訳文に基づいて翻訳モデルを生成する翻訳モデル生成部と、前記取得された1以上の対訳文の各々について、前記生成された翻訳モデルを用いて、当該対訳文を構成する前記第1言語の文を前記第2言語に翻訳する翻訳部と、前記取得された1以上の対訳文の各々について、前記第2言語に翻訳された前記第1言語の文と、当該文に対応する前記第2言語の文との間の編集距離を算出する編集距離算出部と、前記取得された1以上の対訳文のうち、前記算出された編集距離が閾値よりも大きい対訳文を選別する対訳文選別部とを備える対訳文抽出装置を提供する。
【0007】
また、本発明は、1以上のコンピュータにより実行される対訳文抽出方法であって、第1言語と第2言語の対訳文書を取得するステップと、前記取得された対訳文書を構成する前記第1言語の文と前記第2言語の文を、前記第1言語と前記第2言語の対訳辞書を用いてマッチングして、前記第1言語と前記第2言語の1以上の対訳文を取得するステップと、前記取得された1以上の対訳文に基づいて翻訳モデルを生成するステップと、前記取得された1以上の対訳文の各々について、前記生成された翻訳モデルを用いて、当該対訳文を構成する前記第1言語の文を前記第2言語に翻訳するステップと、前記取得された1以上の対訳文の各々について、前記第2言語に翻訳された前記第1言語の文と、当該文に対応する前記第2言語の文との間の編集距離を算出するステップと、前記取得された1以上の対訳文のうち、前記算出された編集距離が閾値よりも大きい対訳文を選別するステップとを備える対訳文抽出方法を提供する。
【0008】
また、本発明は、コンピュータに、第1言語と第2言語の対訳文書を取得するステップと、前記取得された対訳文書を構成する前記第1言語の文と前記第2言語の文を、前記第1言語と前記第2言語の対訳辞書を用いてマッチングして、前記第1言語と前記第2言語の1以上の対訳文を取得するステップと、前記取得された1以上の対訳文に基づいて翻訳モデルを生成するステップと、前記取得された1以上の対訳文の各々について、前記生成された翻訳モデルを用いて、当該対訳文を構成する前記第1言語の文を前記第2言語に翻訳するステップと、前記取得された1以上の対訳文の各々について、前記第2言語に翻訳された前記第1言語の文と、当該文に対応する前記第2言語の文との間の編集距離を算出するステップと、前記取得された1以上の対訳文のうち、前記算出された編集距離が閾値よりも大きい対訳文を選別するステップとを実行させるためのプログラムを提供する。
【発明の効果】
【0009】
本発明によれば、単語の一致数のみに基づいて文の対応付けを行う場合と比較して、より品質の高い対訳コーパスを作成することができる。
【発明を実施するための形態】
【0011】
1.実施形態
1−1.構成
図1は、本実施形態に係る対訳文抽出装置1の構成の一例を示すブロック図である。対訳文抽出装置1は、CPU等の演算処理装置と、HDD等の記憶装置を備えるコンピュータである。この対訳文抽出装置1は、対訳文書記憶部101と、対訳文書取得部102と、単語分割部103と、対訳辞書記憶部104と、対訳文取得部105と、対訳文記憶部106と、翻訳モデル生成部107と、翻訳部108と、編集距離算出部109と、対訳文選別部110と、対訳文編集部111という機能を備える。これらの機能のうち、対訳文書記憶部101、対訳辞書記憶部104および対訳文記憶部106の機能は、記憶装置により実現される。その他の機能は、演算処理装置が、記憶装置に記憶されるプログラムを実行することにより実現される。
【0012】
対訳文書記憶部101は、第1言語と第2言語の対訳文書を記憶する。ここで、第1言語は日本語であり、第2言語は英語である。対訳文書とは、日本語の文書と、当該文書を英語に翻訳して作成した英語の文書の対である。対訳文書は、例えば、同じ特許ファミリに属する日本特許出願の特許公報と米国特許出願の特許公報の対である。または、日本語の新聞記事と、当該新聞記事の英語版の対である。または、オープンソースソフトウェアの英語版のマニュアルと、当該マニュアルの日本語訳の対である。
【0013】
対訳文書取得部102は、対訳文書記憶部101から対訳文書を取得する。
【0014】
単語分割部103は、対訳文書取得部102により取得された対訳文書を文に分割し、かつ、各文を単語に分割する。日本語の文書については、形態素解析を行って、句点を手掛かりに文に分割し、かつ、各文を単語に分割する。その際、活用語を基本形に変換してもよい。英語の文書については、ピリオドを手掛かりに文に分割し、かつ、スペースを手掛かりに各文を単語に分割する。その際、語尾の解析を行って活用語を基本形に変換してもよい。また、大文字を小文字に変換し、かつ、複数形を単数形に変換してもよい。
【0015】
対訳辞書記憶部104は、対訳辞書を記憶する。ここで、対訳辞書とは、日本語の単語と、当該単語と同じ意味を持つ英語の単語の対の集合である。
【0016】
対訳文取得部105は、単語分割部103により切り出された日本語の文と英語の文を、対訳辞書記憶部104に記憶される対訳辞書を用いてマッチングして、日本語と英語の1以上の対訳文を取得する。具体的には、対訳文取得部105は、単語分割部103により切り出された日本語の文を英語に翻訳し、作成した翻訳文と英語の各文との類似度を算出し、算出した類似度が最大となる英語の文と上記日本語の文の対を対訳文として取得する。ここで、類似度とは、作成した翻訳文と英語の文の間で一致する単語の数に基づいて算出される値である。より具体的には、翻訳文と英語の文に含まれるすべての自立語の数に対する、両者の間で一致する自立語の数の割合により表現される値である。例えば、対訳文取得部105は、上記の非特許文献に記載の対訳コーパス作成方法のように、DP(Dynamic Programming)マッチングを用いて対訳文を取得する。別の例として、対訳文取得部105は、Takehito Utsuro, et al. "Bilingual Text Matching using Bilingual Dictionary and Statistics," COLING, p.1076-1082, 1994に記載のようにDPマッチングを用いて対訳文を取得してもよい。なおここで、対訳文とは、日本語の文と、当該文を英語に翻訳して作成した英語の文の対である。言い換えると、日本語の文と、当該文と同じ意味を持つ英語の文の対である。
【0017】
対訳文記憶部106は、対訳文取得部105により取得された1以上の対訳文(言い換えると、対訳コーパス)を記憶する。その際、対訳文記憶部106は、各対訳文を、当該対訳文を識別する対訳文IDと対応付けて記憶する。
【0018】
翻訳モデル生成部107は、対訳文記憶部106に記憶された1以上の対訳文に基づいて翻訳モデルを生成する。その際、翻訳モデル生成部107は、例えばMosesデコーダ(http://www.statmt.org/moses/)を用いて翻訳モデルを生成する。Mosesデコーダについては、例えば、Philipp Koehn, et al. "Moses: Open Source Toolkit for Statistical Machine Translation," Annual Meeting of the Association for Computational Linguistics, demonstration session, Prague, Czech Republic, June 2007を参照のこと。
【0019】
翻訳部108は、対訳文記憶部106に記憶された1以上の対訳文の各々について、翻訳モデル生成部107により生成された翻訳モデルを用いて、当該対訳文を構成する日本語の文を英語に翻訳する。翻訳部108は、作成した翻訳文を、原文である日本語の文と対応付けて対訳文記憶部106に記憶する。
【0020】
編集距離算出部109は、対訳文記憶部106に記憶された1以上の対訳文の各々について、翻訳部108により英語に翻訳された日本語の文と、当該文に対応する英語の文との間の編集距離を算出する。ここで編集距離とは、英語に翻訳された日本語の文を、当該文に対応する英語の文に変更するために必要とされる編集操作の回数に基づいて算出される値である。具体的には、編集距離算出部109は、編集距離としてTER(Translation Error Rate)を算出する。ここで、編集操作とは、具体的には、挿入、削除、置換および並び替えの4つの操作である。TERについては、例えば、Matthew Snover, et al. "A study of translation edit rate with targeted human annotation," Proceedings of Association for Machine Translation in the Americas, p.223-231, 2006を参照のこと。編集距離算出部109は、TERを算出すると、算出したTERを、対応する対訳文と対応付けて対訳文記憶部106に記憶する。
【0021】
対訳文選別部110は、対訳文記憶部106に記憶された1以上の対訳文のうち、編集距離算出部109により算出されたTERが閾値よりも大きい対訳文を選別する。ここで閾値は、例えば、対訳文記憶部106に記憶された1以上の対訳文のうち所定の割合の対訳文が選別されるように設定される。対訳文を選別すると、編集距離算出部109は、当該対訳文の対訳文IDを、削除対象として対訳文編集部111に通知する。
【0022】
対訳文編集部111は、対訳文選別部110から通知された対訳文IDにより識別される対訳文を対訳文記憶部106から削除する。
【0023】
1−2.動作
対訳文抽出装置1の動作について説明する。
図2は、対訳文抽出装置1により実行される対訳文抽出処理の一例を示すフロー図である。
【0024】
この対訳文抽出処理のステップS1において、対訳文抽出装置1の対訳文書取得部102は、対訳文書記憶部101から対訳文書を取得する。
図3は、対訳文書の一例を示す図である。
【0025】
対訳文書取得部102により対訳文書が取得されると、単語分割部103は、取得された対訳文書を文に分割し、かつ、各文を単語に分割する(ステップS2)。日本語の文書については、形態素解析を行って、句点を手掛かりに文に分割し、かつ、各文を単語に分割する。英語の文書については、ピリオドを手掛かりに文に分割し、かつ、スペースを手掛かりに各文を単語に分割する。
【0026】
単語分割部103により対訳文書が文に分割され、かつ、各文が単語に分割されると、対訳文取得部105は、単語分割部103により切り出された日本語の文と英語の文を、対訳辞書記憶部104に記憶される対訳辞書を用いてマッチングして、日本語と英語の1以上の対訳文を取得する(ステップS3)。1以上の対訳文を取得すると、対訳文取得部105は、各対訳文を対訳文IDと対応付けて対訳文記憶部106に記憶する(ステップS4)。
図4は、対訳文取得部105により対訳文が記憶された対訳文記憶部106のデータの一例を示す図である。
【0027】
対訳文取得部105により1以上の対訳文が対訳文記憶部106に記憶されると、翻訳モデル生成部107は、記憶された1以上の対訳文に基づいて翻訳モデルを生成する(ステップS5)。
【0028】
翻訳モデル生成部107により翻訳モデルが生成されると、翻訳部108は、対訳文記憶部106に記憶された1以上の対訳文の各々について、生成された翻訳モデルを用いて、当該対訳文を構成する日本語の文を英語に翻訳する(ステップS6)。翻訳部108は、作成した翻訳文を、原文である日本語の文と対応付けて対訳文記憶部106に記憶する。
図5は、翻訳部108により翻訳文が記憶された対訳文記憶部106のデータの一例を示す図である。
【0029】
翻訳部108により対訳文を構成する日本語の文が英語に翻訳されると、編集距離算出部109は、対訳文記憶部106に記憶された1以上の対訳文の各々について、英語に翻訳された日本語の文と、当該文に対応する英語の文との間のTERを算出する(ステップS7)。編集距離算出部109は、TERを算出すると、算出したTERを、対応する対訳文と対応付けて対訳文記憶部106に記憶する。
図6は、編集距離算出部109によりTERが記憶された対訳文記憶部106のデータの一例を示す図である。同図に示すTERの「総合」とは、挿入、削除、置換および並び替えの各操作の回数を合計した値である。
【0030】
編集距離算出部109によりTERが算出されると、対訳文選別部110は、対訳文記憶部106に記憶された1以上の対訳文のうち、TERが閾値よりも大きい対訳文を選別する(ステップS8)。対訳文を選別すると、編集距離算出部109は、当該対訳文の対訳文IDを、削除対象として対訳文編集部111に通知する。例えば、閾値が「5」に設定されていたとすると、対訳文選別部110は、
図6に示す対訳文のうち、対訳文ID「032」を削除対象として対訳文編集部111に通知する。
【0031】
対訳文編集部111は、対訳文選別部110から対訳文IDが通知されると、当該対訳文IDにより識別される対訳文を対訳文記憶部106から削除する(ステップS9)。
以上が、対訳文抽出処理についての説明である。
【0032】
以上説明した対訳文抽出装置1によれば、対訳文取得部105によりDPマッチングを用いて対訳文書から対訳文が取得された後に、その取得された対訳文の中から、対訳文選別部110により、TERに基づいて選別が行われる。そのため、この対訳文書記憶部101によれば、単語の一致数のみに基づいて文の対応付けを行う場合と比較して、より品質の高い対訳コーパスを作成することができる。
【0033】
2.変形例
上記の実施形態は、以下に記載するように変形してもよい。以下に記載する1以上の変形例は、互いに組み合わせてもよい。
【0034】
2−1.変形例1
上記の実施形態に係る対訳文抽出装置1は、複数のコンピュータにより構成されるコンピュータシステムであってもよい。上記の実施形態に係る対訳文抽出装置1が備える記憶装置は、インターネット等の通信回線を介して対訳文抽出装置1と接続されてもよい。
【0035】
2−2.変形例2
上記の実施形態において、第1言語を英語とし、第2言語を日本語としてもよい。また、第1言語と第2言語の組み合わせは、日本語と英語の他に、ドイツ語、フランス語、中国語、韓国語等の自然言語の中から任意に選択されてよい。
【0036】
2−3.変形例3
翻訳モデル生成部107は、Mosesデコーダ以外の他のデコーダを用いて翻訳モデルを生成してもよい。例えば、Pharaohデコーダを用いて翻訳モデルを生成してもよい。Pharaohデコーダについては、例えば、Philipp Koehn, "Pharaoh: A Beam Search Decoder for Phrase-Based Statistical Machine Translation Models," Proceedings of the 6th Conference of the Association for Machine Translation in the Americas, p.115-124, 2004を参照のこと。
【0037】
2−4.変形例4
上記の実施形態において、翻訳モデル生成部107を省略し、翻訳部108は、予め定められた翻訳モデルを用いて、対訳文記憶部106に記憶された1以上の対訳文の各々について、当該対訳文を構成する日本語の文を英語に翻訳してもよい。
【0038】
2−5.変形例5
上記の実施形態に係る編集距離算出部109は、編集距離として、TER以外の値を算出してもよい。例えば、Levenshtein距離や、Damerau-Levenshtein距離や、Jaro-Winkler距離を算出してもよい。
【0039】
別の例として、編集距離算出部109は、対訳文記憶部106に記憶された1以上の対訳文の各々について、翻訳部108により英語に翻訳された日本語の文と、当該文に対応する英語の文との間のBLUEまたはRIBESを算出してもよい。BLUEについては、例えば、
Kishore Papineni, et al. "BLUE: a method for automatic evaluation of machine translation," Proc. of the 40th Annual Meeting of the Association for Computational Linguistics, p.311-318, July 2002を参照のこと。RIBESについては、例えば、平尾努,他「RIBES: 順位相関に基づく翻訳の自動評価法」、言語処理学会 第17回年次大会発表論文集、p.1115-1118、2011年3月を参照のこと。
【0040】
2−6.変形例6
上記の実施形態に係る対訳文選別部110は、TERが閾値よりも大きい対訳文を選別した後、選別した対訳文以外の対訳文であって対訳文記憶部106に記憶されている対訳文の対訳文IDを、削除せずに残す対訳文として対訳文編集部111に通知してもよい。この場合、対訳文編集部111は、対訳文選別部110から通知された対訳文IDにより識別される対訳文以外の対訳文を対訳文記憶部106から削除する。
【0041】
2−7.変形例7
対訳文抽出装置1の各機能を実現するためのプログラムは、コンピュータ装置が読み取り可能な記録媒体を介して提供されてもよい。ここで、記録媒体とは、例えば、磁気テープや磁気ディスクなどの磁気記録媒体や、光ディスクなどの光記録媒体や、光磁気記録媒体や、半導体メモリ等である。また、このプログラムは、インターネット等のネットワークを介して提供されてもよい。