IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ 独立行政法人情報通信研究機構の特許一覧

特開2023-183618機械翻訳用訓練データ生成方法、機械翻訳処理用の学習可能モデルの作成方法、機械翻訳処理方法、および、機械翻訳用訓練データ生成装置
<>
  • 特開-機械翻訳用訓練データ生成方法、機械翻訳処理用の学習可能モデルの作成方法、機械翻訳処理方法、および、機械翻訳用訓練データ生成装置 図1
  • 特開-機械翻訳用訓練データ生成方法、機械翻訳処理用の学習可能モデルの作成方法、機械翻訳処理方法、および、機械翻訳用訓練データ生成装置 図2
  • 特開-機械翻訳用訓練データ生成方法、機械翻訳処理用の学習可能モデルの作成方法、機械翻訳処理方法、および、機械翻訳用訓練データ生成装置 図3
  • 特開-機械翻訳用訓練データ生成方法、機械翻訳処理用の学習可能モデルの作成方法、機械翻訳処理方法、および、機械翻訳用訓練データ生成装置 図4
  • 特開-機械翻訳用訓練データ生成方法、機械翻訳処理用の学習可能モデルの作成方法、機械翻訳処理方法、および、機械翻訳用訓練データ生成装置 図5
  • 特開-機械翻訳用訓練データ生成方法、機械翻訳処理用の学習可能モデルの作成方法、機械翻訳処理方法、および、機械翻訳用訓練データ生成装置 図6
  • 特開-機械翻訳用訓練データ生成方法、機械翻訳処理用の学習可能モデルの作成方法、機械翻訳処理方法、および、機械翻訳用訓練データ生成装置 図7
  • 特開-機械翻訳用訓練データ生成方法、機械翻訳処理用の学習可能モデルの作成方法、機械翻訳処理方法、および、機械翻訳用訓練データ生成装置 図8
  • 特開-機械翻訳用訓練データ生成方法、機械翻訳処理用の学習可能モデルの作成方法、機械翻訳処理方法、および、機械翻訳用訓練データ生成装置 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023183618
(43)【公開日】2023-12-28
(54)【発明の名称】機械翻訳用訓練データ生成方法、機械翻訳処理用の学習可能モデルの作成方法、機械翻訳処理方法、および、機械翻訳用訓練データ生成装置
(51)【国際特許分類】
   G06F 40/44 20200101AFI20231221BHJP
   G06F 40/221 20200101ALI20231221BHJP
   G06F 40/45 20200101ALI20231221BHJP
