特許第6227179号(P6227179)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社Cygamesの特許一覧

<>
  • 特許6227179-翻訳支援システム等 図000003
  • 特許6227179-翻訳支援システム等 図000004
  • 特許6227179-翻訳支援システム等 図000005
  • 特許6227179-翻訳支援システム等 図000006
  • 特許6227179-翻訳支援システム等 図000007
  • 特許6227179-翻訳支援システム等 図000008
  • 特許6227179-翻訳支援システム等 図000009
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】6227179
(24)【登録日】2017年10月20日
(45)【発行日】2017年11月8日
(54)【発明の名称】翻訳支援システム等
(51)【国際特許分類】
   G06F 17/28 20060101AFI20171030BHJP
【FI】
   G06F17/28 636
   G06F17/28 627
【請求項の数】12
【全頁数】23
(21)【出願番号】特願2017-65365(P2017-65365)
(22)【出願日】2017年3月29日
【審査請求日】2017年4月28日
【早期審査対象出願】
(73)【特許権者】
【識別番号】511249637
【氏名又は名称】株式会社Cygames
(74)【代理人】
【識別番号】100094569
【弁理士】
【氏名又は名称】田中 伸一郎
(74)【代理人】
【識別番号】100088694
【弁理士】
【氏名又は名称】弟子丸 健
(74)【代理人】
【識別番号】100103610
【弁理士】
【氏名又は名称】▲吉▼田 和彦
(74)【代理人】
【識別番号】100067013
【弁理士】
【氏名又は名称】大塚 文昭
(74)【代理人】
【識別番号】100086771
【弁理士】
【氏名又は名称】西島 孝喜
(74)【代理人】
【識別番号】100109070
【弁理士】
【氏名又は名称】須田 洋之
(74)【代理人】
【識別番号】100109335
【弁理士】
【氏名又は名称】上杉 浩
(74)【代理人】
【識別番号】100120525
【弁理士】
【氏名又は名称】近藤 直樹
(74)【代理人】
【識別番号】100196612
【弁理士】
【氏名又は名称】鎌田 慎也
(72)【発明者】
【氏名】倉林 修一
【審査官】 成瀬 博之
(56)【参考文献】
【文献】 特開2006−004366(JP,A)
【文献】 特開昭64−035661(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 17/27−17/288
(57)【特許請求の範囲】
【請求項1】
原言語文から目的言語文への機械翻訳を支援するための翻訳支援システムであって、
翻訳対象の原言語文の入力を受け付ける入力部と、
原言語文から目的言語文への機械翻訳が正しく行われない複数の原言語文に含まれる単語又は単語の組み合わせを少なくとも格納するエラーデータベースと、
複数の原言語文、及び該複数の原言語文に対応する所定の条件を満たす形式で表された制御された原言語文である被制御原言語文を格納する被制御原言語文コーパスと、
前記入力された原言語文が機械翻訳可能であるか否かを判定する制御部と、
機械翻訳可能でないと判定された前記入力された原言語文を出力可能な出力部と、を備え、
前記制御部は、
前記入力された原言語文の複雑さを表すスコアを前記入力された原言語文の文構造に基づいて決定し、該スコアの大きさにより前記入力された原言語文が機械翻訳可能であるか否かを判定し、機械翻訳可能であると判定された場合、前記入力された原言語文に含まれる単語又は単語の組み合わせと、前記エラーデータベースに格納される単語又は単語の組み合わせとに基づいて、前記入力された原言語文が機械翻訳可能であるか否かを更に判定し、
前記入力された原言語文が機械翻訳可能でないと判定された場合、前記入力された原言語文に含まれる単語又は単語の組み合わせ、前記被制御原言語文コーパスに格納される原言語文に含まれる単語又は単語の組み合わせとのマッチング度合に基づいて、前記入力された原言語文が前記被制御原言語文に変換可能であるか否かを判定し、変換可能であると判定された場合は、前記被制御原言語文コーパスを用いることにより前記入力された原言語文を前記被制御原言語文に変換するとともに機械翻訳可能であると判定し、変換可能でないと判定された場合は前記入力された原言語文が機械翻訳可能でないと判定する、翻訳支援システム。
【請求項2】
前記制御部は、前記入力された原言語文の複雑さを表すスコアを、該原言語文の長さ、該原言語文に含まれる所定の品詞の数、及び該原言語文に含まれる所定の単語の数のうちの少なくとも1つに基づいて決定する、請求項1に記載の翻訳支援システム。
【請求項3】
前記翻訳支援システムは、複数の原言語文を格納する原言語文コーパスを更に備え、該格納された原言語文のそれぞれは原言語文の複雑さを表すスコアに関連付けられるものであり、
前記制御部は、前記入力された原言語文の複雑さを表すスコアを、前記入力された原言語文と類似度が高い前記格納された原言語文に関連付けられたスコアに基づいて決定する、請求項1又は2に記載の翻訳支援システム。
【請求項4】
前記被制御原言語文は、機械翻訳に適した文法、構文、及び語彙を用いて表された原言語文である、請求項1から3のいずれか1項に記載の翻訳支援システム。
【請求項5】
前記入力部は、前記被制御原言語文に変換可能でないと判定された原言語文に対する被制御原言語文の入力を更に受け付け可能であり、
前記制御部は、前記被制御原言語文に変換可能でないと判定された原言語文を前記入力を受け付けた前記被制御原言語文に変換するとともに、前記被制御原言語文に変換可能でないと判定された原言語文と、前記入力を受け付けた前記被制御原言語文とを前記被制御原言語文コーパスに格納する、請求項1から4のいずれか1項に記載の翻訳支援システム。
【請求項6】
前記制御部は、機械翻訳可能であると判定された前記入力された原言語文及び前記変換された前記被制御原言語文を、機械翻訳システムを用いて機械翻訳を実行し、前記出力部に該機械翻訳された目的言語文を出力する、請求項1から5のいずれか1項に記載の翻訳支援システム。
【請求項7】
前記入力部は、前記機械翻訳された目的言語文が適切に翻訳されなかったことを更に受け付け可能であり、
前記制御部は、前記目的言語文に対応する前記機械翻訳実行前の前記入力された原言語文を前記エラーデータベースに格納する、請求項6に記載の翻訳支援システム。
【請求項8】
前記制御部は、前記機械翻訳実行前の前記入力された原言語文に含まれる一の既定の固有名詞他の既定の固有名詞に置換し、前記機械翻訳された目的言語文に含まれる換された該他の既定の固有名詞を換前の該一の既定の固有名詞に再置換する、請求項6又は7に記載の翻訳支援システム。
【請求項9】
前記制御部は、既定の原言語文に対して前記機械翻訳システムを用いて定期的に機械翻訳を実行し、今回機械翻訳された目的言語文と、前回機械翻訳された目的言語文との比較に基づいて前記機械翻訳システムの変更を検出する、請求項6から8のいずれか1項に記載の翻訳支援システム。
【請求項10】
原言語文から目的言語文への機械翻訳を支援するための翻訳支援装置であって、
翻訳対象の原言語文の入力を受け付ける入力部と、
原言語文から目的言語文への機械翻訳が正しく行われない複数の原言語文に含まれる単語又は単語の組み合わせを少なくとも格納するエラーデータベースと、
複数の原言語文、及び該複数の原言語文に対応する所定の条件を満たす形式で表された制御された原言語文である被制御原言語文を格納する被制御原言語文コーパスと、
前記入力された原言語文が機械翻訳可能であるか否かを判定する制御部と、
機械翻訳可能でないと判定された前記入力された原言語文を出力可能な出力部と、を備え、
前記制御部は、
前記入力された原言語文の複雑さを表すスコアを前記入力された原言語文の文構造に基づいて決定し、該スコアの大きさにより前記入力された原言語文が機械翻訳可能であるか否かを判定し、機械翻訳可能であると判定された場合、前記入力された原言語文に含まれる単語又は単語の組み合わせと、前記エラーデータベースに格納される単語又は単語の組み合わせとに基づいて、前記入力された原言語文が機械翻訳可能であるか否かを更に判定し、
前記入力された原言語文が機械翻訳可能でないと判定された場合、前記入力された原言語文に含まれる単語又は単語の組み合わせ、前記被制御原言語文コーパスに格納される原言語文に含まれる単語又は単語の組み合わせとのマッチング度合に基づいて、前記入力された原言語文が前記被制御原言語文に変換可能であるか否かを判定し、変換可能であると判定された場合は、前記被制御原言語文コーパスを用いることにより前記入力された原言語文を前記被制御原言語文に変換するとともに機械翻訳可能であると判定し、変換可能でないと判定された場合は前記入力された原言語文が機械翻訳可能でないと判定する、翻訳支援装置。
【請求項11】
原言語文から目的言語文への機械翻訳を支援するためのプログラムであって、コンピュータに、
翻訳対象の原言語文の入力を受け付ける入力受付ステップと、
前記入力された原言語文の複雑さを表すスコアを前記入力された原言語文の文構造に基づいて決定し、該スコアの大きさにより前記入力された原言語文が機械翻訳可能であるか否かを判定する第1の判定ステップと、
前記第1の判定ステップにおいて機械翻訳可能であると判定された場合、前記入力された原言語文に含まれる単語又は単語の組み合わせと、原言語文から目的言語文への機械翻訳が正しく行われない複数の原言語文に含まれる単語又は単語の組み合わせを少なくとも含むデータベースに格納される単語又は単語の組み合わせとに基づいて、前記入力された原言語文が機械翻訳可能であるか否かを判定する第2の判定ステップと、
前記第1の判定ステップ又は前記第2の判定ステップにおいて機械翻訳可能でないと判定された場合、前記入力された原言語文に含まれる単語又は単語の組み合わせ、複数の原言語文及び該複数の原言語文に対応する所定の条件を満たす形式で表された制御された原言語文である被制御原言語文を格納するコーパスに格納される原言語文に含まれる単語又は単語の組み合わせとのマッチング度合に基づいて、前記入力された原言語文が前記被制御原言語文に変換可能であるか否かを判定し、変換可能であると判定された場合は、前記コーパスを用いることにより前記入力された原言語文を前記被制御原言語文に変換するとともに機械翻訳可能であると判定し、変換可能でないと判定された場合は前記入力された原言語文が機械翻訳可能でないと判定する第3の判定ステップと、
前記第3の判定ステップにおいて機械翻訳可能でないと判定された前記入力された原言語文を出力する出力ステップと、
を実行させるプログラム。
【請求項12】
原言語文から目的言語文への機械翻訳を支援するための、コンピュータにより実行される方法であって、
翻訳対象の原言語文の入力を受け付ける入力受付ステップと、
前記入力された原言語文の複雑さを表すスコアを前記入力された原言語文の文構造に基づいて決定し、該スコアの大きさにより前記入力された原言語文が機械翻訳可能であるか否かを判定する第1の判定ステップと、
前記第1の判定ステップにおいて機械翻訳可能であると判定された場合、前記入力された原言語文に含まれる単語又は単語の組み合わせと、原言語文から目的言語文への機械翻訳が正しく行われない複数の原言語文に含まれる単語又は単語の組み合わせを少なくとも含むデータベースに格納される単語又は単語の組み合わせとに基づいて、前記入力された原言語文が機械翻訳可能であるか否かを判定する第2の判定ステップと、
前記第1の判定ステップ又は前記第2の判定ステップにおいて機械翻訳可能でないと判定された場合、前記入力された原言語文に含まれる単語又は単語の組み合わせ、複数の原言語文及び該複数の原言語文に対応する所定の条件を満たす形式で表された制御された原言語文である被制御原言語文を格納するコーパスに格納される原言語文に含まれる単語又は単語の組み合わせとのマッチング度合に基づいて、前記入力された原言語文が前記被制御原言語文に変換可能であるか否かを判定し、変換可能であると判定された場合は、前記コーパスを用いることにより前記入力された原言語文を前記被制御原言語文に変換するとともに機械翻訳可能であると判定し、変換可能でないと判定された場合は前記入力された原言語文が機械翻訳可能でないと判定する第3の判定ステップと、
前記第3の判定ステップにおいて機械翻訳可能でないと判定された前記入力された原言語文を出力する出力ステップと、
を含む方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、翻訳支援システムに関し、特に原言語文から目的言語文への機械翻訳を支援するための翻訳支援システム、翻訳支援装置、プログラム、及び方法に関する。
【背景技術】
【0002】
近年、インターネットが発達し、機械翻訳システム(機械翻訳エンジン)が、インターネット上で無料又は有料で利用可能となっている。機械翻訳には、ルールベース機械翻訳(RBMT: Rule Base Machine Translation)と、統計的機械翻訳(SMT: Statistical Machine Translation)の2つのアプローチがある。
【0003】
ルールベース機械翻訳は、原言語を構文解析し、辞書を用いて文節単位で目的言語へ翻訳し、目的言語の文法へ翻訳した文字列を並び変えるという方法をとる。ルールベース機械翻訳は、構文解析や文節の翻訳において、言語ルール、文法ルール、及び辞書といった、人手で準備された知識を用いる。例えば、ルールベース機械翻訳は、人間が翻訳辞書や翻訳ルールをプログラムすることで実現するものである。その際、プログラマは、原言語と目的言語の両方の文法に精通し、語順を入れ替えたり、対応する語句で置き換えたりするための規則を考え、プログラムとして実行可能な形式でルールを書き下していく。
【0004】
統計的機械翻訳は、大量の対訳文(コーパス)から翻訳モデルを自動的に生成するアプローチである(非特許文献1)。代表的な実装として、Google Translate APIやMicrosoft Translate APIが挙げられる。統計的機械翻訳は、ルールベース機械翻訳が必要としていた言語ルール、文法ルール、及び辞書を、コーパスから自動的に生成することができるため、翻訳システムを低コストに構築することができる。また統計的機械翻訳は、利用者からのフィードバックに応じて、複数の対訳結果候補から適切な結果を選択するようなフィードバック学習が可能であり、漸次的な翻訳精度の改善を行うことができるという利点がある。このフィードバック学習は、利用者が、より適切な翻訳文を選択又は入力すると、その入力をフィードバックとして、複数の対訳結果候補から適切な結果を次回から自動的に選択できるようになるというものである。以上のような特徴により、統計的機械翻訳は、多言語(例えば数十言語以上)を対象とした翻訳において、極めて有用である。
【0005】
これらの機械翻訳システムを対象として、入力する原言語を制御することにより、翻訳精度を改善する方式がある。本明細書では、機械翻訳システムよりも一段階抽象度が高い翻訳を行うシステムとして、これをメタレベル翻訳システムと呼ぶ。このメタレベル翻訳システムの既存技術としては、CNL(Controlled Natural Language)と呼ばれる一定の規約を持たせた自然言語を用いて曖昧性の低い文章に書き換えることにより、極めて高精度な多言語化を行う方式が挙げられる(非特許文献2、3)。このCNLを介した多言語翻訳は、雪崩警報の多言語化に代表される、正確な情報を自動的に翻訳するための手法として、すでに実用化されている。
【先行技術文献】
【特許文献】
【0006】
【非特許文献1】Philipp Koehn, Franz Josef Och, and Daniel Marcu. 2003. Statistical phrase-based translation. In Proceedings of the 2003 Conference of the North American Chapter of the Association for Computational Linguistics on Human Language Technology - Volume 1 (NAACL '03), Vol. 1. Association for Computational Linguistics, Stroudsburg, PA, USA, 48-54. DOI=http://dx.doi.org/10.3115/1073445.1073462.
【非特許文献2】Tobias Kuhn. 2014. A survey and classification of controlled natural languages. Comput. Linguist. 40, 1 (March 2014), 121-170. DOI=http://dx.doi.org/10.1162/COLI_a_00168
【非特許文献3】Norbert E. Fuchs, Kaarel Kaljurand, and Tobias Kuhn. 2008. Attempto Controlled English for Knowledge Representation. In Reasoning Web, LNCS5224. Springer-Verlag, 104-124. DOI=http://dx.doi.org/10.1007/978-3-540-85658-0_3
【発明の概要】
【発明が解決しようとする課題】
【0007】
上記のように、機械翻訳には様々なアプローチがあるが、以下のような課題がある。
【0008】
ルールベース機械翻訳は、様々な文章の翻訳において精度は安定して高いが、言語ルール、文法ルール、及び辞書を人手で構築する手間がかかる。また、これらの言語ルール、文法ルール、及び辞書は、原言語及び目的言語の両方について作成する必要があり、多言語(例えば数十言語以上)を対象とした翻訳を行うコストは、更に高くなる傾向にある。
【0009】
統計的機械翻訳は、大量のコーパスが用意できない分野には適用しにくく、大量の未知語が発生しうる分野には適用しにくい。また、翻訳精度がコーパスに依存するため、翻訳精度を一定に保つことが難しい。例えば、統計的機械翻訳は、ゲーム分野に適用するにあたっては、翻訳対象となる物語に近い文章の対訳文をあらかじめ大量に用意し学習する必要がある。ゲームにおける物語文章(ゲーム内のシナリオなどの文章)は、非日常的な表現を含む文章や当該ゲームの背景にある情報に依存して意味が決まるような曖昧性のある文章も多く、そのまま統計的機械翻訳を行うことは難しい。またフィードバック学習は、大量のユーザが存在するウェブ翻訳には適しているものの、一度に多言語の学習を行うことはできないため、ゲームにおける物語文章の高精度な多言語化という目的には、そのまま適用することは難しい。
【0010】
原言語文を一度CNLの文に書き換えてから機械翻訳を行う方式は、すべての原文をCNLの文(CNLの一定の規約を満たす文)に書き換えることにより正確な翻訳結果を多言語で得ることができるが、CNLの文への書き換えを人手で行う手間がかかる。またCNLは、自然言語本来の微妙なニュアンスを表記するのには適しておらず、すべての文章をCNLの文に書き換えることは必ずしも適切でない場合がある。
【0011】
以上のように、既存の機械翻訳システムを用いて、例えばゲームにおける大量の物語文章を、スピーディかつ高精度に多言語化することを目的としたとき、要素技術は存在するものの、それらを適切に統合する技術はいまだ確立していない状況である。なお、ここでの翻訳の高精度とは、原文のニュアンスの維持を含めた翻訳の正確性を意味する。
【0012】
本発明は、このような課題を解決するためになされたものであり、機械翻訳システムを用いて、翻訳精度の高さを維持しつつ、人手による関与を低減化することにより翻訳コストを低減化することが可能な翻訳支援システムを提供することを主目的とする。
【課題を解決するための手段】
【0013】
上記の目的を達成するために、本発明の一態様としての翻訳支援システムは、原言語文から目的言語文への機械翻訳を支援するための翻訳支援システムであって、翻訳対象の原言語文の入力を受け付ける入力部と、原言語文から目的言語文への機械翻訳が正しく行われない複数の原言語文に含まれる単語又は単語の組み合わせを少なくとも格納するエラーデータベースと、複数の原言語文、及び該複数の原言語文に対応する所定の条件を満たす形式で表された制御された原言語文である被制御原言語文を格納する被制御原言語文データベースと、上記入力された原言語文が機械翻訳可能であるか否かを判定する制御部と、機械翻訳可能でないと判定された上記入力された原言語文を出力可能な出力部と、を備え、上記制御部は、上記入力された原言語文の複雑さを表すスコアを上記入力された原言語文の文構造に基づいて決定し、該スコアの大きさにより上記入力された原言語文が機械翻訳可能であるか否かを判定し、機械翻訳可能であると判定された場合、上記入力された原言語文に含まれる単語又は単語の組み合わせと、上記エラーデータベースに格納される単語又は単語の組み合わせとに基づいて、上記入力された原言語文が機械翻訳可能であるか否かを更に判定し、上記入力された原言語文が機械翻訳可能でないと判定された場合、上記入力された原言語文に含まれる単語又は単語の組み合わせを、上記被制御原言語文データベースに格納される原言語文に含まれる単語又は単語の組み合わせと比較することにより、上記入力された原言語文が上記被制御原言語文に変換可能であるか否かを判定し、変換可能であると判定された場合は上記入力された原言語文を上記被制御原言語文に変換するとともに機械翻訳可能であると判定し、変換可能でないと判定された場合は上記入力された原言語文が機械翻訳可能でないと判定することを特徴とする。
【0014】
また、本発明において好ましくは、上記制御部は、上記入力された原言語文の複雑さを表すスコアを、該原言語文の長さ、該原言語文に含まれる所定の品詞の数、及び該原言語文に含まれる所定の単語の数のうちの少なくとも1つに基づいて決定する。
【0015】
また、本発明において好ましくは、上記翻訳支援システムは、複数の原言語文を格納する原言語文コーパスを更に備え、該格納された原言語文のそれぞれは原言語文の複雑さを表すスコアに関連付けられるものであり、上記制御部は、上記入力された原言語文の複雑さを表すスコアを、上記入力された原言語文と類似度が高い上記格納された原言語文に関連付けられたスコアに基づいて決定する。
【0016】
また、本発明において好ましくは、上記被制御原言語文は、機械翻訳に適した文法、構文、及び語彙を用いて表された原言語文である。
【0017】
また、本発明において好ましくは、上記入力部は、上記被制御原言語文に変換可能でないと判定された原言語文に対する被制御原言語文の入力を更に受け付け可能であり、上記制御部は、上記被制御原言語文に変換可能でないと判定された原言語文を上記入力を受け付けた上記被制御原言語文に変換するとともに、上記被制御原言語文に変換可能でないと判定された原言語文と、上記入力を受け付けた上記被制御原言語文とを上記被制御原言語文データベースに格納する。
【0018】
また、本発明において好ましくは、上記制御部は、機械翻訳可能であると判定された上記入力された原言語文及び上記変換された上記被制御原言語文を、機械翻訳システムを用いて機械翻訳を実行し、上記出力部に該機械翻訳された目的言語文を出力する。
【0019】
また、本発明において好ましくは、上記入力部は、上記機械翻訳された目的言語文が適切に翻訳されなかったことを更に受け付け可能であり、上記制御部は、上記目的言語文に対応する上記機械翻訳実行前の上記入力された原言語文を上記エラーデータベースに格納する。
【0020】
また、本発明において好ましくは、上記制御部は、上記機械翻訳実行前の上記入力された原言語文に含まれる所定の単語を既定の固有名詞に置換し、上記機械翻訳された目的言語文に含まれる該置換された固有名詞を該置換前の単語に再置換する。
【0021】
また、本発明において好ましくは、上記制御部は、既定の原言語文に対して上記機械翻訳システムを用いて定期的に機械翻訳を実行し、該機械翻訳された目的言語文と、該機械翻訳の直前に機械翻訳された目的言語文との比較に基づいて上記機械翻訳システムの変更を検出する。
【0022】
また、上記の目的を達成するために、本発明の一態様としての翻訳支援装置は、原言語文から目的言語文への機械翻訳を支援するための翻訳支援装置であって、翻訳対象の原言語文の入力を受け付ける入力部と、原言語文から目的言語文への機械翻訳が正しく行われない複数の原言語文に含まれる単語又は単語の組み合わせを少なくとも格納するエラーデータベースと、複数の原言語文、及び該複数の原言語文に対応する所定の条件を満たす形式で表された制御された原言語文である被制御原言語文を格納する被制御原言語文データベースと、上記入力された原言語文が機械翻訳可能であるか否かを判定する制御部と、機械翻訳可能でないと判定された上記入力された原言語文を出力可能な出力部と、を備え、上記制御部は、上記入力された原言語文の複雑さを表すスコアを上記入力された原言語文の文構造に基づいて決定し、該スコアの大きさにより上記入力された原言語文が機械翻訳可能であるか否かを判定し、機械翻訳可能であると判定された場合、上記入力された原言語文に含まれる単語又は単語の組み合わせと、上記エラーデータベースに格納される単語又は単語の組み合わせとに基づいて、上記入力された原言語文が機械翻訳可能であるか否かを更に判定し、上記入力された原言語文が機械翻訳可能でないと判定された場合、上記入力された原言語文に含まれる単語又は単語の組み合わせを、上記被制御原言語文データベースに格納される原言語文に含まれる単語又は単語の組み合わせと比較することにより、上記入力された原言語文が上記被制御原言語文に変換可能であるか否かを判定し、変換可能であると判定された場合は上記入力された原言語文を上記被制御原言語文に変換するとともに機械翻訳可能であると判定し、変換可能でないと判定された場合は上記入力された原言語文が機械翻訳可能でないと判定することを特徴とする。
【0023】
また、上記の目的を達成するために、本発明の一態様としてのプログラムは、原言語文から目的言語文への機械翻訳を支援するためのプログラムであって、コンピュータに、翻訳対象の原言語文の入力を受け付ける入力受付ステップと、上記入力された原言語文の複雑さを表すスコアを上記入力された原言語文の文構造に基づいて決定し、該スコアの大きさにより上記入力された原言語文が機械翻訳可能であるか否かを判定する第1の判定ステップと、上記第1の判定ステップにおいて機械翻訳可能であると判定された場合、上記入力された原言語文に含まれる単語又は単語の組み合わせと、原言語文から目的言語文への機械翻訳が正しく行われない複数の原言語文に含まれる単語又は単語の組み合わせを少なくとも含むデータベースに格納される単語又は単語の組み合わせとに基づいて、上記入力された原言語文が機械翻訳可能であるか否かを判定する第2の判定ステップと、上記第1の判定ステップ又は上記第2の判定ステップにおいて機械翻訳可能でないと判定された場合、上記入力された原言語文に含まれる単語又は単語の組み合わせを、複数の原言語文及び該複数の原言語文に対応する所定の条件を満たす形式で表された制御された原言語文である被制御原言語文を格納するデータベースに格納される原言語文に含まれる単語又は単語の組み合わせと比較することにより、上記入力された原言語文が上記被制御原言語文に変換可能であるか否かを判定し、変換可能であると判定された場合は上記入力された原言語文を上記被制御原言語文に変換するとともに機械翻訳可能であると判定し、変換可能でないと判定された場合は上記入力された原言語文が機械翻訳可能でないと判定する第3の判定ステップと、上記第3の判定ステップにおいて機械翻訳可能でないと判定された上記入力された原言語文を出力する出力ステップと、を実行させることを特徴とする。
【0024】
また、上記の目的を達成するために、本発明の一態様としての方法は、原言語文から目的言語文への機械翻訳を支援するための方法であって、翻訳対象の原言語文の入力を受け付ける入力受付ステップと、上記入力された原言語文の複雑さを表すスコアを上記入力された原言語文の文構造に基づいて決定し、該スコアの大きさにより上記入力された原言語文が機械翻訳可能であるか否かを判定する第1の判定ステップと、上記第1の判定ステップにおいて機械翻訳可能であると判定された場合、上記入力された原言語文に含まれる単語又は単語の組み合わせと、原言語文から目的言語文への機械翻訳が正しく行われない複数の原言語文に含まれる単語又は単語の組み合わせを少なくとも含むデータベースに格納される単語又は単語の組み合わせとに基づいて、上記入力された原言語文が機械翻訳可能であるか否かを判定する第2の判定ステップと、上記第1の判定ステップ又は上記第2の判定ステップにおいて機械翻訳可能でないと判定された場合、上記入力された原言語文に含まれる単語又は単語の組み合わせを、複数の原言語文及び該複数の原言語文に対応する所定の条件を満たす形式で表された制御された原言語文である被制御原言語文を格納するデータベースに格納される原言語文に含まれる単語又は単語の組み合わせと比較することにより、上記入力された原言語文が上記被制御原言語文に変換可能であるか否かを判定し、変換可能であると判定された場合は上記入力された原言語文を上記被制御原言語文に変換するとともに機械翻訳可能であると判定し、変換可能でないと判定された場合は上記入力された原言語文が機械翻訳可能でないと判定する第3の判定ステップと、上記第3の判定ステップにおいて機械翻訳可能でないと判定された上記入力された原言語文を出力する出力ステップと、を含むことを特徴とする。
【発明の効果】
【0025】
本発明によれば、機械翻訳システムを用いて、翻訳精度の高さを維持しつつ、人手による関与を低減化することにより翻訳コストを低減化することができる。
【図面の簡単な説明】
【0026】
図1】本発明の一実施形態によるシステムの全体構成図である。
図2】本発明の一実施形態による翻訳支援装置のハードウェア構成を示すブロック図である。
図3】本発明の一実施形態による翻訳支援装置の機能ブロック図の一例を示す。
図4】本発明の一実施形態による機械翻訳変換部の文字列変換フィルタ部によるフィルタ処理の様子を示すものである。
図5】本発明の一実施形態による翻訳支援装置の機械翻訳可否判定の処理を示すフローチャートである。
図6】本発明の一実施形態による翻訳支援装置の機械翻訳処理を示すフローチャートである。
図7】本発明の他の一実施形態による翻訳支援システムの全体構成図である。
【発明を実施するための形態】
【0027】
以下、図面を参照して、本発明の実施形態を説明する。本発明の実施形態による翻訳支援システムは、既存の機械翻訳システムを対象として、入力する原言語を制御することにより、翻訳精度を改善するシステムであり、既存の機械翻訳システムよりも一段階抽象度が高いメタレベル翻訳システムである。例えば、本発明の実施形態による翻訳支援システムは、日本のRPGに代表される、大量の文章を表示するゲームの多言語化を、既存の機械翻訳システムを用いて高精度かつ低コストで行うためのメタレベル翻訳システムである。
【0028】
なお本明細書において、原言語文は、翻訳対象の言語(翻訳元の言語)で構成された文であり、目的言語文は、翻訳された言語(翻訳先の言語)で構成された文であり、文は、名詞だけの文などの不完全文を含むものとする。また本実施形態において、原言語は英語を想定しているが、他の言語であっても構わない。また本明細書において、1又は複数の文を参照する場合において、その後の記載において各文と記載した場合、当該記載においても1つの文を含むものとする。
【0029】
図1は、本発明の一実施形態による翻訳システム2の全体構成図である。図1に示すように、翻訳システム1は、翻訳支援装置10と、機械翻訳サーバ6と、を含む。翻訳支援装置10及び機械翻訳サーバ6は、インターネットなどのネットワーク4に接続され、互いに通信可能である。ただし、それぞれが必要に応じて個別に接続される形態であってもかまわない。翻訳支援システム1は、翻訳システム2のうち機械翻訳サーバ6以外の構成を備えるものである。
【0030】
図2は本発明の一実施形態による翻訳支援装置10のハードウェア構成を示すブロック図である。本実施形態による翻訳支援装置10は、一般的なサーバやPC等と同様の構成を含む。翻訳支援装置10は、プロセッサ11、出力装置12、入力装置13、記憶装置14、及び通信装置15を備える。これらの各構成装置はバス16によって接続される。なお、バス16と各構成装置との間には必要に応じてインタフェースが介在しているものとする。
【0031】
プロセッサ11は、翻訳支援装置1全体の動作を制御するものであり、例えばCPUである。なお、プロセッサ11としては、MPU等の電子回路が用いられてもよい。プロセッサ11は、記憶装置14に格納されているプログラムやデータを読み込んで実行することにより、様々な処理を実行する。
【0032】
入力装置12は、翻訳支援装置10に対するユーザからの入力を受け付けるユーザインタフェースであり、例えば、タッチパネル、タッチパッド、キーボード、又はマウスである。
【0033】
出力装置13は、ユーザに翻訳支援システム1の出力情報を出力又は表示するものであり、例えば、画像を出力するディスプレイである。出力装置13は、プリンタを含むこともできる。
【0034】
記憶装置14は、主記憶装置及び補助記憶装置を含む。主記憶装置は、例えばRAMのような半導体メモリである。RAMは、情報の高速な読み書きが可能な揮発性の記憶媒体であり、プロセッサ11が情報を処理する際の記憶領域及び作業領域として用いられる。主記憶装置は、読み出し専用の不揮発性記憶媒体であるROMを含んでいてもよい。この場合、ROMはファームウェア等のプログラムを格納する。補助記憶装置は、様々なプログラムや、各プログラムの実行に際してプロセッサ11が使用するデータを格納する。補助記憶装置は、例えばハードディスク装置であるが、情報を格納できるものであればいかなる不揮発性ストレージ又は不揮発性メモリであってもよく、着脱可能なものであっても構わない。補助記憶装置は、例えば、オペレーティングシステム(OS)、ミドルウェア、アプリケーションプログラム、これらのプログラムの実行に伴って参照され得る各種データなどを格納する。
【0035】
通信装置15は、ネットワーク4を介して他のコンピュータとの間でデータの授受を行うための装置である。例えば通信装置15は、イーサネット(登録商標)ケーブル等を用いた有線通信や移動体通信、無線LAN等の無線通信を行い、ネットワーク4へ接続する。
【0036】
本実施形態においては、翻訳支援装置10は、データベースサーバ機能を備える。この場合、記憶装置14は各種データベース用のデータ(例えばテーブル)やプログラムを記憶し、プログラムが実行されることにより、各種データベースは実現される。他の例では、翻訳支援装置10は、複数のコンピュータ(サーバ)により構成される。この場合、翻訳支援装置10は、データベースサーバを含む構成としてもよい。
【0037】
機械翻訳サーバ6は、機械翻訳を実行するサーバであり、翻訳支援装置10を含む任意のクライアント端末からのアクセスに対応して機械翻訳を提供する。機械翻訳サーバ6は、例えばGoogle Translate APIやMicrosoft Translate APIなどの既存の機械翻訳システムである。機械翻訳サーバ6は、翻訳支援装置10から受け付けた原言語文について、翻訳支援装置10により指定された原言語から目的言語への機械翻訳を実行し、機械翻訳された目的言語文を翻訳支援装置10に返信する。
【0038】
図3は本発明の一実施形態による翻訳支援装置10の機能ブロック図の一例を示す。翻訳支援装置10は、制御部21と、入力部22と、出力部23と、原言語文データベース(DB)24と、エラーDB25と、被制御原言語文DB26と、翻訳対象データDB27と、を備える。本実施形態においては、プロセッサ11によりプログラムが実行されることによりこれらの機能が実現される。ただし、各機能を実現するための電子回路等を構成することによりハードウェアによっても実現できる。本実施形態においては、各種機能がプログラム読み込みにより実現されるため、1つのパート(機能)の一部を他のパートが有していてもよい。また図中の矢印は、各部間の主な情報のやりとりを示すが、本発明の実施形態による動作を実現できるものであれば、これらに限定されない。
【0039】
入力部22は、入力装置12を用いて構成されるものであり、翻訳支援装置10に対するユーザからの入力を受け付けるように構成される。出力部23は、出力装置13を介し、ユーザに対してデータや信号の出力を行う。
【0040】
1つの例では、入力部22は、翻訳対象の1又は複数の原言語文の入力を受け付ける。このとき、入力部22は、原言語の指定及び目的言語の指定の入力を受け付ける。なお目的言語の指定は、機械翻訳サーバ6送信前に、入力部22が入力を受け付けるように構成することもできる。1つの例では、出力部23は、翻訳対象の入力と、原言語文の選択と、目的言語の選択と、を受け付ける画面をディスプレイに表示する。ここで、原言語文の選択及び目的言語の選択とは、予め翻訳支援システム1が対象とする翻訳対象の複数言語のうちの1つの選択である。翻訳支援システム1が対象とする翻訳対象の言語は、好ましくは、既存の機械翻訳システムがサポートする言語と同じである。以下、入力部22が入力を受け付けた、翻訳対象の1又は複数の原言語文を入力原言語文という。
【0041】
翻訳対象データDB27は、入力原言語文を記憶し、各々の文ごとに機械翻訳可否判定フラグを記憶する。制御部21は、以下に説明する機械翻訳可否判定の処理に応じて、該判定フラグを更新する。ただし判定フラグは一例であって、翻訳対象データDB27が記憶するデータは、入力原言語文の各々の文が機械翻訳可能であるか否か(Machine-Translatability)について識別できるデータであればよい。
【0042】
エラーDB25は、原言語文から目的言語文への機械翻訳が正しく行われない1又は複数の原言語文を格納する。原言語文から目的言語文への機械翻訳が正しく行われない原言語文とは、実際に機械翻訳サーバ6により機械翻訳された結果としての目的言語文を人間が判断した場合に、該原言語文の持つ意味と異なる意味を持つもの又は意味が不明瞭なものである。好ましくは、エラーDB25は、格納された原言語文の一部又は全部を用いて得られた、原言語文から目的言語文への機械翻訳が正しく行われない1又は複数の原言語文に含まれる単語の組み合わせを1つ以上格納する。本明細書において、単語の組み合わせとは、複数の単語から構成されるものである。例えば単語の組み合わせは、複数の単語からなるフレーズ若しくは熟語、又は単なる単語列である。ここで、エラーDB25に格納される単語の組み合わせは、構成される各単語を有する場合に機械翻訳が正しく行われないものである。
【0043】
他の例では、エラーDB25は、原言語文から目的言語文への機械翻訳が正しく行われない1又は複数の原言語文に含まれる1つの単語を1つ以上格納する。他の例では、エラーDB25は、原言語文から目的言語文への機械翻訳が正しく行われない1又は複数の原言語文、及び該原言語文に含まれる単語又は単語の組み合わせを1つ以上格納する。
【0044】
被制御原言語文DB26は、複数の原言語文、及び該複数の原言語文に対応する所定の条件を満たす形式で表された制御された原言語文である被制御原言語文を格納する。好ましくは、被制御原言語文DB26は、それぞれの言語(原言語)ごとに、複数の原言語文と、該複数の原言語文に対応する複数の被制御原言語文とを格納するコーパスである。被制御原言語文は、機械翻訳に適した文法、構文、及び語彙を用いて表された原言語文である。1つの例では、被制御原言語は、一般的にCNL(Controlled Natural Language)と呼ばれる所定の要件を満たすよう文法及び語彙が制御された自然言語である。以下、本実施形態においては、被制御原言語はCNLであるものとする。好ましくは、被制御原言語文DB26は、予め人手により、入力原言語文からCNLの文へ書き換えた結果を、ペアとして格納する。
【0045】
原言語文DB24は、複数の原言語文を格納する原言語文コーパスを含む。格納された原言語文のそれぞれは原言語文の複雑さを表すスコアに関連付けられる。スコアは、公知の方法(例えば、William H. DuBay, The Principles of Readability, 25 August 2004, http://www.impact-information.com/impactinfo/readability02.pdf)を用いて、例えば、原言語文の長さ、原言語文に含まれる単語又は単語の組み合わせ、及び関係代名詞の数を用いて算出される。
【0046】
他の例では、スコアは、原言語文に含まれる関係代名詞や接続詞などの所定の品詞の数、及び原言語文に含まれる誤訳されやすい所定の単語の数のうちの少なくとも1つに基づいて算出される。他の例では、スコアは、原言語文の主語、述語、及び目的語の省略、並びに基本文型であるか否かのうちの少なくとも1つに基づいて算出される。
【0047】
制御部21は、基本制御部31と、機械翻訳可否判定部32と、被制御原言語文変換部36と、DB制御部37と、機械翻訳変換部38と、機械翻訳サーバ監視部39と、機械学習部40と、を含む。
【0048】
基本制御部31は、翻訳支援装置10全体の基本制御を行う。例えば、基本制御部31は、基本的な各種機能を実現するためのソフトウェアモジュールであり、OSやミドルウェアなどである。DB制御部37は、各部からの指示を受け付け、各種DB24〜27の情報の参照や保存を行う。以下、各部が直接DB操作を行う処理も記載するが、好ましくはDB制御部37を介して該処理が行われることは理解される。
【0049】
機械翻訳可否判定部32は、構文フィルタ部33と、意味フィルタ部34と、被制御原言語文変換可否判定部35と、を有し、入力原言語文が機械翻訳可能(Machine-Translatable)の原言語文であるか否かを判定する。これにより、機械翻訳対象とすることができない原言語文を抽出することが可能となる。同様にして、機械翻訳対象とすることができる原言語文を抽出することも可能となる。
【0050】
構文フィルタ部33は、入力原言語文の各文について、該入力原言語文の複雑さを表すスコアを該入力原言語文の文構造に基づいて各々決定し、該スコアの大きさにより該入力原言語文の各文が機械翻訳可能であるか否かを各々判定する。原言語文の複雑さを表すスコアは、原言語文の長さ、含まれる単語又は単語の組み合わせ、関係代名詞の数などを用いて算出される定量的なスコアである。1つの例では、このときDB制御部37は、各々の入力原言語文ごとに機械翻訳可否判定フラグを更新(記憶)する。
【0051】
構文フィルタ部33は、原言語文コーパスを用いて、入力原言語文と類似度が高い原言語文を抽出する。1つの例では、類似度は、比較する2つの文について、文の長さ、関係代名詞の数、接続詞の数、及び所定の単語(予め定められた単語)の数を比較することにより決定する。構文フィルタ部33は、抽出された原言語文が関連付けられたスコアの大きさにより入力原言語文が機械翻訳可能であるか否かを判定する。なお、機械翻訳可能な原言語文(機械翻訳可能である原言語文)とは、該原言語文を機械翻訳サーバ6により機械翻訳した場合に、該原言語文の持つ意味に対応する目的言語文、すなわち適切に翻訳された目的言語文が得られる原言語文をいう。一方、機械翻訳可能でない原言語文とは、機械翻訳が正しく行われない原言語文と同義であり、該原言語文を機械翻訳サーバ6により機械翻訳した場合に、該原言語文の持つ意味と異なる意味を持つ目的言語文又は意味が不明瞭な目的言語文が得られる原言語文をいう。
【0052】
一般的に、機械翻訳対象の原言語文は、文構造が複雑であればあるほど、機械翻訳が正しく行われない。構文フィルタ部33は、機械翻訳が正しく行われないスコアの閾値を予め設定し、該スコアの閾値と抽出された原言語文が関連付けられたスコアとを比較することにより該入力原言語文が機械翻訳可能であるか否かを判定する。上記閾値は、機械翻訳が正しく行われる原言語文のスコアと、機械翻訳が正しく行われない原言語文のスコアとに基づいて設定される。
【0053】
1つの例では、スコアが大きくなるほど原言語文が複雑である場合、機械翻訳が正しく行われない複数の原言語文のスコアの最小値を用いて、上記閾値は設定される。他の例では、機械翻訳が正しく行われる複数の原言語文のスコアの平均値及び標準偏差と、機械翻訳が正しく行われない複数の原言語文のスコアの平均値及び標準偏差とを用いて、上記閾値は設定される。
【0054】
ここで、原言語文の複雑さを表すスコアが、0〜1の実数で示され、かつ値が大きくなるほど原言語文は複雑であるとする。この場合において閾値が0.8に設定された場合、構文フィルタ部33は、例えばスコアが0.8未満の原言語文を機械翻訳可能と判定し、0.8以上の原言語文を機械翻訳可能でないと判定する。
【0055】
このような構成とすることにより、本実施形態では、構文フィルタ部33は、入力原言語文の複雑さをスコアとして定量的に決定し、決定されたスコアの大きさにより、機械翻訳可能であるか否かを判定する。これにより、入力原言語文の文構造の複雑さから、機械翻訳可否判定を行うことが可能となる。
【0056】
他の例では、構文フィルタ部33は、前述の公知の方法を用いて原言語文の複雑さを表すスコアを算出し、該スコアの大きさにより該入力された原言語文が機械翻訳可能であるか否かを判定する。例えば、スコア算出又は決定にあたって、構文フィルタ部33は、原言語文の長さ、原言語文に含まれる単語又は単語の組み合わせ、及び関係代名詞の数に基づいてスコアを算出する。このような場合、構文フィルタ部33は、原言語文コーパスを用いずにスコアを算出又は決定することができるため、翻訳支援装置10は原言語文DB24を備えなくてもよい。
【0057】
意味フィルタ部34は、入力原言語文の各文について、該入力原言語文に含まれる単語又は単語の組み合わせと、エラーDB25に格納される単語又は単語の組み合わせとに基づいて、該入力原言語文の各文が機械翻訳可能であるか否かを各々判定する。好ましくは、意味フィルタ部34は、構文フィルタ部33において機械翻訳可能と判定された原言語文について、判定を行う。1つの例では、このときDB制御部37は、各々の入力原言語文ごとに機械翻訳可否判定フラグを更新する。
【0058】
入力部22は、機械翻訳された目的言語文が適切に翻訳されなかったことに対する入力を受け付けることができる。該入力を受け付けると、DB制御部37は、該入力を受け付けた目的言語文に対応する入力原言語文をエラーDB25へ格納する。機械学習部40は、エラーDB25に格納された原言語文の一部又は全部を対象として機械学習アルゴリズムを適用し、機械翻訳可能でない文章群に共通する特徴量を学習する。例えば機械学習部40は、エラーDB25に格納された原言語文の一部又は全部を対象として機械学習アルゴリズムを適用し、機械翻訳が正しく行われない1又は複数の原言語文に含まれる単語の組み合わせを抽出し、エラーDB25へ格納する。機械学習部40は、例えば、random forest法や、ニューラルネットワークを用いる方法などの公知の機械学習アルゴリズムを用いることができる。
【0059】
このような構成とすることにより、本実施形態では、意味フィルタ部34は、実際に機械翻訳された目的言語文の質の成否がフィードバックされたエラーDB25を用いることにより、入力原言語文が機械翻訳可能であるか否かについて判定する。これにより、入力原言語文の意味的な複雑さから、機械翻訳可否判定を行うことが可能となる。
【0060】
1つの例では、意味フィルタ部34は、入力原言語文がエラーDB25に格納される単語の組み合わせのいずれかを所定量含む場合に、該入力原言語文を機械翻訳可能でないと判定し、所定量含まない場合に該入力原言語文を機械翻訳可能であると判定する。
【0061】
1つの実装例では、意味フィルタ部34は、エラーDB25を用いて原文の意味的複雑さを計量するモジュールである。エラーDB25に格納された原言語文(センテンス)は、bag of words(BoW)型のベクトルとして表現することができる。具体的には、あるセンテンスsは、次のように定義できる。
s := <w1, w2, …, wn> (式1)
ここで、Wiは、ある単語iが、センテンスs内に出現する回数を示したものであり、エラーDB25は、これらセンテンス・ベクトルsの集合Sである。
s ∈ S. (式2)
次に、このセンテンス・ベクトルsを用いた相関量の演算例を示す。意味的フィルタ部34の判定対象となるセンテンスをqとするとき、機械学習部40を用いて生成した二値分類期classifier(q)は、次のように定義できる。
ここで、trueは、センテンス・ベクトルqが機械翻訳可能と判定されたことを示し、falseは、センテンス・ベクトルqが機械翻訳可能でないと判定されたことを示す。
【0062】
1つの例では、出力部23は、ユーザ操作により受け付けた入力部22への入力に応じて、機械翻訳可能でないと判定された入力原言語文をディスプレイに表示又はプリンタに出力する。
【0063】
被制御原言語文変換可否判定部35は、意味フィルタ部34により機械翻訳可能でないと判定された入力原言語文が、被制御原言語文DB26に基づいて被制御原言語文(CNLの文)に変換可能であるか否かを判定する。ここでの変換可能とは、被制御原言語文DB26を用いて、人手によらずに変換可能であることを意味する。好ましくは、被制御原言語文変換可否判定部35は、入力原言語文に含まれる単語又は単語の組み合わせを、被制御原言語文DB26(コーパス)に格納された原言語文に含まれる単語又は単語の組み合わせと比較する。これにより、2つの文章のマッチング度合を算出し、マッチング度合の大きさにより被制御原言語文に変換可能であるか否かを判定する。
【0064】
CNLを介した多言語翻訳は、前述のとおり、雪崩警報の多言語化に代表される、正確な情報を自動的に翻訳するための手法としてすでに実用化されている。このことからも理解されるように、入力原言語文をCNLの文へ変換することは、曖昧性の低い原言語文への変換となる。すなわち、機械翻訳可能でないと判定された入力原言語文であっても、被制御原言語文に変換することで、機械翻訳可能な原言語文とすることができる。したがって、被制御原言語文変換可否判定部35は、被制御原言語文に変換可能であると判定された入力原言語文については機械翻訳可能であると判定し、被制御原言語文に変換不可能であると判定された入力原言語文については機械翻訳可能でないと判定する。
【0065】
1つの例では、翻訳対象データDB27は、各々の入力原言語文ごとに被制御原言語文変換可否判定フラグを記憶する。DB制御部37は、各々の入力原言語文ごとに該フラグを更新(記憶)する。
【0066】
被制御原言語文変換部36は、被制御原言語文DB26を用いて、被制御原言語文に変換可能であると判定された入力原言語文の各文を被制御原言語文に変換する。好ましくは、被制御原言語文変換部36は、被制御原言語文変換可否判定部35を含み、入力原言語文が被制御原言語文に変換可能であるか否かを判定するとともに、変換可能であると判定された入力原言語文の各文を被制御原言語文に変換する。
【0067】
好ましくは、DB制御部37は、ユーザ操作により受け付けた入力部22への入力に応じて、入力原言語文のうち、機械翻訳可能でない(被制御原言語文に変換可能でない)と判定された入力原言語文を抽出する。出力部23は、抽出された入力原言語文をディスプレイに表示又はプリンタに出力することができる。ただし、DB制御部37は、ユーザ操作により受け付けた入力部22への入力に応じて、入力原言語文のうち、機械翻訳可能であると判定された入力原言語文を抽出することもできる。
【0068】
入力部22は、被制御原言語文に変換可能でないと判定された入力原言語文に対する被制御原言語文の入力を受け付けることができる。該入力を受け付けると、被制御原言語文変換部36は、該入力に対応する入力原言語文を、該入力を受け付けた被制御原言語文へ変換する。DB制御部37は、該入力を受け付けた被制御原言語文と、対応する入力原言語文とを被制御原言語文DB26へ格納する。1つの例では、被制御原言語文変換可否判定部35は、該入力に対応する入力原言語文を機械翻訳可能であると判定し、被制御原言語文変換可能であると判定する。
【0069】
上記より、機械翻訳対象の原言語文は、機械翻訳可能であると判定され、かつ被制御原言語文変換可否判定されていない入力原言語文と、被制御原言語文に変換された入力原言語文と、である。
【0070】
機械翻訳変換部38は、ユーザ操作により受け付けた入力部22への入力に応じて、機械翻訳対象の原言語文を、通信装置15を介して機械翻訳サーバ6へ送信し、機械翻訳された目的言語文を機械翻訳サーバ6から受信する。機械翻訳変換部38は、機械翻訳された目的言語文を翻訳対象データDB27へ記憶する。出力部23は、ユーザ操作により受け付けた入力部22への入力に応じて、機械翻訳された目的言語文をディスプレイに表示又はプリンタに出力する。このとき、好ましくは、出力部23は、該目的言語文と、対応する翻訳前の入力原言語文とを一緒に表示又は出力する。ただし、機械翻訳変換部38は、ユーザ操作により受け付けた入力部22への入力に応じて、機械翻訳対象の原言語文のうちの一部の原言語文に対して機械翻訳を実行してもよい。
【0071】
好ましくは、機械翻訳変換部38は、文字列変換フィルタ部を備える。文字列変換フィルタ部は、機械翻訳サーバ6へ送信する前に、機械翻訳対象の原言語文に含まれる所定の単語を既定の固有名詞に置換する。そして文字列変換フィルタ部は、機械翻訳された目的言語文を機械翻訳サーバ6から受信すると、該目的言語文に含まれる予め置換された固有名詞を該置換前の所定の単語に再置換する。なお、文字列変換フィルタ部は、機械翻訳された目的言語文を機械翻訳サーバ6から受信すると、該目的言語文に含まれる予め置換された固有名詞に対応する目的言語を該置換前の所定の単語に対応する目的言語に再置換してもよい。
【0072】
機械翻訳サーバ6は、汎用製品であるため、例えばキャラクタ名や想像上の地名のようなゲームの固有名詞を辞書として持たない。また機械翻訳サーバ6による機械翻訳は、未知語が出現した場合に翻訳精度が著しく悪化する性質がある。したがって、文字列変換フィルタ部が、未知語を汎用的な用語に置換し、かつ機械翻訳後に該未知語に再置換することにより、機械翻訳の精度の悪化を防ぐことが可能となる。
【0073】
図4は、本発明の一実施形態による機械翻訳変換部38の文字列変換フィルタ部によるフィルタ処理の様子を示すものであり、出力部23によりディスプレイに出力される画面の一例である。本例示においては、原言語は英語、目的言語は日本語である。ボックス41に示すように、機械翻訳対象の原言語文として、”Oneiros met Coux.”が入力される。前述のとおり、該原言語文にはCouxとOneriosという固有名詞が含まれるが、これらは、既存の機械翻訳システムの辞書には登録されておらず、翻訳することができない。
【0074】
文字列変換フィルタ部は、ボックス42に示すように、機械翻訳対象の原言語文が機械翻訳サーバ6へ送信される前に、CouxをAndyへ、OneriosをBobへ、それぞれ一般的な固有名詞に置換する。文字列変換フィルタ部は、ボックス43に示す機械翻訳された目的言語文を機械翻訳サーバ6から受信すると、ボックス44に示すように、AndyをCouxへ、BobをOneriosへ、それぞれ再置換する。機械翻訳変換部38は、再置換後の機械翻訳された目的言語文を翻訳対象データDB27へ記憶する。なお、説明の便宜上、ボックス42とボックス43は示されているが、ボックス42とボックス43は、好ましくは、通常表示されるものではない。
【0075】
翻訳支援装置10は、置換候補リストを記憶装置14に格納する。1つの例では、置換候補リストは、予め原言語文に入力されることが予測される男性人名に対しては、 Andy, Bob, Charles,…のような固有名詞を対応させ、女性人名に対しては、 Anna, Becky, Carol,…のような固有名詞を対応させたリストである。1つの例では、置換候補リストは、人名、武器名、魔法名などの固有名詞のカテゴリに応じたリストを含み、文字列変換フィルタ部は、該カテゴリに応じて置換候補リストを参照し、置換処理を行う。1つの例では、置換候補リストは、日本語などの語尾変化で個性を表現する言語の場合は、「〜です」を「〜だぜ」等に変換するリストを含み、文字列変換フィルタ部は、該カテゴリに応じて置換候補リストを参照し、置換処理を行う。1つの例では、置換候補リストは、Andy, Bob, Charles,…のような固有名詞に対して、例えばアンディー、ボブ、チャールズ、…のような目的言語の名詞を対応させ、固有名詞が機械翻訳された場合に、文字列変換フィルタ部が適切に再置換できるように構成される。
【0076】
機械翻訳サーバ監視部39は、定期的に(例えば月に1回、3月に1回、半年に1回など)、既定の原言語文を機械翻訳サーバ6へ送信し、機械翻訳された目的言語文を機械翻訳サーバ6から受信する。機械翻訳サーバ監視部39は、今回機械翻訳された目的言語文と、前回(例えば月に1回機械翻訳を行う場合は1月前)機械翻訳された目的言語文とを比較し、その差分から機械翻訳サーバ6の変更や更新を検出する。既定の原言語文は、好ましくは、複数の機械翻訳可能な原言語文である。
【0077】
次に、本発明の一実施形態による翻訳支援装置10の機械翻訳可否判定の処理について図5に示したフローチャートを用いて説明する。説明を簡単にするため、ここでは1つの入力原言語文の処理について説明する。まず、ステップ501において、入力部22は、入力原言語文の入力を受け付ける。
【0078】
次に、ステップ502において、構文フィルタ部33は、入力原言語文について、該入力原言語文の複雑さを表すスコアを該入力原言語文の文構造に基づいて決定し、該スコアの大きさにより該入力原言語文が機械翻訳可能であるか否かを判定する。機械翻訳可能であると判定された場合はステップ503へ進み、機械翻訳可能でないと判定された場合はステップ504へ進む。
【0079】
ステップ503において、意味フィルタ部34は、入力原言語文について、該入力原言語文に含まれる単語又は単語の組み合わせと、エラーDB25に格納される単語又は単語の組み合わせとに基づいて、該入力原言語文が機械翻訳可能であるか否かを判定する。機械翻訳可能であると判定された場合はステップ506へ進み、機械翻訳可否判定部32は、該入力原言語文が機械翻訳可能であると判定する。機械翻訳可能でないと判定された場合はステップ504へ進む。
【0080】
ステップ504において、被制御原言語文変換可否判定部35は、入力原言語文が、被制御原言語文DB26に基づいてCNLの文に変換可能であるか否かを判定する。CNLの文に変換可能である場合、ステップ505において、被制御原言語文変換部36が、被制御原言語文DB26を用いて入力原言語文をCNLの文に変換する。その後、ステップ506において、機械翻訳可否判定部32は、該入力原言語文が機械翻訳可能であると判定する。CNLの文に変換可能でない場合、ステップ507において、機械翻訳可否判定部32は、該入力原言語文が機械翻訳可能でないと判定する。
【0081】
このようにして機械翻訳可否判定の処理は実行され、処理結果は、翻訳対象データDB37に記憶される。DB制御部37(翻訳支援装置10)は、複数の入力原言語文から、機械翻訳可能でないと判定された入力原言語文及び機械翻訳可能であると判定された入力原言語文の少なくとも一方を抽出することができる。
【0082】
次に、本発明の一実施形態による翻訳支援装置10の機械翻訳処理について図6に示したフローチャートを用いて説明する。まず、ステップ601において、入力部22は、機械翻訳対象の入力原言語文の入力を受け付ける。
【0083】
次に、ステップ602において、機械翻訳変換部38の文字列変換フィルタ部は、機械翻訳対象の原言語文に含まれる所定の単語を既定の固有名詞に置換する。
【0084】
次に、ステップ603において、機械翻訳変換部38は、ステップ602において置換処理された機械翻訳対象の原言語文を機械翻訳サーバ6へ送信することにより、機械翻訳を実行し、機械翻訳された目的言語文を機械翻訳サーバ6から受信する。
【0085】
次に、ステップ604において、機械翻訳変換部38は、機械翻訳された目的言語文を機械翻訳サーバ6から受信すると、該目的言語文に含まれる置換された既定の固有名詞を該置換前の所定の単語に再置換する。
【0086】
次に、本発明の実施形態による翻訳支援システム1(翻訳支援装置10)の作用効果について説明する。本実施形態では、翻訳支援システム1は、翻訳対象の入力原言語文について、機械翻訳可能であるか否かを、構文フィルタ部33及び意味フィルタ部34を用いて文構造及び意味の複雑さの観点から判定し、機械翻訳を適用するために人手で修正するべき文章を自動的に抽出する。これにより、機械翻訳システムを用いて、出来るだけ多くの原文、すなわち入力原言語文、を活用し、人手での文章修正を低減化した低コストの翻訳(翻訳支援)を実現することが可能となる。また、既存の機械翻訳システムである機械翻訳サーバ6を使用することから、既存の機械翻訳システムがサポートする多くの言語を対象とした翻訳(翻訳支援)を実現することが可能となる。
【0087】
また本実施形態では、翻訳支援システム1は、意味フィルタ部34により機械翻訳可能でないと判定された入力原言語文が、被制御原言語文DB26に基づいてCNLの文に変換可能であるか否かを判定し、該変換可能であるか否かにより機械翻訳可能であるか否かを判定する。翻訳支援システム1は、CNLの文に変換可能であると判定された入力原言語文の各文をCNLの文に変換し、機械翻訳可能であると判定する。このように、翻訳支援システム1は、曖昧性の低い文章に書き換えることにより、機械翻訳可能でないと判定された入力原言語文であっても、CNLの文に変換することで、機械翻訳可能な原言語文とすることができる。これにより、翻訳精度の高さを維持しつつ、更に、出来るだけ多くの原文を活用し人手での文章修正を低減化した低コストの翻訳(翻訳支援)を実現することが可能となる。
【0088】
また本実施形態では、翻訳支援システム1は、機械翻訳された目的言語文が適切に翻訳されなかったことに対する入力を受け付け可能であり、エラーDB25は、該入力を受け付けた目的言語文に対応する入力原言語文を格納する。翻訳支援システム1は、このように実際に機械翻訳された目的言語文の質の成否がフィードバックされたエラーDB25を、意味フィルタ部34において用いている。また本実施形態では、被制御原言語文DB26は、人手により、入力原言語文からCNLの文へ書き換えた結果を、ペアとして格納する。翻訳支援システム1は、被制御原言語文DB26に基づいて、入力原言語文をCNLの文に変換する。ここで例えば、日本のRPGに代表される、大量の文章を表示するゲームにおける文章(ゲーム内のシナリオなどの文章)の多言語化を考える。上記のような構成とすることにより、翻訳支援システム1は、被制御原言語文DB26やエラーDB25に対象とするゲームの該文章に関するDBのデータを蓄積させていくことにより、意味フィルタ部34の判定精度やCNLへの変換精度を高めることが可能となる。これにより、人手による関与を低減化しつつ、翻訳精度の高さを維持することが可能となる。また例えば、翻訳支援システム1を用いることにより、対象とするゲームに関する数メガバイトのテキストを有するコンテンツの複数の言語への翻訳を、全体の3〜5割程度の文章を1度だけ書き換えるコストで行うことが可能となる。なお翻訳支援システム1は、ゲームでなく、FAQ、ヘルプ、Webサイトやチャットボットの定型文の翻訳にも適用可能である。
【0089】
また本実施形態では、翻訳支援システム1は、機械翻訳可能であるか否かの判定処理を行った後、機械翻訳対象の原言語文に対して、既存の機械翻訳システムである機械翻訳サーバ6をブラックボックスとして使用する。このように、本実施形態では、翻訳支援システム1は、特定の機械翻訳システムには依存していない。これにより、機械翻訳サーバ6は、Google Translate APIやMicrosoft Translate APIなどの任意の機械翻訳システムとすることができ、将来的により発達した機械翻訳システムが登場した場合、極めて低いコストで移行することが可能である。
【0090】
また本実施形態では、翻訳支援システム1は、機械翻訳対象の原言語文を機械翻訳サーバ6へ送信する前に、機械翻訳対象の原言語文に含まれる所定の単語を既定の固有名詞に置換する。そして機械翻訳された目的言語文を機械翻訳サーバ6から受信すると、翻訳支援システム1は、該目的言語文に含まれる予め置換された固有名詞を該置換前の所定の単語に再置換する。例えばゲームにおける文章を翻訳する場合、一般的な文章と比較して未知語が多く出現することが考えられる。このような構成とすることにより、翻訳支援システム1は、未知語が出現することによる機械翻訳サーバ6による機械翻訳の精度の悪化を防ぐことが可能となる。
【0091】
また本実施形態では、機械翻訳サーバ監視部39は、例えば月1回など、定期的に既定の原言語文を、機械翻訳サーバ6を用いて機械翻訳し、定期的に得られる目的言語文の差分から機械翻訳サーバ6の変更や更新を検出する。このような構成とすることにより、翻訳支援装置10は、汎用の機械翻訳システムによる翻訳結果を定期的に監視し、翻訳結果に大きな変化があった場合に、機械翻訳可能性を再算出することにより、機械翻訳システムの更新に自動的に追随することが可能となる。
【0092】
図7は、本発明の他の一実施形態による翻訳システム2の全体構成図である。図7に示すように、翻訳システム2は、翻訳支援装置10と、機械翻訳サーバ6と、エンドユーザ端末8と、を含む。翻訳支援装置10、機械翻訳サーバ6、及びエンドユーザ端末8は、インターネットなどのネットワーク4に接続され、互いに通信可能である。ただし、翻訳支援システム1(翻訳システム2)がユーザ端末8を備える点以外は、図1に示す翻訳支援システム1の構成と同様である。したがって、異なる点を中心に説明する。
【0093】
エンドユーザ端末8は、例えば機械翻訳されたコンテンツがゲームであった場合は、ゲームをプレイするエンドユーザ又はデバッグ担当者などのユーザの端末である。エンドユーザ端末8は、機械翻訳された文章を閲覧するユーザが使用するコンピュータであり、例えば、パーソナルコンピュータ、タブレット端末、スマートフォン、携帯電話機などとすることができる。エンドユーザ端末8のハードウェア構成は公知であるため、説明は省略する。
【0094】
エンドユーザ端末8は、機械翻訳された文章がエンドユーザに閲覧された際、エンドユーザが該文章(目的言語文)の意味を理解できなかった場合に、理解できなかったことの入力を受け付けることができるように構成される。例えば、エンドユーザ端末8は、そのディスプレイに「翻訳の問題を報告する」等のボタンを表示し、エンドユーザにクリックされることで、該入力を受け付ける。エンドユーザ端末8は、該入力を受け付けると、意味を理解できなかった文章を対応付けた翻訳フィードバックデータを翻訳支援装置10に送信する。
【0095】
入力部22は、エンドユーザ端末8からの翻訳フィードバックデータを受信すると、DB制御部37は、該受信したデータに対応付けられた目的言語文に対応する入力原言語文をエラーDB25へ格納する。
【0096】
このような構成とすることにより、本実施形態では、意味フィルタ部34の判定精度を更に高めることが可能となる。
【0097】
他の実施形態では、翻訳支援装置10は、原言語文DB24、エラーDB25、被制御原言語文DB26、及び翻訳対象データDB27のうちの少なくとも1つを備えない。この場合、翻訳支援システム1は、翻訳支援装置10が備えていないDB機能を有するデータベースサーバを有し、翻訳支援装置10は、該データベースサーバにアクセス可能に構成される。
【0098】
他の実施形態では、上記で説明した本発明の実施形態の機能やフローチャートに示す情報処理を実現するプログラムを格納したコンピュータ読み取り可能な記憶媒体とすることもできる。また他の実施形態では、上記で説明した本発明の実施形態の機能やフローチャートに示す情報処理を実現するプログラムを翻訳支援装置10に供給することができるサーバとすることもできる。サーバは有線又は無線通信を介して翻訳支援装置10にプログラムをダウンロードさせることができる。また他の実施形態では、上記で説明した本発明の実施形態の機能やフローチャートに示す情報処理を実現する仮想マシンとすることもできる。
【0099】
以上に説明した処理又は動作において、あるステップにおいて、そのステップではまだ利用することができないはずのデータを利用しているなどの処理又は動作上の矛盾が生じない限りにおいて、処理又は動作を自由に変更することができる。また以上に説明してきた各実施例は、本発明を説明するための例示であり、本発明はこれらの実施例に限定されるものではない。本発明は、その要旨を逸脱しない限り、種々の形態で実施することができる。
【符号の説明】
【0100】
1 翻訳支援システム
2 翻訳システム
4 ネットワーク
6 機械翻訳サーバ
8 ユーザ端末
10 翻訳支援装置
11 プロセッサ
12 入力装置
13 出力装置
14 記憶装置
15 通信装置
21 制御部
22 入力部
23 出力部
24 原言語文データベース(原言語文DB)
25 エラーデータベース(エラーDB)
26 被制御原言語文データベース(被制御原言語文DB)
27 翻訳対象データデータベース(翻訳対象データDB)
31 基本制御部
32 機械翻訳可否判定部
33 構文フィルタ部
34 意味フィルタ部
35 被制御原言語文変換可否判定部
36 被制御原言語文変換部
37 データベース制御部(DB制御部)
38 機械翻訳変換部
39 機械翻訳サーバ監視部
40 機械学習部
41〜44 ボックス
【要約】
【課題】機械翻訳システムを用いて、翻訳精度の高さを維持しつつ、人手による関与を低減化することにより翻訳コストを低減化することが可能な翻訳支援システムを提供する。
【解決手段】本発明は、原言語文から目的言語文への機械翻訳を支援するための翻訳支援システムであって、翻訳対象の原言語文の入力を受け付ける入力部と、原言語文から目的言語文への機械翻訳が正しく行われない複数の原言語文に含まれる単語又は単語の組み合わせを少なくとも格納するエラーデータベースと、複数の原言語文、及び該複数の原言語文に対応する所定の条件を満たす形式で表された制御された原言語文である被制御原言語文を格納する被制御原言語文データベースと、前記入力された原言語文が機械翻訳可能であるか否かを判定する制御部と、機械翻訳可能でないと判定された前記入力された原言語文を出力可能な出力部と、を備える翻訳支援システムである。
【選択図】図1
図1
図2
図3
図4
図5
図6
図7