【FI】
G06F40/44
G06F40/221
G06F40/45
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2022097221
(22)【出願日】2022-06-16
(71)【出願人】
【識別番号】301022471
【氏名又は名称】国立研究開発法人情報通信研究機構
(74)【代理人】
【識別番号】100143498
【弁理士】
【氏名又は名称】中西 健
(74)【代理人】
【識別番号】100136319
【弁理士】
【氏名又は名称】北原 宏修
(72)【発明者】
【氏名】内山 将夫
【テーマコード(参考)】
5B091
【Fターム(参考)】
5B091AA03
5B091EA01
(57)【要約】      (修正有)
【課題】タグ付きの対訳文を大量に準備することなく、翻訳対象の原文にマークアップ言語用タグを含んだ原文を、マークアップ言語用タグの情報を保持しつつ、高精度に機械翻訳する機械翻訳処理システムをを提供する。
【解決手段】機械翻訳処理システム1000において、訓練用データ生成装置1は、訓練用データ生成処理を行うことで、マークアップ言語用タグを含まない対訳データにおいて、開始終了対応符号を検出し、検出した開始終了対応符号を代替符号に置換することで、マークアップ言語用タグを挿入された対訳データと同等のデータを簡単、かつ、多量に生成する。機械翻訳処理装置2が、訓練用データ生成装置1による訓練用データ生成処理で取得された対訳データを、機械翻訳モデルの学習処理の訓練データとして用いることで、マークアップ言語用タグ付きの対訳データを訓練データとして、機械翻訳モデルの学習処理を行ったときと同等の効果を奏する。
【選択図】図1
【特許請求の範囲】
【請求項1】
マークアップ言語用タグを含む言語データを機械翻訳処理するための機械翻訳処理システムにおいて、機械翻訳処理用の学習可能モデルを訓練するための訓練データを生成する方法であって、
第1言語データと、前記第1言語データの第2言語へ翻訳したデータである第2言語データとを組みにした対訳データであって、前記マークアップ言語用タグを含まない前記対訳データにおいて、開始と終了とが対応している符号である開始終了対応符号を検出する開始終了対応符号検出ステップと、
前記対訳データに対して、前記開始終了対応符号を、代替符号に置換する置換処理を実行することで、前記置換処理後の対訳データを取得する置換処理ステップと、
を備える機械翻訳用訓練データ生成方法。
【請求項2】
置換割合を設定する置換割合設定ステップをさらに備え、
前記置換処理ステップは、
前記対訳データに対して、置換割合設定ステップで設定された前記置換割合で、前記開始終了対応符号を、代替符号に置換する置換処理を実行する、
請求項1に記載の機械翻訳用訓練データ生成方法。
【請求項3】
請求項1または2に記載の機械翻訳用訓練データ生成方法により生成された訓練データを用いて、マークアップ言語用タグを含む言語データを機械翻訳処理するための機械翻訳処理システムにおいて、機械翻訳処理用の学習可能モデルを学習する方法であって、
前記置換処理後の対訳データに含まれる前記第1言語データを前記機械翻訳処理用の学習可能モデルに入力するデータ入力ステップと、
前記データ入力ステップで入力されたデータに対する前記機械翻訳処理用の学習可能モデルの出力データを取得する出力データ取得ステップと、
前記出力データ取得ステップにより取得された前記出力データと、前記置換処理後の対訳データに含まれる前記第2言語データを正解データとして取得し、前記出力データと前記正解データとの損失を評価する損失評価ステップと、
前記損失評価ステップにより取得された損失が小さくなるように、前記機械翻訳処理用の学習可能モデルのパラメータを更新するパラメータ更新ステップと、
を備える機械翻訳処理用の学習可能モデルの作成方法。
【請求項4】
請求項3に記載の機械翻訳処理用の学習可能モデルの作成方法により学習させて取得した機械翻訳処理用の学習可能モデルの学習済みモデルを用いて機械翻訳処理を実行する方法であって、
入力された第1言語データに含まれる前記マークアップ言語用タグを、前記代替符号に置換する順置換処理を実行する順置換処理ステップと、
前記順置換処理後の第1言語データに対して、前記機械翻訳処理用の学習可能モデルの学習済みモデルを用いて機械翻訳処理を実行することで、機械翻訳処理後の第2言語データを取得する機械翻訳処理ステップと、
前記機械翻訳処理ステップにより取得された前記機械翻訳処理後の第2言語データに含まれる前記代替符号を、前記順置換処理ステップで置換した前記マークアップ言語用タグに置換する逆置換処理を実行する逆置換処理ステップと、
を備える機械翻訳処理方法。
【請求項5】
マークアップ言語用タグを含む言語データを機械翻訳処理するための機械翻訳処理システムにおいて、機械翻訳処理用の学習可能モデルを訓練するための訓練データを生成する方法であって、
第1言語データと、前記第1言語データの第2言語へ翻訳したデータである第2言語データとを組みにした対訳データであって、前記マークアップ言語用タグを含まない前記対訳データにおいて、前記第1言語データと前記第2言語データとの間で対応がとれると判断される要素である対応要素を検出する対応要素検出ステップと、
前記対訳データに対して、前記対応要素の前後に代替符号を挿入する置換処理を実行することで、前記置換処理後の対訳データを取得する置換処理ステップと、
を備える機械翻訳用訓練データ生成方法。
【請求項6】
マークアップ言語用タグを含む言語データを機械翻訳処理するための機械翻訳処理システムにおいて、機械翻訳処理用の学習可能モデルを訓練するための訓練データを生成する装置であって、
第1言語データと、前記第1言語データの第2言語へ翻訳したデータである第2言語データとを組みにした対訳データであって、前記マークアップ言語用タグを含まない前記対訳データにおいて、開始と終了とが対応している符号である開始終了対応符号を検出するとともに、
前記対訳データに対して、前記開始終了対応符号を、代替符号に置換する置換処理を実行することで、前記置換処理後の対訳データを取得する置換処理部
を備える機械翻訳用訓練データ生成装置。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、機械翻訳処理技術に関し、特に、マークアップ言語のタグに対応させた機械翻訳処理技術に関する。
【背景技術】
【0002】
産業翻訳の分野では、翻訳対象の原文にXMLタグ(マークアップ言語用タグの一例)が含まれることが多く、そのようなタグを含んだ原文を、タグ情報を保持して、高精度に機械翻訳する需要が高い。
【0003】
翻訳対象の原文にXMLタグを含む場合に対処する方法として、例えば、非特許文献1に開示されているように、機械翻訳時に原文のタグを除去して機械翻訳した後で、機械翻訳結果について、原文と訳文との単語アライメントに基づいて、タグを再挿入する方法がある。
【0004】
また、特許文献1には、マークアップ言語用タグ(例えば、XMLタグ)が挿入されている対訳文を利用して機械翻訳エンジンを訓練する技術の開示がある。特許文献1の技術では、機械翻訳エンジンを訓練する際に、マークアップ言語用タグをプレースホルダーに置換し、マークアップ言語用タグをプレースホルダーに置換した対訳文を用いて機械翻訳エンジンを訓練する。そして、特許文献1の技術では、機械翻訳時に、原文中のタグをプレースホルダーに置換して翻訳した後、訳文中のプレースホルダーを元のタグに置換する処理を行う。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】米国特許第10963652号明細書
【非特許文献】
【0006】
【非特許文献1】Mathias Mueller. Treatment of Markup in Statistical Machine Translation. Proceedings of the Third Workshop on Discourse in Machine Translation, pages 36-46, Copenhagen, Denmark, September 8, 2017. Association for Computational Linguistics.
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、非特許文献1に開示されているタグを再挿入の方法では、対訳文中にタグが含まれなくても機械翻訳エンジンを訓練できるメリットがあるが、機械翻訳時にタグを考慮せずに翻訳することになるので、タグを適切に保持した翻訳が難しい。
【0008】
一方、特許文献1に開示されているタグ付きの対訳文を利用して機械翻訳エンジンを訓練する方法では、翻訳精度やタグ保持の精度には問題がないが、タグ付きの対訳文を大量に準備するのが困難であるという問題がある。
【0009】
そこで、本発明は、上記課題に鑑み、タグ付きの対訳文を大量に準備することなく、翻訳対象の原文にマークアップ言語用タグを含んだ原文を、マークアップ言語用タグの情報を保持しつつ、高精度に機械翻訳することを可能にする機械翻訳処理方法、機械翻訳用訓練データ生成方法、機械翻訳処理用の学習可能モデルの作成方法、機械翻訳処理方法、機械翻訳用訓練データ生成装置、および、機械翻訳処理システムを実現することを目的とする。
【課題を解決するための手段】
【0010】
上記課題を解決するための第1の発明は、マークアップ言語用タグを含む言語データを機械翻訳処理するための機械翻訳処理システムにおいて、機械翻訳処理用の学習可能モデルを訓練するための訓練データを生成する方法(機械翻訳用訓練データ生成方法)であって、開始終了対応符号検出ステップと、置換処理ステップと、を備える。
【0011】
開始終了対応符号検出ステップは、第1言語データと、第1言語データの第2言語へ翻訳したデータである第2言語データとを組みにした対訳データであって、マークアップ言語用タグを含まない対訳データにおいて、開始と終了とが対応している符号である開始終了対応符号を検出する。
【0012】
置換処理ステップは、対訳データに対して、開始終了対応符号を、代替符号に置換する置換処理を実行することで、置換処理後の対訳データを取得する。
【0013】
この機械翻訳用訓練データ生成方法では、マークアップ言語用タグ(例えば、XMLタグ)を含まない対訳文(対訳データ)において、開始終了対応符号(()、[]のように、左と右とが対応している符号)を検出し、検出した開始終了対応符号を代替符号(プレースホルダー)に置換することで、マークアップ言語用タグ(例えば、XMLタグ)を挿入された対訳データと同等のデータを、簡単かつ多量に生成することができる。
【0014】
そして、この機械翻訳用訓練データ生成方法により取得された対訳データは、マークアップ言語用タグに相当する代替符号(プレースホルダー)を含んでいるので、当該対訳データを、機械翻訳モデルの学習処理の訓練データとして用いることで、マークアップ言語用タグ(例えば、XMLタグ)付きの対訳文(対訳データ)を訓練データとして、機械翻訳モデルの学習処理を行ったときと同等の効果を奏することができる(同等の学習処理を行うことができる)。
【0015】
第2の発明は、第1の発明であって、置換割合を設定する置換割合設定ステップをさらに備える。
【0016】
置換処理ステップは、対訳データに対して、置換割合設定ステップで設定された置換割合で、開始終了対応符号を、代替符号に置換する置換処理を実行する。
【0017】
この機械翻訳用訓練データ生成方法では、置換割合設定ステップにより、置換する割合を設定することで(1.0未満の値に設定することで)、全ての開始終了対応符号が、代替符号(プレースホルダー)に置換されないことが保証される。これにより、この機械翻訳用訓練データ生成方法では、置換処理後の対訳データ中に開始終了対応符号が含まれることが保証され、当該開始終了対応符号についても適切に学習処理(訓練)が可能となる(翻訳元言語データの開始終了対応符号を、機械翻訳処理結果データ(翻訳先言語データ)において、正しく出現させる(機械翻訳する)ことが可能となる)。
【0018】
なお、置換割合は、対訳データ単位(対訳文単位)としてもよい。つまり、処理対象としている対訳データのうち開始終了対応符号を含む対訳データがN1個(N1:自然数)ある場合であって、置換割合がr(r:実数、0<r<1)である場合、開始終了対応符号を含む対訳データのうち、int(N1×r)個(int(x):xを超えない最大の整数値を取得する関数)の対訳データに対して、置換処理を行うようにしてもよい。
【0019】
第3の発明は、第1または第2の発明である機械翻訳用訓練データ生成方法により生成された訓練データを用いて、マークアップ言語用タグを含む言語データを機械翻訳処理するための機械翻訳処理システムにおいて、機械翻訳処理用の学習可能モデルを作成する方法であって、データ入力ステップと、出力データ取得ステップと、損失評価ステップと、パラメータ更新ステップと、を備える。
【0020】
データ入力ステップは、置換処理後の対訳データに含まれる第1言語データを機械翻訳処理用の学習可能モデルに入力する。
【0021】
出力データ取得ステップは、データ入力ステップで入力されたデータに対する機械翻訳処理用の学習可能モデルの出力データを取得する。
【0022】
損失評価ステップは、出力データ取得ステップにより取得された出力データと、置換処理後の対訳データに含まれる第2言語データを正解データとして取得し、出力データと正解データとの損失を評価する。
【0023】
パラメータ更新ステップは、損失評価ステップにより取得された損失が小さくなるように、機械翻訳処理用の学習可能モデルのパラメータを更新する。
【0024】
この機械翻訳処理用の学習可能モデルを作成する方法では、置換処理後の対訳データに含まれる第1言語データと、置換処理後の対訳データに含まれる第2言語データを正解データとを用いて、機械翻訳処理用の学習可能モデルを学習させることができるため、置換処理後の第1言語データを、置換処理後の第2言語データに機械翻訳する学習可能モデルの学習済モデルを取得することができる。
【0025】
第4の発明は、第3の発明である機械翻訳処理用の学習可能モデルの作成方法により学習させて取得した機械翻訳処理用の学習可能モデルの学習済みモデルを用いて機械翻訳処理を実行する方法(機械翻訳処理方法)であって、順置換処理ステップと、機械翻訳処理ステップと、逆置換処理ステップと、を備える。
【0026】
順置換処理ステップは、入力された第1言語データに含まれるマークアップ言語用タグを、代替符号に置換する順置換処理を実行する。
【0027】
機械翻訳処理ステップは、順置換処理後の第1言語データに対して、機械翻訳処理用の学習可能モデルの学習済みモデルを用いて機械翻訳処理を実行することで、機械翻訳処理後の第2言語データを取得する。
【0028】
逆置換処理ステップは、機械翻訳処理ステップにより取得された機械翻訳処理後の第2言語データに含まれる代替符号を、順置換処理ステップで置換したマークアップ言語用タグに置換する逆置換処理を実行する。
【0029】
この機械翻訳処理方法では、マークアップ言語用タグ(例えば、XMLタグ)を含む入力データに対して、マークアップ言語用タグを、訓練用データ生成時に使用したのと同様の代替符号(プレースホルダー)に置換し、代替符号が挿入された対訳データで最適化された機械翻訳モデルの学習済モデルを用いて、機械翻訳処理を実行するので、代替符号が挿入された状態を適切に維持しつつ適切な機械翻訳処理結果データを取得することができる。そして、この機械翻訳処理方法では、代替符号が挿入された状態の機械翻訳処理結果データ(機械翻訳文)において、代替符号をXMLタグに置換する(元に戻す)ことで、XMLタグが適切な状態で挿入された機械翻訳処理結果データ(機械翻訳文)を取得することができる。
【0030】
このように、この機械翻訳処理方法により、タグ付きの対訳文を大量に準備することなく、翻訳対象の原文にマークアップ言語用タグを含んだ原文を、マークアップ言語用タグの情報を保持しつつ、高精度に機械翻訳することが可能となる。
【0031】
第5の発明は、マークアップ言語用タグを含む言語データを機械翻訳処理するための機械翻訳処理システムにおいて、機械翻訳処理用の学習可能モデルを訓練するための訓練データを生成する方法(機械翻訳用訓練データ生成方法)であって、対応要素検出ステップと、置換処理ステップと、を備える。
【0032】
対応要素検出ステップは、第1言語データと、第1言語データの第2言語へ翻訳したデータである第2言語データとを組みにした対訳データであって、マークアップ言語用タグを含まない対訳データにおいて、第1言語データと第2言語データとの間で対応がとれると判断される要素である対応要素を検出する。
【0033】
置換処理ステップは、対訳データに対して、対応要素の前後に代替符号を挿入する置換処理を実行することで、置換処理後の対訳データを取得する。
【0034】
この機械翻訳用訓練データ生成方法では、マークアップ言語用タグ(例えば、XMLタグ)を含まない対訳文(対訳データ)において、原文および訳文間で対応がとれている要素を検出し、検出した要素の前後に代替符号(プレースホルダー)に置換することで、マークアップ言語用タグ(例えば、XMLタグ)を挿入された対訳データと同等のデータを、簡単かつ多量に生成することができる。
【0035】
第6の発明は、マークアップ言語用タグを含む言語データを機械翻訳処理するための機械翻訳処理システムにおいて、機械翻訳処理用の学習可能モデルを訓練するための訓練データを生成する装置(機械翻訳用訓練データ生成装置)であって、置換処理部を備える。
【0036】
置換処理部は、第1言語データと、第1言語データの第2言語へ翻訳したデータである第2言語データとを組みにした対訳データであって、マークアップ言語用タグを含まない対訳データにおいて、開始と終了とが対応している符号である開始終了対応符号を検出するとともに、
対訳データに対して、開始終了対応符号を、代替符号に置換する置換処理を実行することで、置換処理後の対訳データを取得する。
【0037】
これにより、第1の発明と同様の効果を奏する機械翻訳用訓練データ生成装置を実現することができる。
【発明の効果】
【0038】
本発明によれば、タグ付きの対訳文を大量に準備することなく、翻訳対象の原文にマークアップ言語用タグを含んだ原文を、マークアップ言語用タグの情報を保持しつつ、高精度に機械翻訳することを可能にする機械翻訳処理方法、機械翻訳用訓練データ生成方法、機械翻訳処理用の学習可能モデルの作成方法、機械翻訳処理方法、機械翻訳用訓練データ生成装置、および、機械翻訳処理システムを実現することができる。
【図面の簡単な説明】
【0039】
図1】第1実施形態に係る機械翻訳処理システム1000の概略構成図。
図2】機械翻訳処理システム1000で実行される訓練用データ生成処理のフローチャート。
図3】機械翻訳処理システム1000の訓練用データ生成装置1で実行される置換処理について説明するための図。
図4】機械翻訳処理システム1000で実行される予測処理(機械翻訳実行処理)のフローチャート。
図5】機械翻訳処理システム1000の予測処理(機械翻訳実行処理)について説明するための図。
図6】XMLタグ付きの第1言語データ(日本語データ)を機械翻訳処理システム1000で機械翻訳処理した結果を示す図。
図7】第2実施形態に係る機械翻訳処理システム2000の概略構成図。
図8】機械翻訳処理システム2000の訓練用データ生成装置1Aで実行される置換処理について説明するための図。
図9】CPUバス構成を示す図。
【発明を実施するための形態】
【0040】
[第1実施形態]
第1実施形態について、図面を参照しながら、以下説明する。
【0041】
<1.1:機械翻訳処理システムの構成>
図1は、第1実施形態に係る機械翻訳処理システム1000の概略構成図である。
【0042】
機械翻訳処理システム1000は、図1に示すように、訓練用データ生成装置1と、データ記憶部DB1と、機械翻訳処理装置2と、を備える。なお、以下の説明では、機械翻訳処理の対象としてマークアップ言語用タグを含む言語データである想定で行うが、機械翻訳処理装置2の対象とするものは、必ずしもマークアップ言語用タグを含む必要はなく、タグの含まれていない入力データが提供されると、置換処理等が行われることなく、機械翻訳処理が実行される。
【0043】
訓練用データ生成装置1は、図1に示すように、置換割合設定部11と、置換処理部12とを備える。
【0044】
置換割合設定部11は、開始終了対応符号を代替符号(プレースホルダー)に置換する割合を設定する。そして、置換割合設定部11は、設定した開始終了対応符号を代替符号(プレースホルダー)に置換する割合を示すデータ(これを「置換割合データ」という)を、データr_repとして、置換処理部12に出力する。
【0045】
置換処理部12は、第1言語のデータ(翻訳元言語データ)と、当該第1言語のデータの第2言語へ翻訳したデータである第2言語のデータ(翻訳先言語データ)とを対にしたデータである対訳データであって、マークアップ言語用タグを含まない対訳データDin_trを入力する。また、置換処理部12は、置換割合設定部11から出力される置換割合データr_repを入力する。置換処理部12は、置換割合データr_repが示す割合で、対訳データDin_trに含まれる開始終了対応符号を、代替符号(プレースホルダー)に置換する処理を行う。そして、置換処理部12は、当該置換処理後の対訳データを、置換処理後対訳データDo_trとして、データ記憶部DB1に出力する。
【0046】
なお、説明便宜のため、訓練用データ生成装置1に入力される対訳データDin_trは、N組み(N:自然数)であり、対訳データDin_trのi番目(i:自然数、1≦i≦N)の第1言語のデータ(翻訳元言語データ)を「src」と表記し、当該第1言語のデータの第2言語へ翻訳したデータである第2言語のデータ(翻訳先言語データ)を「dst」と表記し、また、i番目の対訳データを「{src,dst}」と表記する。
【0047】
また、置換処理後対訳データDo_trのi番目の第1言語データ(置換処理語の第1言語データ)を「src_rep」と表記し、当該第1言語のデータと組みをなす(対訳を構成する)第2言語のデータ(置換処理後の第2言語データ)を「dst_rep」と表記し、また、置換処理後対訳データDo_trのi番目のデータ(対訳データ)を「{src_rep,dst_rep}」と表記する。
【0048】
データ記憶部DB1は、訓練用データ生成装置1から出力される置換処理後対訳データDo_trを入力し、当該データを記憶保持する。また、データ記憶部DB1は、機械翻訳処理装置2からの指令に従い、記憶保持しているデータ(置換処理後対訳データDo_tr)を読み出し、読み出したデータを、データDin_tr_repとして、機械翻訳処理装置2に出力する。
機械翻訳処理装置2は、図1に示すように、訓練用データ取得部21と、順置換処理部22と、第1セレクタSEL21と、機械翻訳処理部23と、第2セレクタSEL22と、損失評価部24と、逆置換処理部25とを備える。
【0049】
訓練用データ取得部21は、データ記憶部DB1に対して、データ読み出し指令を出力し、データ記憶部DB1から、データ記憶部DB1に記憶されている置換処理後対訳データを、訓練用対訳データDin_tr_repとして読み出す。訓練用データ取得部21は、訓練用対訳データDin_tr_repから、第1言語のデータ(翻訳元言語データ)を取り出し、取り出した第1言語のデータ(翻訳元言語データ)を、訓練用入力データDin_trとして、第1セレクタSEL21に出力する。また、訓練用データ取得部21は、訓練用対訳データDin_tr_repから、第1セレクタSEL21に出力した第1言語データと対訳をなす第2言語のデータ(翻訳先言語データ)を取り出し、取り出した第2言語のデータ(翻訳先言語データ)を、訓練用正解データD_correctとして、損失評価部24に出力する。
【0050】
なお、説明便宜のため、訓練用データ取得部21は、データ記憶部DB1から、M組み(M:自然数、M≦N)の置換処理後対訳データDin_trを読み出すものとし、読み出した対訳データDin_trのj番目(j:自然数、1≦j≦M)の第1言語データを「src_rep」と表記し、当該第1言語のデータと組みをなす(対訳を構成する)第2言語のデータを「dst_rep」と表記し、また、対訳データDin_trのj番目のデータ(対訳データ)を「{src_rep,dst_rep}」と表記する。
【0051】
順置換処理部22は、機械翻訳処理の対象とする第1言語のデータ(翻訳元言語データ)であって、マークアップ言語用タグ(例えば、XMLタグ)を含む第1言語のデータを、データDin_srcとして入力する。そして、順置換処理部22は、データDin_srcに含まれるマークアップ言語用タグを、代替符号(プレースホルダー)に置換する処理(順置換処理)を行う。そして、順置換処理部22は、当該順置換処理後の第1言語データを、データDin_repとして、第1セレクタSEL21に出力する。また、順置換処理部22は、順置換処理において、マークアップ言語用タグと、当該マークアップ言語用タグを置換した代替符号(プレースホルダー)との対応関係のリストを生成し、当該リストを含むデータを、データD_list_repとして、逆置換処理部25に出力する。
【0052】
第1セレクタSEL21は、訓練用データ取得部21から出力されるデータDin_trと、順置換処理部22から出力されるデータDin_repとを入力する。また、第1セレクタSEL21は、機械翻訳処理装置2の各機能部を制御する制御部(不図示)から出力される選択信号sel21を入力する。第1セレクタSEL21は、選択信号se21に従い、データDin_tr、および、データDin_repのいずれか一方を選択し、選択したデータを、データD1として、機械翻訳処理部23に出力する。
【0053】
なお、(1)機械翻訳処理部23において学習処理(訓練処理)を行う場合(学習処理時(訓練時))、制御部は、その信号値を「0」とする選択信号sel21を第1セレクタSEL21に出力し、第1セレクタSEL21は、当該選択信号に従い、データDin_trを選択し、選択したデータDin_trをデータD1として、機械翻訳処理部23に出力する。(2)機械翻訳処理部23において予測処理(機械翻訳処理)を行う場合(予測処理時(機械翻訳実行時))、制御部は、その信号値を「1」とする選択信号sel21を第1セレクタSEL21に出力し、第1セレクタSEL21は、当該選択信号に従い、データDin_repを選択し、選択したデータDin_repをデータD1として、機械翻訳処理部23に出力する。
【0054】
機械翻訳処理部23は、機械翻訳モデルを含んでおり、第1セレクタSEL21から出力されるデータD1を入力する。機械翻訳処理部23に含まれる機械翻訳モデルは、学習可能モデル(データに基づく学習によりパラメータが最適化されることで学習済みモデルが構築されるモデル)であり、機械翻訳の学習を行うためのモデル(例えば、ニューラルネットワークを用いた機械翻訳モデル)である。
【0055】
(1)学習処理時(訓練時)において、機械翻訳処理部23の機械翻訳モデルは、第1セレクタSEL21からデータD1(=Din_tr)を入力し、機械翻訳モデルにより取得されたデータを、データD2として、第2セレクタSEL22に出力する。また、学習処理時(訓練時)において、機械翻訳処理部23の機械翻訳モデルは、損失評価部24から出力されるパラメータ更新データupdate(θ)を入力し、当該パラメータ更新データupdate(θ)に基づいて、機械翻訳モデルのパラメータを更新する(例えば、機械翻訳処理部23の機械翻訳モデルがニューラルネットワークを用いたモデルである場合、誤差逆伝播法により、機械翻訳処理部23の機械翻訳モデルのパラメータを更新する)。
【0056】
(2)予測処理時(機械翻訳処理実行時)において、機械翻訳処理部23の機械翻訳モデル(学習処理により取得された最適パラメータが設定された状態の機械翻訳モデル(学習済モデル))は、第1セレクタSEL21からデータD1(=Din_rep)を入力し、機械翻訳処理部23の機械翻訳モデル(学習済モデル)により取得されたデータを、データD2として、第2セレクタSEL22に出力する。
【0057】
第2セレクタSEL22は、機械翻訳処理部23から出力されるデータD2と、機械翻訳処理装置2の各機能部を制御する制御部(不図示)から出力される選択信号sel22とを入力する。第2セレクタSEL22は、選択信号sel22に従い、データD2を、損失評価部24および逆置換処理部25のいずれか一方に出力する。
【0058】
なお、(1)機械翻訳処理部23において学習処理(訓練処理)を行う場合(学習処理時(訓練時))、制御部は、その信号値を「0」とする選択信号sel22を第2セレクタSEL22に出力し、第2セレクタSEL22は、当該選択信号に従い、データD2を、データD21として、損失評価部24に出力する。(2)機械翻訳処理部23において予測処理(機械翻訳処理)を行う場合(予測処理時(機械翻訳実行時))、制御部は、その信号値を「1」とする選択信号sel22を第2セレクタSEL22に出力し、第2セレクタSEL22は、当該選択信号に従い、データD2を、データD22として、逆置換処理部25に出力する。
【0059】
損失評価部24は、訓練用データ取得部21から出力される訓練用正解データD_correctと、第2セレクタSEL22から出力されるデータD21とを入力する。損失評価部24は、データD21と、訓練用正解データD_correctとの損失(例えば、誤差)を、例えば、損失関数により評価し、当該評価結果に基づいて、機械翻訳処理部23の機械翻訳モデルのパラメータを更新するためのデータであるパラメータ更新データupdate(θ)を生成する。そして、損失評価部24は、生成したパラメータ更新データupdate(θ)を機械翻訳処理部23に出力する。なお、図1では、機械翻訳処理部23の出力から、損失評価部24への経路と、損失評価部24から機械翻訳処理部23へパラメータ更新データupdate(θ)を出力する経路とが別経路として図示しているが、これは、便宜上(図示の都合上)のものであり、図1の形態に限定されない。機械翻訳処理装置2において、誤差逆伝播法により機械翻訳処理部23の機械翻訳モデルのパラメータを更新する場合、損失評価部24で取得した誤差(誤差関数により取得した誤差(例えば、交差エントロピー誤差))は、機械翻訳処理部23の機械翻訳モデルにより出力データを取得した経路(順伝播の経路)を逆にたどる経路にて、誤差を順次伝播(逆伝播)させながら、機械翻訳処理部23の機械翻訳モデルの各パラメータ(機械翻訳処理部23の機械翻訳モデルの各層のパラメータ)を更新するようにすればよい。
【0060】
また、損失評価部24は、取得した誤差(損失)が(1)所定の範囲内に収まるようになった場合、あるいは、(2)当該誤差(損失)の変化量が所定の範囲内に収まるようになった場合、学習処理を継続させる必要がないと判定し、学習処理を終了させる。
【0061】
逆置換処理部25は、第2セレクタSEL22から出力されるデータD22と、順置換処理部22から出力されるデータD_list_repとを入力する。逆置換処理部25は、データD22から、順置換処理部22により置換された代替符号(プレースホルダー)を検出し、検出した代替符号を、データD_list_repに含まれるリスト(順置換処理において、マークアップ言語用タグと、当該マークアップ言語用タグを置換した代替符号(プレースホルダー)との対応関係のリスト)に基づいて、元のマークアップ言語用タグに戻す(置換する)処理(逆置換処理)を行う。そして、逆置換処理部25は、データD22に対して逆置換処理を施した後のデータを、出力データDo_dstとして、出力する。
【0062】
<1.2:機械翻訳処理システムの動作>
以上のように構成された機械翻訳処理システム1000の動作について説明する。
【0063】
以下では、機械翻訳処理システム1000の動作について、(1)訓練用データ生成処理、(2)機械翻訳モデルの学習処理(訓練処理)(作成方法)、および、(3)予測処理(機械翻訳実行処理)に分けて説明する。
【0064】
なお、説明便宜のため、機械翻訳処理システム1000では、第1言語(翻訳元言語)を第2言語(翻訳先言語)に機械翻訳する処理を実行するためのシステムであるものとする。
【0065】
(1.2.1:訓練用データ生成処理)
まず、機械翻訳処理システム1000で実行される訓練用データ生成処理について、説明する。
【0066】
図2は、機械翻訳処理システム1000で実行される訓練用データ生成処理のフローチャートである。
【0067】
図3は、機械翻訳処理システム1000の訓練用データ生成装置1で実行される置換処理について説明するための図である。
【0068】
以下では、図2のフローチャートを参照しながら、機械翻訳処理システム1000で実行される訓練用データ生成処理について、説明する。
【0069】
(ステップS101):
ステップS101において、代替符号(プレースホルダー)の設定処理が実行される。具体的には、以下のように処理が実行される。
【0070】
訓練用データ生成装置1の置換処理部12は、第1言語のデータ(翻訳元言語データ)と、当該第1言語のデータの第2言語へ翻訳したデータである第2言語のデータ(翻訳先言語データ)とを対にしたデータである対訳データであって、マークアップ言語用タグを含まない対訳データDin_tr(訓練用データ生成装置1に入力される対訳データ)に対して、代替符号(プレースホルダー)に置換する開始終了対応符号を設定する。
【0071】
「開始終了対応符号」とは、単語列や文字列(サブワード列を含む)において、開始(あるいは起点)を示す符号(開始符号)と、当該開始符号と対応させて用いられる(ペア(組み)を構成するように用いられる)符号であって、終了(あるいは終点)を示す符号(終了符号)とをペア(組み)にした符号のことをいう。例えば、「開始終了対応符号」としては、以下の符号が挙げられる。
(1)「()」(左側丸括弧(開始符号)と右側丸括弧(終了符号))
(2)「[]」(左側カギ括弧(開始符号)と右側カギ括弧(終了符号))
(3)「""」(左側ダブル引用符号(開始符号)と右側ダブル引用符号(終了符号))
(4)「''」(左側シングル引用符号(開始符号)と右側シングル引用符号(開始符号))
なお、開始終了対応符号は、上記に限定されることはなく、開始符号と終了符号が対応している(左の符号と右の符号とが対応している符号)であれば、他の符号であってもよい。
【0072】
また、第1言語、第2言語において、2バイトコードの文字コードを使用する言語である場合、当該言語における開始終了対応符号は、2バイトコード(文字コード)の符号として設定されるものであってもよい。例えば、第1言語が日本語であり、第2言語が英語である場合であって、開始終了対応符号を「()」(左側丸括弧(開始符号)と右側丸括弧(終了符号))とする場合、(A)2バイトコードを使用する言語である日本語(第1言語)においては、開始終了対応符号を1バイトコード(半角文字)の左側丸括弧(開始符号)と右側丸括弧(終了符号)、および/または、2バイトコード(全角文字)の左側丸括弧(開始符号)と右側丸括弧(終了符号)と設定し、(B)第2言語(英語)については、開始終了対応符号を1バイトコード(半角文字)の左側丸括弧(開始符号)と右側丸括弧(終了符号)に設定するようにしてもよい。
【0073】
なお、以下では、説明便宜のため、第1言語を日本語とし、第2言語を英語とし、開始終了対応符号を
(1)「()」(左側丸括弧(開始符号)と右側丸括弧(終了符号))
(2)「[]」(左側カギ括弧(開始符号)と右側カギ括弧(終了符号))
とし、第1言語、第2言語ともに、1バイトコードの文字(半角文字)を開始終了対応符号に設定する場合(一例)について、説明する。
【0074】
訓練用データ生成装置1の置換処理部12は、第1言語を日本語とし、第2言語を英語とし、開始終了対応符号を
(1)「()」(左側丸括弧(開始符号)と右側丸括弧(終了符号))
(2)「[]」(左側カギ括弧(開始符号)と右側カギ括弧(終了符号))
に設定する。
【0075】
(ステップS102):
ステップS102において、置換割合の設定処理が実行される。具体的には、以下のように処理が実行される。
【0076】
置換割合設定部11は、開始終了対応符号を代替符号(プレースホルダー)に置換する割合を設定する。そして、置換割合設定部11は、設定した置換割合データ(開始終了対応符号を代替符号(プレースホルダー)に置換する割合を示すデータ)を、データr_repとして、置換処理部12に出力する。本実施形態では、説明便宜のため、置換割合設定部11は、開始終了対応符号を代替符号(プレースホルダー)に置換する割合を「0.1」(10%)に設定したものとして、以下説明する。
【0077】
なお、置換割合設定部11により設定される割合(置換割合データr_repが示す割合)は、代替符号(プレースホルダー)が出現する確率が、機械翻訳処理装置2に入力されるマークアップ言語用タグ付きの第1言語データ(翻訳元言語データ)において、マークアップ言語用タグが出現する確率と同程度となるように、設定することが好ましい。つまり、上記置換処理後の対訳データDo_trにおける代替符号(プレースホルダー)の出現確率(出現確率分分布)と、機械翻訳処理装置2に入力されるマークアップ言語用タグ付きの第1言語データ(翻訳元言語データ)(機械翻訳処理の対象とするデータ)におけるマークアップ言語用タグの出現確率(出現確率分布)とが近くなるようにすることが好ましい。このようにすることで、訓練用データにおける代替符号(プレースホルダー)の出現確率分布が、実際に機械翻訳処理対象とする言語データにおけるマークアップ言語用タグの出現確率分布と近くなり、上記訓練用データを用いた機械翻訳処理の学習処理の精度を向上させることができる。なお、発明者による研究では、大規模コーパスでの「()」や「[]」の出現確率は0.1程度であり、そのうちの10%について置換すると1%が代替符号となる。この比率は、対象の機械翻訳処理の入力となる言語データ(平文やマークアップ言語用タグ付きの文を含む)での、マークアップ言語用タグの出現確率に近いものとなっている。
【0078】
また、置換割合設定部11により置換する割合を設定することで(1.0未満の値に設定することで)、全ての開始終了対応符号が、代替符号(プレースホルダー)に置換されないことが保証される。これにより、置換処理後の対訳データ中に開始終了対応符号が含まれることが保証され、当該開始終了対応符号についても適切に学習処理(訓練)が可能となる(翻訳元言語データの開始終了対応符号を、機械翻訳処理結果データ(翻訳先言語データ)において、正しく出現させる(機械翻訳する)ことが可能となる)。
【0079】
(ステップS103):
ステップS103において、ループ処理(ループ1)が開始される。訓練用データ生成装置1に入力される対訳データDin_trが、N組み(N:自然数)である場合、各対訳データ{src_rep,dst_rep}(i:自然数、1≦i≦N)に対して、N回、ループ処理(ループ1)が実行される。つまり、1番目の対訳データ{src_rep,dst_rep}からN番目の対訳データ{src_rep,dst_rep}に対して、ループ処理(ループ1)が実行される。
【0080】
(ステップS104、S105):
ステップS104、S105において、第1言語データ(src)の置換処理、および、第2言語データ(dst)の置換処理が実行される。具体的には、以下の処理が実行される。
【0081】
置換処理部12は、第1言語のデータ(翻訳元言語データ)と、当該第1言語のデータの第2言語へ翻訳したデータである第2言語のデータ(翻訳先言語データ)とを対にしたデータである対訳データであって、マークアップ言語用タグを含まない対訳データDin_trを入力する。なお、対訳データDin_trは、第1言語、第2言語ともに、形態素解析処理が実行され、形態素に分離されたデータ(単語列、サブワード列等)であるものとする。
【0082】
また、置換処理部12は、置換割合設定部11から出力される置換割合データr_repが示す割合で、対訳データDin_trに含まれる開始終了対応符号を、代替符号(プレースホルダー)に置換する処理を行う。本実施形態では、置換割合データr_repが示す割合が「0.1」(10%)に設定されているので、置換処理部12は、代替符号(プレースホルダー)に置換すると設定した開始終了対応符号を含む文(対訳文データ)のうち、10%の文(対訳分データ)を置換処理(開始終了対応符号を、代替符号(プレースホルダー)に置換する処理)の対象とし、置換処理の対象とした対訳データに対して、置換処理を実行する。
【0083】
ここで、置換処理の一例として、図3の場合について、説明する。
【0084】
図3に示すように、i番目の対訳データの第1言語(日本語)のデータ(src)、および、第2言語(英語)のデータ(dst)が下記のものであるとする。
<第1言語(日本語)データ(src)>
[ 一般 名 ] テリパラチド ( 遺伝子 組 換え )
<第2言語(英語)データ(dst)>
[ Non - proprietary name ] Teriparatide ( Genetical Recombination )
そして、置換処理部12は、開始終了対応符号を
(1)「()」(左側丸括弧(開始符号)と右側丸括弧(終了符号))
(2)「[]」(左側カギ括弧(開始符号)と右側カギ括弧(終了符号))
に設定しているので、上記(1)、(2)の符号を、代替符号(プレースホルダー)に置換する。
【0085】
具体的には、置換処理部12は、第1言語(日本語)のデータ(src)、および、第2言語(英語)のデータ(dst)において、開始終了対応符号のうち、開始符号を「TAGS_k」(または、「TAGS_k」を含む文字列)に置換し、終了符号を「TAGE_k」(または、「TAGE_k」を含む文字列)に置換する。なお、開始符号の代替符号および終了符号の代替符号の添え字kは、同一の文内では(同一の対訳データ内では)、同一種類の開始終了対応符号について同じ整数値に設定されるものとし、添え字kは、所定の範囲から無作為に取得した整数値に設定されるものとする。
【0086】
図3の対訳データ({src,dst})の場合、置換処理部12は、開始終了対応符号「()」の開始符号である左側丸括弧「(」の代替符号(プレースホルダー)を「_@@@_TAGS_1」に設定し、開始終了対応符号「()」の終了符号である右側丸括弧「)」の代替符号(プレースホルダー)を「_@@@_TAGE_1」に設定する。
【0087】
また、図3の対訳データ({src,dst})の場合、置換処理部12は、開始終了対応符号「[]」の開始符号である左側カギ括弧「[」の代替符号(プレースホルダー)を「_@@@_TAGS_2」に設定し、開始終了対応符号「[]」の終了符号である右側丸括弧「]」の代替符号(プレースホルダー)を「_@@@_TAGE_2」に設定する(置換対象および代替符号の設定)。
【0088】
そして、置換処理部12は、上記の置換対象および代替符号の設定に従い、第1言語(日本語)のデータ(src)に対して置換処理を実行し、置換処理後の第1言語データsrc_repを取得する。つまり、置換処理部12は、下記のデータを、置換処理後の第1言語データsrc_repとして取得する(ステップS104)。
<置換処理後の第1言語(日本語)データ(src)>
_@@@_TAGS_2 一般 名 _@@@_TAGE_2 テリパラチド _@@@_TAGS_1 遺伝子 組 換え _@@@_TAGE_1
また、置換処理部12は、上記の置換対象および代替符号の設定に従い、第2言語(英語)のデータ(dst)に対して置換処理を実行し、置換処理後の第2言語データdst_repを取得する。つまり、置換処理部12は、下記のデータを、置換処理後の第2言語データdst_repとして取得する(ステップS105)。
<置換処理後の第2言語(英語)データ(dst)>
_@@@_TAGS_2 Non - proprietary name _@@@_TAGE_2 Teriparatide _@@@_TAGS_1 Genetical Recombination _@@@_TAGE_1
(ステップS106):
ステップS106において、置換処理部12は、ステップS104、S105で取得した置換処理後の第1言語データsrc_repと、置換処理後の第2言語データdst_repとをペア(組み)にした置換処理後の対訳データ({src_rep,dst_rep})を取得し、取得した置換処理後の対訳データ({src_rep,dst_rep})を、置換処理後の対訳データDo_trとして、データ記憶部DB1に出力し、データ記憶部DB1に記憶させる。
【0089】
(ステップS107):
ステップS107において、置換処理部12は、ループ処理(ループ1)の終了条件を満たすか否か(置換処理対象とした対訳データに対して、全て置換処理が実行されたか否か)を判定し、ループ処理の終了条件を満たさないと判定した場合、処理をステップS103に戻し、ステップS104~S106の処理を実行する。一方、置換処理部12は、ループ処理の終了条件を満たすと判定した場合、処理を終了させる(訓練用データ生成処理を終了させる)。
【0090】
以上により、訓練用データ生成装置1では、例えば、置換処理の対象とする対訳データをN個とすると、N個の置換処理後の対訳データ(置換処理が実行された対訳データの割合は、置換対象に設定した開始終了対応符号を含む対訳文の内の10%(r_repで設定した割合)である)を取得することができる。
【0091】
訓練用データ生成装置1では、上記処理により、マークアップ言語用タグ(例えば、XMLタグ)を含まない対訳文(対訳データ)に、マークアップ言語用タグ(例えば、XMLタグ)に相当する代替符号(プレースホルダー)を挿入することができる。つまり、訓練用データ生成装置1では、上記処理により、マークアップ言語用タグ(例えば、XMLタグ)付きの対訳文(対訳データ)と同等の対訳文(対訳データ)を取得することができる。つまり、訓練用データ生成装置1により、上記処理で取得された対訳データは、マークアップ言語用タグに相当する代替符号(プレースホルダー)を含んでいるので、上記処理で取得された対訳データを、機械翻訳モデルの学習処理の訓練データとして用いることで、マークアップ言語用タグ(例えば、XMLタグ)付きの対訳文(対訳データ)を訓練データとして、機械翻訳モデルの学習処理を行ったときと同等の効果を奏することができる(同等の学習処理を行うことができる)。
【0092】
(1.2.2:機械翻訳モデルの学習処理(訓練処理)(作成方法))
次に、機械翻訳処理システム1000で実行される機械翻訳モデルの学習処理(訓練処理)(作成方法)について、説明する。
【0093】
訓練用データ取得部21は、データ記憶部DB1に対して、データ読み出し指令を出力し、データ記憶部DB1から、データ記憶部DB1に記憶されている置換処理後対訳データを、訓練用対訳データDin_tr_rep(={src_rep,dst_rep})として読み出す。訓練用データ取得部21は、訓練用対訳データDin_tr_repから、第1言語のデータ(翻訳元言語データ)(src_rep)を取り出し、取り出した第1言語のデータ(翻訳元言語データ)を、訓練用入力データDin_tr(=src_rep)として、第1セレクタSEL21に出力する。また、訓練用データ取得部21は、訓練用対訳データDin_tr_repから、第1セレクタSEL21に出力した第1言語データと対訳をなす第2言語のデータ(翻訳先言語データ)(dst_rep)を取り出し、取り出した第2言語のデータ(翻訳先言語データ)を、訓練用正解データD_correct(=dst_rep)として、損失評価部24に出力する。
【0094】
なお、説明便宜のため、訓練用データ取得部21は、データ記憶部DB1から、M組み(M:自然数、M≦N)の置換処理後対訳データDin_trを読み出すものとし、読み出した対訳データDin_trのj番目(j:自然数、1≦j≦M)の第1言語データを「src_rep」と表記し、当該第1言語のデータと組みをなす(対訳を構成する)第2言語のデータを「dst_rep」と表記し、また、対訳データDin_trのj番目のデータ(対訳データ)を「{src_rep,dst_rep}」と表記する。
【0095】
機械翻訳処理装置2の各機能部を制御する制御部(不図示)は、その信号値を「0」とする選択信号sel21を第1セレクタSEL21に出力する。第1セレクタSEL21は、当該選択信号に従い、データDin_trを選択し、選択したデータDin_tr(=src_rep)をデータD1として、機械翻訳処理部23に出力する。
【0096】
機械翻訳処理部23の機械翻訳モデルは、第1セレクタSEL21からデータD1(=Din_tr)を入力し、機械翻訳モデルによる機械翻訳処理を実行し、当該機械翻訳処理により取得されたデータを、データD2として、第2セレクタSEL22に出力する。
【0097】
機械翻訳処理装置2の各機能部を制御する制御部(不図示)は、その信号値を「0」とする選択信号sel22を第2セレクタSEL22に出力する。第2セレクタSEL22は、当該選択信号に従い、機械翻訳処理部23から出力されるデータD2を損失評価部24に出力する経路を選択し、データD2を損失評価部24に出力する。
【0098】
損失評価部24は、訓練用データ取得部21から出力される訓練用正解データD_correctと、第2セレクタSEL22から出力されるデータD21とを入力する。損失評価部24は、データD21と、訓練用正解データD_correctとの損失(例えば、誤差)を、例えば、損失関数により評価し、当該評価結果に基づいて、機械翻訳処理部23の機械翻訳モデルのパラメータを更新するためのデータであるパラメータ更新データupdate(θ)を生成する。そして、損失評価部24は、生成したパラメータ更新データupdate(θ)を機械翻訳処理部23に出力する。なお、図1では、機械翻訳処理部23の出力から、損失評価部24への経路と、損失評価部24から機械翻訳処理部23へパラメータ更新データupdate(θ)を出力する経路とが別経路として図示しているが、これは、便宜上(図示の都合上)のものであり、図1の形態に限定されない。機械翻訳処理装置2において、誤差逆伝播法により機械翻訳処理部23の機械翻訳モデルのパラメータを更新する場合、損失評価部24で取得した誤差(誤差関数により取得した誤差(例えば、交差エントロピー誤差))は、機械翻訳処理部23の機械翻訳モデルにより出力データを取得した経路(順伝播の経路)を逆にたどる経路にて、誤差を順次伝播(逆伝播)させながら、機械翻訳処理部23の機械翻訳モデルの各パラメータ(機械翻訳処理部23の機械翻訳モデルの各層のパラメータ)を更新するようにすればよい。
【0099】
機械翻訳処理装置2において、上記学習処理が、訓練用データ取得部21によりデータ記憶部DB1から取得された(読み出された)対訳データ({src_rep,dst_rep})に対して繰り返し実行される。
【0100】
そして、損失評価部24により取得される誤差(損失)が(1)所定の範囲内に収まるようになった場合、あるいは、(2)損失評価部24により取得される誤差(損失)の変化量が所定の範囲内に収まるようになった場合、損失評価部24は、学習処理を継続させる必要がないと判定し、学習処理を終了させる。そして、学習処理が終了した時点において、機械翻訳処理部23の機械翻訳モデルに設定されているパラメータが、最適化パラメータとして、機械翻訳処理部23の機械翻訳モデルに設定(固定)され、機械翻訳処理部23の機械翻訳モデルの学習済モデルが取得される。
【0101】
上記の通り、機械翻訳処理システム1000において、機械翻訳モデルの学習処理(訓練処理)が実行され、機械翻訳処理部23の機械翻訳モデルの学習済モデルが取得される。
【0102】
(1.2.3:予測処理(機械翻訳実行処理))
次に、機械翻訳処理システム1000で実行される予測処理(機械翻訳実行処理)について、説明する。
【0103】
図4は、機械翻訳処理システム1000で実行される予測処理(機械翻訳実行処理)のフローチャートである。
【0104】
図5は、機械翻訳処理システム1000の予測処理(機械翻訳実行処理)について説明するための図である。
【0105】
以下では、図4のフローチャートを参照しながら、機械翻訳処理システム1000で実行される予測処理(機械翻訳実行処理)について、説明する。
【0106】
なお、機械翻訳処理装置2には、マークアップ言語用タグ(例えば、XMLタグ)を含む第1言語(日本語)のデータが入力されるものとする。また、マークアップ言語用タグは、XMLタグである場合について、以下、説明する。
【0107】
(ステップS201):
ステップS201において、順置換処理が実行される。具体的には、以下の処理が実行される。
【0108】
順置換処理部22は、機械翻訳処理の対象とする第1言語(日本語)のデータ(翻訳元言語データ)であって、マークアップ言語用タグ(XMLタグ)を含む第1言語のデータを、データDin_srcとして入力する。なお、第1言語のデータ(翻訳元言語データ)は、形態素解析処理が実行され、形態素に分離されたデータ(単語列、サブワード列等)であるものとする。
【0109】
順置換処理部22は、データDin_srcに含まれるマークアップ言語用タグ(XMLタグ)を検出し、検出したマークアップ言語用タグ(XMLタグ)を代替符号(プレースホルダー)に置換する処理(順置換処理)を行う。そして、順置換処理部22は、当該置換処理後の第1言語データを、データDin_repとして、第1セレクタSEL21に出力する。
【0110】
なお、順置換処理部22は、入力されたマークアップ言語用タグ(XMLタグ)を含む第1言語のデータDin_srcのデータ(文)の中のXMLの開始・終了タグを、訓練用データ生成処理時に用いたのと同じ代替符号(プレースホルダー)に置換することで順置換処理を行う。すなわち、順置換処理部22は、(1)入力されたマークアップ言語用タグ(XMLタグ)を含む第1言語のデータDin_srcのデータ(文)の中のXMLの開始タグを「TAGS_k」(または、「TAGS_k」を含む文字列)に置換し、(2)データDin_srcのデータ(文)の中のXMLの終了タグを「TAGE_k」(または、「TAGE_k」を含む文字列)に置換する。
【0111】
そして、訓練用データ生成処理時と同様に、XMLの開始タグの代替符号(「TAGS_k」)およびXMLの終了タグの代替符号(「TAGE_k」)の添え字kは、同一の文内では(同一の入力データ内(順置換処理の対象とする処理単位のデータ内)では)、同一種類のXML開始終了タグについて同じ整数値に設定されるものとし、添え字kは、所定の範囲から無作為に取得した整数値に設定されるものとする。
【0112】
例えば、図5に示す入力データDin_src(=「今日 の 天気 は <div> 晴れ </div>です 。」)が、機械翻訳処理装置2に入力された場合、順置換処理部22は、入力データDin_srcに含まれるXMLの開始タグ「<div>」および終了タグ「</div>」を検出し、XMLの開始タグ「<div>」を代替符号「_@@@_TAGS_1」に置換し、XMLの終了タグ「</div>」を代替符号「_@@@_TAGE_1」に置換することで順置換処理を実行し、図5に示す、順置換処理後のデータDin_rep(=「今日 の 天気 は _@@@_TAGS_1 晴れ _@@@_TAGE_1 です 。」)を取得する。
【0113】
順置換処理部22は、上記順置換処理を行った後の第1言語データを、データDin_repとして、第1セレクタSEL21に出力する。
【0114】
また、順置換処理部22は、順置換処理において、XMLタグ(マークアップ言語用タグ)と、当該XMLタグを置換した代替符号(プレースホルダー)との対応関係のリストを生成し、当該リストを含むデータを、データD_list_repとして、逆置換処理部25に出力する。図5の場合、順置換処理部22は、XMLタグ「<div>」を代替符号「 _@@@_TAGS_1」に置換し、XMLタグ「</div>」を代替符号「 _@@@_TAGE_1」に置換したことを示すリストを生成し、当該リストを含むデータを、データD_list_repとして、逆置換処理部25に出力する。
【0115】
機械翻訳処理装置2の各機能部を制御する制御部(不図示)は、その信号値を「0」とする選択信号sel21を第1セレクタSEL21に出力する。第1セレクタSEL21は、当該選択信号に従い、順置換処理部22から出力されるデータDin_repを選択し、選択したデータDin_repをデータD1として、機械翻訳処理部23に出力する。
【0116】
(ステップS202):
ステップS202において、機械翻訳処理が実行される。具体的には、以下の処理が実行される。
【0117】
機械翻訳処理部23の機械翻訳モデルは、第1セレクタSEL21からデータD1(=Din_tr)を入力し、機械翻訳モデルによる機械翻訳処理を実行する。
【0118】
例えば、図5の場合、順置換処理後のデータDin_rep(=「今日 の 天気 は _@@@_TAGS_1 晴れ _@@@_TAGE_1 です 。」)が機械翻訳処理部23の機械翻訳モデルに入力された場合、機械翻訳処理部23は、機械翻訳モデル(学習済みモデル)を用いて、入力データに対して機械翻訳処理を実行し、図5に示す機械翻訳処理結果データ(=「The weather is _@@@_TAGS_1 fine _@@@_TAGE_1 today.」)を取得する。機械翻訳処理部23の機械翻訳モデルは、代替符号(プレースホルダー)を含む対訳データにより学習処理を行い最適化されたモデルであるため、XMLタグを代替符号(プレースホルダー)に置換したデータ(第1言語データ)を機械翻訳モデル(学習済モデル)に入力した場合、機械翻訳モデル(学習済モデル)は、代替符号(プレースホルダー)を適切な位置(文中の位置)に維持したまま、適切な機械翻訳文(機械翻訳処理結果データ(第2言語(英語)のデータ))を出力(取得)する。
【0119】
このようにして、機械翻訳処理部23の機械翻訳モデル(学習済みモデル)により取得されたデータ(機械翻訳処理後のデータ)は、データD2として、機械翻訳処理部23から第2セレクタSEL22に出力される。
【0120】
機械翻訳処理装置2の各機能部を制御する制御部(不図示)は、その信号値を「1」とする選択信号sel22を第2セレクタSEL22に出力する。第2セレクタSEL22は、当該選択信号に従い、機械翻訳処理部23から出力されるデータD2を逆置換処理部25に出力する経路を選択し、データD2を逆置換処理部25に出力する。
【0121】
(ステップS203):
ステップS203において、逆置換処理が実行される。具体的には、以下の処理が実行される。
【0122】
逆置換処理部25は、第2セレクタSEL22から出力されるデータD22と、順置換処理部22から出力されるデータD_list_repとを入力する。逆置換処理部25は、データD22から、順置換処理部22により置換された代替符号(プレースホルダー)を検出し、検出した代替符号を、データD_list_repに含まれるリスト(順置換処理において、マークアップ言語用タグと、当該マークアップ言語用タグを置換した代替符号(プレースホルダー)との対応関係のリスト)に基づいて、元のマークアップ言語用タグに戻す(置換する)処理(逆置換処理)を行う。
【0123】
例えば、図5の場合、データD_list_repには、XMLタグ「<div>」を代替符号「_@@@_TAGS_1」に置換し、XMLタグ「</div>」を代替符号「_@@@_TAGE_1」に置換したことを示すリストが含まれているので、逆置換処理部25は、当該リストを取得し、機械翻訳処理後のデータD2に含まれる代替符号を元のXMLタグに置換する(戻す)処理(逆置換処理)を行う。つまり、図5の場合、機械翻訳処理後のデータD2(=「The weather is _@@@_TAGS_1 fine _@@@_TAGE_1 today.」)において、代替符号「_@@@_TAGS_1」をXMLタグ「<div>」に置換し(戻し)、代替符号「_@@@_TAGE_1」をXMLタグ「</div>」に置換する(戻す)処理(逆置換処理)を行う。これにより、逆置換処理部25は、逆置換処理後のデータ(=「The weather is <div> fine </div> today.」)を取得する。
【0124】
そして、逆置換処理部25は、データD22に対して逆置換処理を施した後のデータを、出力データDo_dst(=「The weather is <div> fine </div> today.」(図5の場合))として、出力する。
【0125】
以上のように、機械翻訳処理システム1000では、XMLタグを含む入力データに対して、XMLタグを、訓練用データ生成時に使用したのと同様の代替符号(プレースホルダー)に置換し、代替符号が挿入された対訳データで最適化された機械翻訳モデルの学習済モデルを用いて、機械翻訳処理を実行するので、代替符号が挿入された状態を適切に維持しつつ適切な機械翻訳処理結果データを取得することができる。そして、機械翻訳処理システム1000では、代替符号が挿入された状態の機械翻訳処理結果データ(機械翻訳文)において、代替符号をXMLタグに置換する(元に戻す)ことで、XMLタグが適切な状態で挿入された機械翻訳処理結果データ(機械翻訳文)を取得することができる。
【0126】
なお、図6にXMLタグ付きの第1言語データ(日本語データ)を機械翻訳処理システム1000で機械翻訳処理した結果を示す。図6の上段は、入力データDin_srcおよび逆置換処理後のデータDo_dstのXMLタグ付きデータ(XMLソースコード)を表示したものであり、図6の下段は、入力データDin_srcおよび逆置換処理後のデータDo_dstのXMLタグを解釈して表示させたものである。図6から分かるように、XMLタグが適切な位置に維持されたまま、適切に機械翻訳処理(第1言語(日本語)から第2言語(英語)への機械翻訳処理)がなされている。
【0127】
≪まとめ≫
以上のように、機械翻訳処理システム1000では、訓練用データ生成装置1により、訓練用データ生成処理を行うことで、マークアップ言語用タグ(例えば、XMLタグ)を含まない対訳文(対訳データ)において、開始終了対応符号(()、[]のように、左と右とが対応している符号)を検出し、検出した開始終了対応符号を代替符号(プレースホルダー)に置換することで、マークアップ言語用タグ(例えば、XMLタグ)を挿入された対訳データと同等のデータを、簡単かつ多量に生成することができる。
【0128】
そして、機械翻訳処理システム1000の訓練用データ生成装置1により、訓練用データ生成処理で取得された対訳データは、マークアップ言語用タグに相当する代替符号(プレースホルダー)を含んでいるので、訓練用データ生成装置1による訓練用データ生成処理で取得された対訳データを、機械翻訳モデルの学習処理の訓練データとして用いることで、マークアップ言語用タグ(例えば、XMLタグ)付きの対訳文(対訳データ)を訓練データとして、機械翻訳モデルの学習処理を行ったときと同等の効果を奏することができる(同等の学習処理を行うことができる)。
【0129】
また、機械翻訳処理システム1000では、マークアップ言語用タグ(例えば、XMLタグ)を含む入力データに対して、マークアップ言語用タグを、訓練用データ生成時に使用したのと同様の代替符号(プレースホルダー)に置換し、代替符号が挿入された対訳データで最適化された機械翻訳モデルの学習済モデルを用いて、機械翻訳処理を実行するので、代替符号が挿入された状態を適切に維持しつつ適切な機械翻訳処理結果データを取得することができる。そして、機械翻訳処理システム1000では、代替符号が挿入された状態の機械翻訳処理結果データ(機械翻訳文)において、代替符号をXMLタグに置換する(元に戻す)ことで、XMLタグが適切な状態で挿入された機械翻訳処理結果データ(機械翻訳文)を取得することができる。
【0130】
このように、機械翻訳処理システム1000により、タグ付きの対訳文を大量に準備することなく、翻訳対象の原文にマークアップ言語用タグを含んだ原文を、マークアップ言語用タグの情報を保持しつつ、高精度に機械翻訳することが可能となる。
【0131】
[第2実施形態]
次に、第2実施形態について、説明する。なお、上記実施形態と同様の部分については、同一符号を付し、詳細な説明を省略する。
【0132】
図7は、第2実施形態に係る機械翻訳処理システム2000の概略構成図である。
【0133】
図8は、機械翻訳処理システム2000の訓練用データ生成装置1Aで実行される置換処理について説明するための図である。
【0134】
第2実施形態の機械翻訳処理システム2000は、第1実施形態の機械翻訳処理システム1000において、訓練用データ生成装置1を訓練用データ生成装置1Aに置換した構成を有している。
【0135】
そして、訓練用データ生成装置1Aは、第1実施形態の訓練用データ生成装置1において、置換処理部12を置換処理部12Aに置換した構成を有している。それ以外は、第2実施形態の機械翻訳処理システム2000は、第1実施形態の機械翻訳処理システム1000と同様である。
【0136】
置換処理部12Aは、第1言語のデータ(翻訳元言語データ)と、当該第1言語のデータの第2言語へ翻訳したデータである第2言語のデータ(翻訳先言語データ)とを対にしたデータである対訳データであって、マークアップ言語用タグを含まない対訳データDin_trを入力する。置換処理部12Aは、対訳データDin_trの中で(対訳文中で)対応がとれている要素の周りに代替符号(プレースホルダー)を挿入する。置換処理部12Aは、例えば、固有名詞や数字など、第1言語データ(原文)と第2言語データ(訳文)との間で対応が明確な場合や、単語アライメント処理を実行し、単語やフレーズ間の対応が取れる場合には、それらの対応がとれた要素の前後に代替符号(プレースホルダー)を挿入する処理を行う。置換処理部12Aは、代替符号(プレースホルダー)として、第1実施形態と同様の符号を用いる。
【0137】
具体的には、置換処理部12Aは、(1)第1言語データ(原文)と第2言語データ(訳文)との間で対応がとれている要素(単語、サブワード等)の前に、第1実施形態の開始符号の代替符号「TAGS_k」(または、「TAGS_k」を含む文字列)を挿入し、かつ、(2)第1言語データ(原文)と第2言語データ(訳文)との間で対応がとれている要素(単語、サブワード等)の後に、第1実施形態の終了符号の代替符号「TAGE_k」(または、「TAGE_k」を含む文字列)を挿入する。
【0138】
ここで、置換処理部12Aによる置換処理の一例として、図8の場合について、説明する。
【0139】
図8に示すように、i番目の対訳データの第1言語(日本語)のデータ(src)、および、第2言語(英語)のデータ(dst)が下記のものであるとする。
<第1言語(日本語)データ(src)>
私 は 情報通信研究機構 に 出勤 し ます 。
<第2言語(英語)データ(dst)>
I am going to work at the National Institute of Information and Communications Technology.
そして、置換処理部12Aは、第1言語データと第2言語データとで対応している要素(上記では固有名詞)を検出し、検出した要素の前後に代替符号(プレースホルダー)を挿入する処理を行う。つまり、置換処理部12Aは、第1言語データにおける固有名詞「情報通信研究機構」と、第2言語における上記第1言語の固有名詞に対応する「the National Institute of Information and Communications Technology」とを検出し(対応している固有名詞を検出し)、検出した要素(上記では、固有名詞を構成する文字列)の前後に代替符号(プレースホルダー)を挿入する。これにより、置換処理部12Aは、図8に示すように、下記の置換処理後対訳データ({src_rep,dst_rep})を取得する。
<置換処理後の第1言語(日本語)データ(src)>
私 は _@@@_TAGS_1 情報通信研究機構 _@@@_TAGE_1 に 出勤 し ます。
<置換処理後の第2言語(英語)データ(dst)>
I am going to work at _@@@_TAGS_1 the National Institute of Information and Communications Technology _@@@_TAGE_1.
なお、置換処理部12Aは、第1実施形態と同様に、置換割合設定部11により設定された割合(置換割合データr_repが示す割合)で、上記置換処理(代替符号(プレースホルダー)を挿入して対応要素を置換する処理)を行う。
【0140】
また、置換割合設定部11により設定される割合(置換割合データr_repが示す割合、第2実施形態の場合は1%)は、代替符号(プレースホルダー)が出現する確率が、機械翻訳処理装置2に入力されるマークアップ言語用タグ付きの第1言語データ(翻訳元言語データ)において、マークアップ言語用タグが出現する確率と同程度となるように、設定することが好ましい。つまり、上記置換処理後の対訳データDo_trにおける代替符号(プレースホルダー)の出現確率(出現確率分分布)と、機械翻訳処理装置2に入力される第1言語データ(翻訳元言語データ)(機械翻訳処理の対象とするデータ)におけるマークアップ言語用タグの出現確率(出現確率分布)とが近くなるようにすることが好ましい。このようにすることで、訓練用データにおける代替符号(プレースホルダー)の出現確率分布が、実際に機械翻訳処理対象とするマークアップ言語用タグ付き言語データにおけるマークアップ言語用タグの出現確率分布と近くなり、上記訓練用データを用いた機械翻訳処理の学習処理の精度を向上させることができる。
【0141】
上記処理により訓練用データ生成装置1Aに取得されたデータDo_trは、データ記憶部DB1に記憶され、第1実施形態と同様に、機械翻訳処理システム2000において、機械翻訳モデルの学習処理(訓練処理)に用いられる。そして、学習処理が完了した、機械翻訳処理システム2000において、予測処理(機械翻訳実行処理)が実行される。
【0142】
以上のように、機械翻訳処理システム2000では、訓練用データ生成装置1Aにより、訓練用データ生成処理を行うことで、マークアップ言語用タグ(例えば、XMLタグ)を含まない対訳文(対訳データ)において、原文および訳文間で対応がとれている要素を検出し、検出した要素の前後に代替符号(プレースホルダー)に置換することで、マークアップ言語用タグ(例えば、XMLタグ)を挿入された対訳データと同等のデータを、簡単かつ多量に生成することができる。
【0143】
そして、機械翻訳処理システム2000の訓練用データ生成装置1Aにより、訓練用データ生成処理で取得された対訳データは、マークアップ言語用タグに相当する代替符号(プレースホルダー)を含んでいるので、訓練用データ生成装置1Aによる訓練用データ生成処理で取得された対訳データを、機械翻訳モデルの学習処理の訓練データとして用いることで、マークアップ言語用タグ(例えば、XMLタグ)付きの対訳文(対訳データ)を訓練データとして、機械翻訳モデルの学習処理を行ったときと同等の効果を奏することができる(同等の学習処理を行うことができる)。
【0144】
また、機械翻訳処理システム2000では、マークアップ言語用タグ(例えば、XMLタグ)を含む入力データに対して、マークアップ言語用タグを、訓練用データ生成時に使用したのと同様の代替符号(プレースホルダー)に置換し、代替符号が挿入された対訳データで最適化された機械翻訳モデルの学習済モデルを用いて、機械翻訳処理を実行するので、代替符号が挿入された状態を適切に維持しつつ適切な機械翻訳処理結果データを取得することができる。そして、機械翻訳処理システム2000では、代替符号が挿入された状態の機械翻訳処理結果データ(機械翻訳文)において、代替符号をXMLタグに置換する(元に戻す)ことで、XMLタグが適切な状態で挿入された機械翻訳処理結果データ(機械翻訳文)を取得することができる。
【0145】
このように、機械翻訳処理システム2000により、タグ付きの対訳文を大量に準備することなく、翻訳対象の原文にマークアップ言語用タグを含んだ原文を、マークアップ言語用タグの情報を保持しつつ、高精度に機械翻訳することが可能となる。
【0146】
[他の実施形態]
上記実施形態で説明した機械翻訳処理システム1000、2000の各機能部は、1つの装置(システム)により実現されてもよいし、複数の装置により実現されてもよい。
【0147】
また、上記実施形態の一部または全部を組み合わせるようにしてもよい。
【0148】
また、上記実施形態では、訓練用データ生成装置1、1A、および、機械翻訳処理装置2に、形態素解析処理がなされた対訳データまたは第1言語データが入力される場合について、説明したが、これに限定されることはなく、訓練用データ生成装置1、1A、および、機械翻訳処理装置2に、形態素解析処理がなされていない対訳データまたは第1言語データが入力されるものであってもよい。この場合、形態素解析部を、置換処理部12、12Aおよび順置換処理部22の前段に設けるようにしてもよい。そして、形態素解析部により、形態素に分離したデータ列(単語列、サブワード列)の対訳データ、あるいは、機械翻訳対象の言語のデータ(第1言語データ)を、訓練用データ生成装置1、1A、あるいは、機械翻訳処理装置2に入力するようにすればよい。
【0149】
また、上記実施形態において、第1言語データが日本語であり、第2言語データが英語である場合について説明したが、これに限定されることはなく、第1言語データ、および/または、第2言語データは、他の言語であってもよい。つまり、上記実施形態の機械翻訳処理システム1000、2000において、翻訳元言語および翻訳先言語は、任意の言語であってよい。
【0150】
また、第1言語データおよび第2言語データにおいて、共通に使用される開始終了対応符号が存在する場合、機械翻訳処理システム1000、2000において、当該開始終了対応符号を代替符号(プレースホルダー)に置換する置換処理を実行するようにしてもよい。
【0151】
また上記実施形態で説明した機械翻訳処理システム1000、2000において、各ブロックは、LSIなどの半導体装置により個別に1チップ化されても良いし、一部または全部を含むように1チップ化されても良い。
【0152】
なおここではLSIとしたが、集積度の違いにより、IC、システムLSI、スーパーLSI、ウルトラLSIと呼称されることもある。
【0153】
また集積回路化の手法はLSIに限るものではなく、専用回路または汎用プロセサで実現してもよい。LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサーを利用しても良い。
【0154】
また上記各実施形態の各機能ブロックの処理の一部または全部は、プログラムにより実現されるものであってもよい。そして上記各実施形態の各機能ブロックの処理の一部または全部は、コンピュータにおいて、中央演算装置(CPU)により行われる。また、それぞれの処理を行うためのプログラムは、ハードディスク、ROMなどの記憶装置に格納されており、ROMにおいて、あるいはRAMに読み出されて実行される。
【0155】
また上記実施形態の各処理をハードウェアにより実現してもよいし、ソフトウェア(OS(オペレーティングシステム)、ミドルウェア、あるいは所定のライブラリとともに実現される場合を含む。)により実現してもよい。さらにソフトウェアおよびハードウェアの混在処理により実現しても良い。
【0156】
例えば上記実施形態の各機能部をソフトウェアにより実現する場合、図9に示したハードウェア構成(例えばCPU、GPU、ROM、RAM、入力部、出力部、通信部、記憶部(例えば、HDD、SSD等により実現される記憶部)、外部メディア用ドライブ等をバスBusにより接続したハードウェア構成)を用いて各機能部をソフトウェア処理により実現するようにしてもよい。
【0157】
また上記実施形態の各機能部をソフトウェアにより実現する場合、当該ソフトウェアは、図9に示したハードウェア構成を有する単独のコンピュータを用いて実現されるものであってもよいし、複数のコンピュータを用いて分散処理により実現されるものであってもよい。
【0158】
また上記実施形態における処理方法の実行順序は、必ずしも上記実施形態の記載に制限されるものではなく、発明の要旨を逸脱しない範囲で、実行順序を入れ替えることができるものである。また、上記実施形態における処理方法において、発明の要旨を逸脱しない範囲で、一部のステップが、他のステップと並列に実行されるものであってもよい。
【0159】
前述した方法をコンピュータに実行させるコンピュータプログラム、及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体は、本発明の範囲に含まれる。ここでコンピュータ読み取り可能な記録媒体としては、例えば、フレキシブルディスク、ハードディスク、CD-ROM、MO、DVD、DVD-ROM、DVD-RAM、大容量DVD、次世代DVD、半導体メモリを挙げることができる。
【0160】
上記コンピュータプログラムは、上記記録媒体に記録されたものに限らず、電気通信回線、無線または有線通信回線、インターネットを代表とするネットワーク等を経由して伝送されるものであってもよい。
【0161】
なお本発明の具体的な構成は、前述の実施形態に限られるものではなく、発明の要旨を逸脱しない範囲で種々の変更および修正が可能である。
【符号の説明】
【0162】
1000、2000 機械翻訳処理システム
1、1A 訓練用データ生成装置
11 置換割合設定部11
12、12A 置換処理部
2 機械翻訳処理装置
22 順置換処理部
23 機械翻訳処理部
24 損失評価部
25 逆置換処理部

図1
図2
図3
図4
図5
図6
図7
図8
図9