(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-04-20
(45)【発行日】2022-04-28
(54)【発明の名称】文章変換システム、文章変換方法、及びプログラム
(51)【国際特許分類】
G06F 40/16 20200101AFI20220421BHJP
G06F 40/44 20200101ALI20220421BHJP
【FI】
G06F40/16
G06F40/44
(21)【出願番号】P 2019168458
(22)【出願日】2019-09-17
【審査請求日】2019-09-17
【審判番号】
【審判請求日】2020-11-26
(32)【優先日】2018-12-20
(33)【優先権主張国・地域又は機関】US
【新規性喪失の例外の表示】特許法第30条第2項適用 平成30年9月29日、NAIST SLP シンポジウム、奈良先端科学技術大学院大学 ミレニアムホール(奈良県生駒市高山町8916番地の5) 平成30年12月18日(開催期間:平成30年12月18日~平成30年12月21日)、IEEE Spoken Language Technology(SLT) conference 2018、ロイヤル オリンピック ホテル(ギリシャ共和国 アテネ市)
【早期審査対象出願】
(73)【特許権者】
【識別番号】399037405
【氏名又は名称】楽天グループ株式会社
(74)【代理人】
【識別番号】110000154
【氏名又は名称】特許業務法人はるか国際特許事務所
(72)【発明者】
【氏名】村上 浩司
(72)【発明者】
【氏名】ニオ ラスグイド
【合議体】
【審判長】渡邊 聡
【審判官】溝本 安展
【審判官】松田 直也
(56)【参考文献】
【文献】特開2018-028752(JP,A)
【文献】佐藤紗都、伍井啓恭、奥村 学,製品マニュアル文からの質問自動生成,一般社団法人 人工知能学会 第32回全国大会論文集DVD[DVD-ROM]2018年度 人工知能学会全国大会(第32回),日本,(一社)人工知能学会,2018年 6月 5日,pp.1-4
(58)【調査した分野】(Int.Cl.,DB名)
G06F 40/00-58
(57)【特許請求の範囲】
【請求項1】
第1の種類の文章と、当該文章が同一言語の第2の種類に変換された文章と、が関連付けられたデータを取得するデータ取得手段と、
前記データ
に格納された前記第1の種類の文章に含まれる単語又はフレーズと、前記データに格納された前記第2の種類の文章に含まれる単語又はフレーズと、の関係を示す変換モデルを作成する変換モデル作成手段と、
前記データに格納された前記第2の種類の文章において連続する単語同士又はフレーズ同士を示す言語モデルを作成する言語モデル作成手段と、
前記変換モデルと前記言語モデルを利用して同一言語の中で文章の種類を変換するための変換器を作成する
変換器作成手段と、
前記変換器に前記第1の種類の文章を入力する入力手段と、
前記変換器により同一言語の前記第2の種類に変換された文章を取得する文章取得手段と、
を含む文章変換システム。
【請求項2】
第1の種類の文章と、当該文章が同一言語の第2の種類に変換された文章と、が関連付けられたデータを取得するデータ取得手段と、
入力された文章に含まれる単語又はフレーズが順番に入力されることによって当該文章全体の特徴量を計算し、当該特徴量に基づいて当該文章の翻訳結果を出力する翻訳器を取得する翻訳器取得手段と、
前記データに格納された前記第1の種類の文章が入力された場合に前記データに格納された前記第2の種類の文章が出力されるように、前記翻訳器のパラメータを調整することによって、同一言語の中で文章の種類を変換するための変換器を作成する変換器作成手段と、
前記変換器に前記第1の種類の文章を入力する入力手段と、
前記変換器により同一言語の前記第2の種類に変換された文章を取得する文章取得手段と、
を含む文章変換システム。
【請求項3】
前記第2の種類は、複数の分類が存在し、
前記データ及び前記変換器の各々は、前記分類ごとに用意され、
前記データ取得手段は、前記複数の分類の各々の前記データを取得し、
前記
変換器作成手段は、前記分類ごとに、当該分類の前記データに基づいて、当該分類の前記変換器を作成し、
前記入力手段は、少なくとも1つの前記分類の変換器に、前記第1の種類の文章を入力し、
前記文章取得手段は、前記少なくとも1つの分類の変換器により、同一言語の当該分類に変換された文章を取得する、
請求項1
又は2に記載の文章変換システム。
【請求項4】
少なくとも1つの前記分類には、複数の小分類が存在し、
前記データ及び前記変換器の各々は、前記小分類ごとに用意され、
前記データ取得手段は、前記複数の小分類の各々の前記データを取得し、
前記
変換器作成手段は、前記小分類ごとに、当該小分類の前記データに基づいて、当該小分類の前記変換器を作成し、
前記入力手段は、少なくとも1つの前記小分類の変換器に、前記第1の種類の文章を入力し、
前記文章取得手段は、前記少なくとも1つの小分類の変換器により、同一言語の当該小分類に変換された文章を取得する、
請求項
3に記載の文章変換システム。
【請求項5】
前記第1の種類は、複数の分類が存在し、
前記データ及び前記変換器の各々は、前記分類ごとに用意され、
前記データ取得手段は、前記複数の分類の各々の前記データを取得し、
前記
変換器作成手段は、前記分類ごとに、当該分類の前記データに基づいて、当該分類の前記変換器を作成し、
前記入力手段は、少なくとも1つの前記分類の変換器に、当該分類の文章を入力する、
請求項1~
4の何れかに記載の文章変換システム。
【請求項6】
少なくとも1つの前記分類には、複数の小分類が存在し、
前記データ及び前記変換器の各々は、前記小分類ごとに用意され、
前記データ取得手段は、前記複数の小分類の各々の前記データを取得し、
前記
変換器作成手段は、前記小分類ごとに、当該小分類の前記データに基づいて、当該小分類の前記変換器を作成し、
前記入力手段は、少なくとも1つの前記小分類の変換器に、当該小分類の文章を入力する、
請求項
5に記載の文章変換システム。
【請求項7】
前記第1の種類の文章は、平叙文であり、
前記第2の種類の文章は、疑問文であり、
前記データには、平叙文と疑問文とが関連付けられており、
前記変換器は、平叙文を同一言語の疑問文に変換する、
請求項1~
6の何れかに記載の文章変換システム。
【請求項8】
前記入力手段は、アイテムの特徴を示す平叙文を前記変換器に入力し、
前記文章取得手段は、前記変換器により変換された、前記アイテムの特徴を問う疑問文を取得し、
前記文章変換システムは、前記入力された平叙文と、前記取得された疑問文と、に基づいて、前記アイテムのQ&A(Question and Answer)又はFAQ(Frequently Asked Questions)を生成する生成手段を更に含む、
請求項
7に記載の文章変換システム。
【請求項9】
コンピュータに、
第1の種類の文章と、当該文章が同一言語の第2の種類に変換された文章と、が関連付けられたデータを取得するデータ取得ステップと、
前記データ
に格納された前記第1の種類の文章に含まれる単語又はフレーズと、前記データに格納された前記第2の種類の文章に含まれる単語又はフレーズと、の関係を示す変換モデルを作成する変換モデル作成ステップと、
前記データに格納された前記第2の種類の文章において連続する単語同士又はフレーズ同士を示す言語モデルを作成する言語モデル作成ステップと、
前記変換モデルと前記言語モデルを利用して同一言語の中で文章の種類を変換するための変換器を作成する
変換器作成ステップと、
前記変換器に前記第1の種類の文章を入力する入力ステップと、
前記変換器により同一言語の前記第2の種類に変換された文章を取得する文章取得ステップと、
を
実行させる文章変換方法。
【請求項10】
コンピュータに、
第1の種類の文章と、当該文章が同一言語の第2の種類に変換された文章と、が関連付けられたデータを取得するデータ取得ステップと、
入力された文章に含まれる単語又はフレーズが順番に入力されることによって当該文章全体の特徴量を計算し、当該特徴量に基づいて当該文章の翻訳結果を出力する翻訳器を取得する翻訳器取得ステップと、
前記データに格納された前記第1の種類の文章が入力された場合に前記データに格納された前記第2の種類の文章が出力されるように、前記翻訳器のパラメータを調整することによって、同一言語の中で文章の種類を変換するための変換器を作成する変換器作成ステップと、
前記変換器に前記第1の種類の文章を入力する入力ステップと、
前記変換器により同一言語の前記第2の種類に変換された文章を取得する文章取得ステップと、
を実行させる文章変換方法。
【請求項11】
第1の種類の文章と、当該文章が同一言語の第2の種類に変換された文章と、が関連付けられたデータ
に格納された前記第1の種類の文章に含まれる単語又はフレーズと、前記データに格納された前記第2の種類の文章に含まれる単語又はフレーズと、の関係を示す変換モデルと、前記データに格納された前記第2の種類の文章において連続する単語同士又はフレーズ同士を示す言語モデルと、を利用して同一言語の中で文章の種類を変換するための変換器のプログラムであって、
前記第1の種類の文章が入力された場合に、同一言語の前記第2の種類に変換された文章を取得する文章取得手段、
としてコンピュータを機能させるためのプログラム。
【請求項12】
第1の種類の文章と、当該文章が同一言語の第2の種類に変換された文章と、が関連付けられたデータに格納された前記第1の種類の文章が入力された場合に前記データに格納された前記第2の種類の文章が出力されるように、入力された文章に含まれる単語又はフレーズが順番に入力されることによって当該文章全体の特徴量を計算して当該特徴量に基づいて当該文章の翻訳結果を出力する翻訳器のパラメータが調整されることによって作成された、同一言語の中で文章の種類を変換するための変換器のプログラムであって、
前記第1の種類の文章が入力された場合に、同一言語の前記第2の種類に変換された文章を取得する文章取得手段、
としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、文章変換システム、文章変換方法、及びプログラムに関する。
【背景技術】
【0002】
従来、自然言語分野において、ある種類の文章を別の種類の文章に変換する技術が検討されている。例えば、非特許文献1-4には、平叙文を疑問文に変換するためのルールを人間が手動で定めておき、ルールに当てはまる平叙文を、当該ルールに基づいて疑問文に変換する技術が記載されている。
【先行技術文献】
【非特許文献】
【0003】
【文献】R. Mitkov and L. A. Ha, “Computer-aided generation of multiplechoice tests,” in Proceedings of the HLT-NAACL 03 Workshop on Building Educational Applications Using Natural Language Processing. 2003, HLT-NAACL-EDUC ’03, pp. 17-22, Association for Computational Linguistics.
【文献】V. Rus, B. Wyse, P. Piwek, M. Lintean, S. Stoyanchev, and C. Moldovan, “The first question generation shared task evaluation challenge,” in Proceedings of the 6th International Natural Language Generation Conference. 2010, INLG ’10, pp. 251-257, Association for Computational Linguistics.
【文献】H. Kunichika, T. Katayama, T. Hirashima, and A. Takeuchi, “Automated question generation methods for intelligent english learning systems and its evaluation,” in Proceedings of the 11th International Conference on Computers in Education, 2003, ICCE ’03.
【文献】J. C. Brown, G. A. Frishkoff, and M. Eskenazi, “Automatic question generation for vocabulary assessment,” in Proceedings of the Conference on Human Language Technology and Empirical Methods in Natural Language Processing. 2005, HLT ’05, pp. 819-826, Association for Computational Linguistics.
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、非特許文献1-4の技術では、ルールに当てはまる平叙文については精度の高い疑問文に変換できるが、必ずしも平叙文がルールに当てはまるとは限らない。このため、ルールに当てはまらない平叙文が入力されると、疑問文に変換されず、目的の文を取得することができない。この点、多数のルールを用意すれば、一応は変換の精度を高めることはできるが、人間が手動でルールを定める必要があるので非常に手間がかかる。
【0005】
本発明は上記課題に鑑みてなされたものであって、その目的は、手間をかけずに、文章を変換する精度を高めることが可能な文章変換システム、文章変換方法、及びプログラムを提供することである。
【課題を解決するための手段】
【0006】
上記課題を解決するために、本発明に係る文章変換システムは、第1の種類の文章と、当該文章が同一言語の第2の種類に変換された文章と、が関連付けられたデータを取得するデータ取得手段と、前記データと、第1の言語を第2の言語に翻訳するための機械翻訳器と、に基づいて、同一言語の中で文章の種類を変換するための変換器を作成する作成手段と、前記変換器に前記第1の種類の文章を入力する入力手段と、前記変換器により同一言語の前記第2の種類に変換された文章を取得する文章取得手段と、を含む。
【0007】
本発明に係る文章変換方法は、第1の種類の文章と、当該文章が同一言語の第2の種類に変換された文章と、が関連付けられたデータを取得するデータ取得ステップと、前記データと、第1の言語を第2の言語に翻訳するための機械翻訳器と、に基づいて、同一言語の中で文章の種類を変換するための変換器を作成する作成ステップと、前記変換器に前記第1の種類の文章を入力する入力ステップと、前記変換器により同一言語の前記第2の種類に変換された文章を取得する文章取得ステップと、を含む。
【0008】
本発明に係るプログラムは、第1の種類の文章と、当該文章が同一言語の第2の種類に変換された文章と、が関連付けられたデータと、第1の言語を第2の言語に翻訳するための機械翻訳器と、に基づいて作成された、同一言語の中で文章の種類を変換するための変換器のプログラムであって、前記第1の種類の文章が入力された場合に、同一言語の前記第2の種類に変換された文章を取得する文章取得手段、としてコンピュータを機能させる。
【0009】
また、本発明の一態様では、前記作成手段は、統計的機械翻訳方式の前記機械翻訳器に基づいて、前記変換器を作成する。
【0010】
また、本発明の一態様では、前記作成手段は、ニューラル機械翻訳方式の前記機械翻訳器に基づいて、前記変換器を作成する。
【0011】
また、本発明の一態様では、前記第2の種類は、複数の分類が存在し、前記データ及び前記変換器の各々は、前記分類ごとに用意され、前記データ取得手段は、前記複数の分類の各々の前記データを取得し、前記作成手段は、前記分類ごとに、当該分類の前記データに基づいて、当該分類の前記変換器を作成し、前記入力手段は、少なくとも1つの前記分類の変換器に、前記第1の種類の文章を入力し、前記文章取得手段は、前記少なくとも1つの分類の変換器により、同一言語の当該分類に変換された文章を取得する。
【0012】
また、本発明の一態様では、少なくとも1つの前記分類には、複数の小分類が存在し、前記データ及び前記変換器の各々は、前記小分類ごとに用意され、前記データ取得手段は、前記複数の小分類の各々の前記データを取得し、前記作成手段は、前記小分類ごとに、当該小分類の前記データに基づいて、当該小分類の前記変換器を作成し、前記入力手段は、少なくとも1つの前記小分類の変換器に、前記第1の種類の文章を入力し、前記文章取得手段は、前記少なくとも1つの小分類の変換器により、同一言語の当該小分類に変換された文章を取得する。
【0013】
また、本発明の一態様では、前記第1の種類は、複数の分類が存在し、前記データ及び前記変換器の各々は、前記分類ごとに用意され、前記データ取得手段は、前記複数の分類の各々の前記データを取得し、前記作成手段は、前記分類ごとに、当該分類の前記データに基づいて、当該分類の前記変換器を作成し、前記入力手段は、少なくとも1つの前記分類の変換器に、当該分類の文章を入力する。
【0014】
また、本発明の一態様では、少なくとも1つの前記分類には、複数の小分類が存在し、前記データ及び前記変換器の各々は、前記小分類ごとに用意され、前記データ取得手段は、前記複数の小分類の各々の前記データを取得し、前記作成手段は、前記小分類ごとに、当該小分類の前記データに基づいて、当該小分類の前記変換器を作成し、前記入力手段は、少なくとも1つの前記小分類の変換器に、当該小分類の文章を入力する。
【0015】
また、本発明の一態様では、前記第1の種類の文章は、平叙文であり、前記第2の種類の文章は、疑問文であり、前記データには、平叙文と疑問文とが関連付けられており、前記変換器は、平叙文を同一言語の疑問文に変換する。
【0016】
また、本発明の一態様では、前記入力手段は、アイテムの特徴を示す平叙文を前記変換器に入力し、前記文章取得手段は、前記変換器により変換された、前記アイテムの特徴を問う疑問文を取得し、前記文章変換システムは、前記入力された平叙文と、前記取得された疑問文と、に基づいて、前記アイテムのQ&A(Question and Answer)又はFAQ(Frequently Asked Questions)を生成する生成手段を更に含む。
【発明の効果】
【0017】
本発明によれば、手間をかけずに、文章を変換する精度を高めることができる。
【図面の簡単な説明】
【0018】
【
図1】文章変換システムの全体構成を示す図である。
【
図2】文章変換システムで実現される機能の一例を示す機能ブロック図である。
【
図3】YN形式の関連付けデータの一例を示す図である。
【
図4】WH形式の関連付けデータの一例を示す図である。
【
図5】統計的機械翻訳方式の仕組みを説明する図である。
【
図6】ニューラル機械翻訳方式の仕組みを説明する図である。
【
図7】サーバによって実行される処理を示すフロー図である。
【発明を実施するための形態】
【0019】
[1.文章変換システムのハードウェア構成]
以下、本発明に関わる文章変換システムの実施形態の例を説明する。
図1は、文章変換システムの全体構成を示す図である。
図1に示すように、文章変換システムSは、サーバ10、ユーザ端末20、及び管理者端末30を含み、これらはネットワークNに接続される。なお、
図1では、サーバ10、ユーザ端末20、及び管理者端末30を1台ずつ示しているが、これらは複数台あってもよい。
【0020】
サーバ10は、サーバコンピュータであり、例えば、制御部11、記憶部12、及び通信部13を含む。制御部11は、少なくとも1つのプロセッサを含む。制御部11は、記憶部12に記憶されたプログラムやデータに従って処理を実行する。記憶部12は、主記憶部及び補助記憶部を含む。例えば、主記憶部はRAMなどの揮発性メモリであり、補助記憶部は、ハードディスクやフラッシュメモリなどの不揮発性メモリである。通信部13は、有線通信又は無線通信用の通信インタフェースを含み、例えば、ネットワークNを介してデータ通信を行う。
【0021】
ユーザ端末20は、ユーザが操作するコンピュータであり、例えば、パーソナルコンピュータ、携帯情報端末(タブレット型コンピュータを含む)、又は携帯電話機(スマートフォンを含む)等である。ユーザ端末20は、制御部21、記憶部22、通信部23、操作部24、及び表示部25を含む。制御部21、記憶部22、及び通信部23のハードウェア構成は、それぞれ制御部11、記憶部12、及び通信部13と同様であってよい。操作部24は、ユーザが操作を行うための入力デバイスであり、例えば、タッチパネルやマウス等のポインティングデバイスやキーボード等である。操作部24は、ユーザの操作内容を制御部21に伝達する。表示部25は、例えば、液晶表示部又は有機EL表示部等である。
【0022】
管理者端末30は、管理者が操作するコンピュータであり、例えば、パーソナルコンピュータ、携帯情報端末、又は携帯電話機等である。管理者端末30は、制御部31、記憶部32、通信部33、操作部34、及び表示部35を含む。記憶部32、通信部33、操作部34、及び表示部35のハードウェア構成は、それぞれ制御部11、記憶部12、通信部13、操作部24、及び表示部25と同様であってよい。
【0023】
なお、記憶部12,22,32に記憶されるものとして説明するプログラム及びデータは、ネットワークを介してこれらに供給されるようにしてもよい。また、サーバ10、ユーザ端末20、及び管理者端末30のハードウェア構成は、上記の例に限られず、種々のハードウェアを適用可能である。例えば、サーバ10、ユーザ端末20、及び管理者端末30の各々は、コンピュータ読み取り可能な情報記憶媒体を読み取る読取部(例えば、光ディスクドライブやメモリカードスロット)や外部機器と直接的に接続するための入出力部(例えば、USB端子)を含んでもよい。この場合、情報記憶媒体に記憶されたプログラムやデータが読取部又は入出力部を介して、サーバ10、ユーザ端末20、及び管理者端末30の各々に供給されるようにしてもよい。
【0024】
[2.文章変換システムSの概要]
文章変換システムSは、Q&A(Question and Answer)又はFAQ(Frequently Asked Questions)の作成、試験問題作成、又はチャットボットでの利用等の種々の目的のために、同一言語の中で文章の種類を変換するための変換器を作成し、当該作成された変換器に基づいて、第1の種類の文章を同一言語の第2の種類の文章に変換する。
【0025】
同一言語とは、言語の種類が同じことである。別の言い方をすれば、同一言語とは、変換前の文章の言語と、変換後の文章の言語と、が同じことである。文章変換システムSは、地球上に存在する任意の言語の文章を変換可能であり、例えば、英語、日本語、中国語、韓国語、ヒンディー語、スペイン語、又はアラビア語の文章を変換可能である。また例えば、言語は、現在使用されている言語に限られず、現在では使用されていない古典的な言語であってもよい。
【0026】
文章の種類とは、文章の記載形式であり、例えば、平叙文、疑問文、感嘆文、又は命令文といった複数の種類が存在する。本実施形態では、主に、平叙文と疑問文について説明するが、後述する変形例のように、感嘆文又は命令文といった他の種類の文章についても適用可能である。
【0027】
平叙文とは、事実を述べる形の文章である。平叙文は、肯定文であってもよいし、否定文であってもよい。例えば、英語の平叙文は、主語が冒頭に記載され、主語の直後又は1~2語挟んだ後に述語(動詞)が記載される。また例えば、日本語の平叙文は、主語が冒頭に記載され、述語が文章の末尾に記載される。なお、日本語の場合には、主語が省略されることもあり、この点は、他の種類の文章についても同様である。
【0028】
疑問文とは、相手に答えを問う形の文章であり、質問形式の文章である。疑問文は、複数の分類が存在する。分類とは、文章の種類の中での細かな種類であり、疑問文の場合には、YN疑問文、WH疑問文、選択疑問文、付加疑問文、及び間接疑問文といった分類に分けることができる。本実施形態では、主に、YN疑問文とWH疑問文について説明するが、他の分類の疑問文であってもよい。
【0029】
例えば、英語のYN疑問文は、平叙文における主語と述語が入れ替えられたり、Doなどの助動詞が冒頭に記載されたりする。また例えば、英語のWH疑問文は、What、Which、Why、WhereなどのWh語又はHowなどの語が冒頭に記載されたりする。また例えば、日本語のYN疑問文は、疑問文であることを示す終助詞が文末に記載される。また例えば、日本語のWH疑問文は、英語のWH語やHowなどに相当する日本語が冒頭などに記載される。また例えば、YN疑問文とWH疑問文は、ともに文末に「?」などの疑問符が記載される。
【0030】
第1の種類とは、上記説明した複数の種類のうちの何れかである。別の言い方をすれば、第1の種類は、変換前の文章の種類、又は、変換器に入力される文章の種類ということもできる。第2の種類とは、上記説明した複数の種類のうち、第1の種類以外の種類である。別の言い方をすれば、第2の種類は、変換後の文章の種類、又は、変換器から出力される文章の種類ということもできる。例えば、第1の種類は、平叙文、疑問文、感嘆文、又は命令文の何れかであり、第2の種類は、平叙文、疑問文、感嘆文、及び命令文のうちの第1の種類ではない種類である。
【0031】
変換器とは、文章の種類を変換するためのプログラム(アプリケーション)である。別の言い方をすれば、変換器とは、文章の種類の変換方法が定義されたアルゴリズムである。変換器は、いわゆる機械学習で用いられるモデルが利用されてもよいし、特に機械学習とは関係のないモデルが利用されてもよい。なお、機械学習は、任意の手法を適用可能であり、例えば、再帰型ニューラルネットワーク又は畳み込みニューラルネットワークを適用可能である。
【0032】
本実施形態では、言語の一例として英語を説明する。また、第1の種類の文章の一例として平叙文を説明し、第2の種類の文章の一例として疑問文を説明する。このため、本実施形態では、文章変換システムSが英語の平叙文を英語の疑問文に変換する場合の処理を説明する。
【0033】
従来技術で説明したように、平叙文を疑問文に変換するルールを人間が手動で定める方式(以降、ルールベース方式という)では、人間が手動で多数のルールを定める必要があるので、非常に手間がかかっていた。そこで、文章変換システムSは、機械翻訳器の仕組みを利用して、平叙文を同一言語の疑問文に変換する変換器を作成し、当該変換器を利用して、平叙文を疑問文に変換する精度を高めるようにしている。
【0034】
機械翻訳器とは、ある言語の文章を別の言語に翻訳するためのプログラム(アプリケーション)である。別の言い方をすれば、機械翻訳器とは、文章の翻訳方法が定義されたアルゴリズムである。機械翻訳器は、任意の方式を適用可能であるが、本実施形態では、人間が手動で翻訳知識をルール化するルールベース方式ではなく、多数の文章をデータ化した言語資料であるコーパスを利用するコーパスベース方式を利用する場合を説明する。
【0035】
ルールベース方式では、文脈などの翻訳知識が人手で作成されるが、コーパスベース方式では、大量の翻訳文から翻訳知識が自動取得される。コーパスベース方式は、統計的機械翻訳方式、ニューラル機械翻訳方式、及び用例翻訳方式といった方式が存在し、これらの任意の方式を適用可能である。本実施形態では、統計的機械翻訳方式及びニューラル機械翻訳方式が利用される場合を説明する。これらの方式の詳細については、後述する。
【0036】
機械翻訳器は、異なる言語間の見た目や文法の違いを吸収する仕組みを有するので、文章変換システムSは、この仕組みを同一言語内での文章の変換に利用することで、平叙文と疑問文の間の見た目や文法の違いを吸収するようにしている。これにより、ルールベース方式のように人間が手動で多数のルールを定めておく必要がなくなるので、手間をかけずに、平叙文を疑問文に変換する精度を高めることを可能としている。以降、文章変換システムSが有する構成の詳細を説明する。
【0037】
[3.本実施形態において実現される機能]
図2は、文章変換システムSで実現される機能の一例を示す機能ブロック図である。
図2に示すように、本実施形態では、データ記憶部100、データ取得部101、作成部102、入力部103、文章取得部104、及び生成部105が、サーバ10で実現される。データ記憶部100は、記憶部12を主として実現され、データ取得部101、作成部102、入力部103、文章取得部104、及び生成部105の各々は、制御部11を主として実現される。
【0038】
[3-1.データ記憶部]
データ記憶部100は、同一言語の中で文章の種類を変換するために必要なデータを記憶する。例えば、データ記憶部100は、平叙文と疑問文とが関連付けられた関連付けデータDと、変換器Cと、を記憶する。関連付けデータDに格納される平叙文と疑問文は、人間によって入力される。平叙文を入力した人間と、疑問文を入力した人間と、は同じであってもよいし異なっていてもよい。本実施形態では、関連付けデータDに格納される平叙文がユーザによって入力され、関連付けデータDに格納される疑問文が管理者によって入力される場合を例に挙げる。
【0039】
平叙文と疑問文は、任意の内容であってよく、文章変換システムSの用途に応じて定めればよい。本実施形態では、平叙文と疑問文が、商品やサービスなどのアイテムに関する内容である場合を例に挙げて説明する。商品は、任意の商品であってよく、例えば、食料品・日用雑貨などのように有体物であってもよいし、楽曲・動画・アプリケーションなどのように無体物であってもよい。サービスは、任意のサービスであってよく、例えば、宿泊施設の提供サービス、レストランにおける飲食物の提供サービス、保険サービス、又は金融サービスであってもよい。
【0040】
例えば、関連付けデータDに格納された平叙文は、アイテムのレビューである。レビューは、アイテムの感想文であり、例えば、ユーザ端末20を操作するユーザによって入力される。例えば、ユーザは、アイテムを購入又は予約した後にレビューを入力する。ユーザがユーザ端末20を操作してレビューを入力すると、関連付けデータDに平叙文として格納される。なお、平叙文は、レビューに限られず、アイテムの説明文などであってもよい。
【0041】
また例えば、関連付けデータDに格納された疑問文は、アイテムに関する内容を問いかける質問文である。例えば、疑問文は、管理者端末30を操作する管理者によって入力される。例えば、管理者は、平叙文であるレビューを参照し、当該レビューを回答として得るための疑問文を入力する。即ち、管理者が入力した疑問文に対し、ユーザが回答としてレビューを入力するような疑問文を入力する。
【0042】
関連付けデータDは、1つに纏められていてもよいが、先述したように、疑問文は、YN疑問文及びWH疑問文といった複数の分類を有するので、本実施形態では、疑問文の分類ごとに、関連付けデータDが用意されている。以降の説明では、YN疑問文用の関連付けデータDに「DYN」の符号を付し、WH疑問文用の関連付けデータDに「DWH」の符号を付して説明し、これらを特に区別する必要がないときは、単に「D」の符号を付して説明する。
【0043】
図3は、YN形式の関連付けデータD
YNの一例を示す図である。
図3に示すように、関連付けデータD
YNには、平叙文と、当該平叙文が同一言語のYN形式に変換された疑問文と、が関連付けられている。この疑問文は、平叙文をYN形式の回答として得るための疑問文である。本実施形態では、アイテムのレビューが平叙文として格納されるので、管理者は、ユーザが入力したレビューの主語と述語を入れ替えたり、冒頭にDo又はDoesなどの単語を記述したりすることによって、YN形式の質問文を入力する。
【0044】
図4は、WH形式の関連付けデータD
WHの一例を示す図である。
図4に示すように、関連付けデータD
WHには、平叙文と、当該平叙文が同一言語のWH形式に変換された疑問文と、が関連付けられている。この疑問文は、平叙文をWH形式の回答として得るための疑問文である。本実施形態では、アイテムのレビューが平叙文として格納されるので、管理者は、ユーザが入力したレビューの主語と述語を入れ替えたうえで、冒頭にWH語又はHowなどの単語を記載することによって、WH形式の質問文を入力する。
【0045】
なお、YN形式の関連付けデータDYNと、WH形式の関連付けデータDWHと、が別々に分かれている場合を説明するが、これらは一体化されていてもよい。この場合には、各レコードに格納された疑問文がYN形式又はWH形式の何れであるかを識別する情報が格納されていてもよい。
【0046】
データ記憶部100は、上記説明した関連付けデータDに基づいて作成された変換器Cを記憶する。詳細は後述するが、変換器Cは、作成部102によってモデルが構築されたりパラメータが調整されたりすることによって作成されるので、データ記憶部100には、モデル構築後又はパラメータ調整後の変換器Cが記憶される。
【0047】
詳細は後述するが、本実施形態では、疑問文の分類ごとに、変換器Cが用意されている。更に、変換器Cは、統計的機械翻訳方式を利用したものと、ニューラル機械翻訳方式を利用したものと、が用意されている。以降の説明では、YN疑問文用の統計的機械翻訳方式の変換器Cに「CSYN」の符号を付し、WH疑問文用の統計的機械翻訳方式の変換器Cに「CSWH」の符号を付して説明する。また、YN疑問文用のニューラル機械翻訳方式の変換器Cに「CNYN」の符号を付し、WH疑問文用のニューラル機械翻訳方式の変換器Cに「CNWH」の符号を付して説明する。これらを特に区別する必要がないときは、単に「C」の符号を付して説明する。
【0048】
なお、データ記憶部100に記憶されるデータは、上記の例に限られない。データ記憶部100は、同一言語の中で文章の種類を変換するために必要なデータを記憶すればよい。例えば、データ記憶部100は、モデル構築前又はパラメータ調整前の機械翻訳器を記憶してもよい。
【0049】
[3-2.データ取得部]
データ取得部101は、第1の種類の文章と、当該文章が同一言語の第2の種類に変換された文章と、が関連付けられた関連付けデータDを取得する。本実施形態では、平叙文が第1の種類の文章に相当し、疑問文が第2の種類の文章に相当するので、
図3及び
図4に示すように、関連付けデータDには、平叙文と疑問文とが関連付けられている。
【0050】
本実施形態では、関連付けデータDがデータ記憶部100に記憶されているので、データ取得部101は、データ記憶部100に記憶された関連付けデータDを取得する。関連付けデータDは、サーバ10以外の外部コンピュータ又は外部情報記憶媒体に記憶されていてもよい。この場合には、データ取得部101は、外部コンピュータ又は外部情報記憶媒体に記憶された関連付けデータDを取得する。
【0051】
本実施形態では、疑問文が複数の分類を有し、分類ごとに関連付けデータDが用意されているので、データ取得部101は、複数の分類の各々の関連付けデータDを取得する。データ取得部101は、変換器Cが作成される場合に関連付けデータDを取得するので、作成対象となる変換器Cの分類に応じた関連付けデータDを取得する。例えば、作成部102がYN疑問文の変換器Cを作成する場合には、データ取得部101は、YN疑問文の関連付けデータDYNを取得し、作成部102がWH疑問文の変換器Cを作成する場合には、データ取得部101は、WH疑問文の関連付けデータDWHを取得する。
【0052】
[3-3.作成部]
作成部102は、関連付けデータDと、第1の言語を第2の言語に翻訳するための機械翻訳器と、に基づいて、同一言語の中で文章の種類を変換するための変換器Cを作成する。第1の言語は、翻訳前の言語であり、機械翻訳器に入力される言語である。第2の言語は、翻訳後の言語であり、機械翻訳器から出力される言語である。
【0053】
本実施形態では、自然な疑問文を出力するために、下記数式1の値を高めることを目指すことを目的とする。数式1の値は、変換器Cの精度を示す指標といえる。なお、下記数式1は一例であり、変換器Cの精度は他の任意の指標で評価されてよく、他の指標を向上させることを目指してもよい。
【0054】
【0055】
数式1のcは、変換器Cに入力される文章であり、本実施形態では、変換器Cに入力される平叙文である。数式1のqは、変換器Cから出力される文章であり、本実施形態では、変換器Cから出力される疑問文である。入力(平叙文)と出力(疑問文)は、任意の長さの文字列であってよい。平叙文及び疑問文は、文字列の並びにより構成されるので、平叙文cは、文字列の並び[c1,・・・,c|c|]と記載することができ、出力される疑問文であるqは、文字列の並び[q1,・・・,q|q|]と記載することができる。
【0056】
数式1の右辺のP(q|c)は、平叙文cが入力された場合に出力される疑問文qの条件付き確率であり、この値が高いほど疑問文の精度が高くなる。このため、数式1は、P(q|c)を最大にするqを出力するような変換器Cを作成することが本実施形態の目的であることを意味する。
【0057】
作成部102は、機械翻訳器と同じ仕組みが用いられる変換器Cを作成する。変換器Cを作成するとは、変換器Cのプログラムコードを1から記述するのではなく、機械翻訳器のプログラムコードを流用して(機械翻訳器のプログラムコードは変えずに)、平叙文を疑問文に変換するためのモデル構築又はパラメータ調整をすることである。別の言い方をすれば、機械翻訳器のモデル構築方法又はパラメータ調整方法を流用して、変換器Cのモデル構築又はパラメータを調整することが、変換器Cを作成することに相当する。
【0058】
モデルの構築方法又はパラメータの調整方法は、変換器Cと機械翻訳器とで同じである。ただし、モデル構築又はパラメータ調整のために参照されるデータは、変換器Cと機械翻訳器とで異なる。下記に説明するように、機械翻訳器は、第1の言語の文章と第2の言語の文章とが関連付けられた対訳文データに基づいて、モデルの構築又はパラメータの調整が行われるが、変換器Cは、関連付けデータDに基づいてモデルの構築又はパラメータの調整が行われる。
【0059】
先述したように、機械翻訳器は、任意の機械翻訳器を適用可能であるが、本実施形態では、統計的機械翻訳方式を利用した変換器Cと、ニューラル機械翻訳方式を利用した変換器Cと、について説明する。
【0060】
[統計的機械翻訳方式を利用した変換器]
まず、統計的機械翻訳方式を利用した変換器Cについて説明する。統計的機械翻訳方式は、第1の言語の文章と、当該文章が第2の言語に翻訳された文章と、が関連付けられた対訳文データを統計的に分析することによって、機械翻訳のモデルを作成する方式である。統計的機械翻訳方式では、入力された文章が複数の要素に分割され、要素ごとに翻訳が実行される。要素は、翻訳の単位であり、少なくとも1つの単語を含む。
【0061】
統計的機械翻訳方式では、個々の単語が要素になるモデルも存在するが、このモデルは文脈の情報を活用しにくいことがあるので、本実施形態では、文脈の情報を活用しやすいように、フレーズを要素とするモデルを例に挙げる。フレーズは、少なくとも1つの単語のまとまりである。全てのフレーズに複数の単語が含まれている必要はなく、1つの単語だけがフレーズに含まれることがあってもよい。フレーズに含まれる単語数は、任意の数であってよいが、あまり長すぎると統計が取れない可能性がある(長すぎるフレーズは複数回出現しない)ので、本実施形態では1語~5語程度とする。
【0062】
図5は、統計的機械翻訳方式の仕組みを説明する図である。
図5に示すように、統計的機械翻訳方式の機械翻訳器では、対訳文データD1を利用してモデルを構築するモデル構築処理と、構築されたモデルを利用して文章を翻訳する翻訳処理と、が実行される。これらの処理は、機械翻訳器のプログラムに基づいて実行される。即ち、下記に説明する処理は、機械翻訳器のプログラムコードに定義されている。この点は、作成部102により作成される変換器Cも同様であり、変換器Cの処理は、プログラムコードに定義されている。
【0063】
対訳文データD1には、機械翻訳器における入力と出力の組み合わせが定義されている。別の言い方をすれば、対訳文データD1には、入力に対する正解の出力が定義されている。入力は、翻訳前の第1の言語の文章であり、出力は、翻訳後の第2の言語の文章である。対訳文データD1は、教師データ又は訓練データと呼ばれることもあり、原則として人間が手動で作成する。
【0064】
なお、第1の言語と第2の言語の組み合わせは、任意の組み合わせであってよく、本実施形態では、第1の言語が日本語であり、第2の言語が英語である場合を例に挙げて説明する。即ち、日本語の文章を英語の文章に翻訳するための機械翻訳器について説明する。
図5に示すように、対訳文データD1には、日本語の文章と、当該文章が英語に翻訳された文章と、が関連付けられている。
図5では、簡略化のためにこれらの組み合わせを1つだけ示しているが、実際には、多数の組み合わせが対訳文データD1に格納されている。
【0065】
モデル構築処理では、対訳文データD1に格納された日本語の文章と英語の文章の各々がフレーズに分割され、日本語のフレーズと英語のフレーズの対応関係が推定される。フレーズの分割方法自体は、種々の手法を適用可能であり、例えば、文章を所定数の単語で区切ったり文節で区切ったりすることでフレーズに分割されてもよいし、構文解析をすることでフレーズに分割されてもよい。対応関係の推定も、種々の手法を適用可能であり、例えば、人間が手動で対応関係を推定して入力してもよいし、単語の出現頻度などの統計情報を用いて自動的に行われてもよい。
【0066】
次に、上記推定された対応関係に基づいて、日本語のフレーズと英語のフレーズとの関係を示す翻訳モデルM1が生成される。
図6の例では、翻訳モデルM1には、日本語のフレーズ、それに対応する英語のフレーズ、及び蓋然性が格納される。ここでの蓋然性は、フレーズ同士が対応している確率であり、例えば、対訳文データD1中の出現頻度から算出される。ここでの出現頻度は、日本語のフレーズと、それに対応する英語のフレーズと、の組み合わせが対訳文データD1に出現する回数である。出現頻度が高いほど、フレーズの組み合わせが多いことを意味するので、フレーズ同士が対応している蓋然性が高くなる。
【0067】
最後に、対訳文データD1のうちの英語の文章だけを示す訳語データD2が取得される。そして、訳語データD2に基づいて、連続しやすいフレーズ同士を示す言語モデルM2が生成される。
図6の例では、言語モデルM2には、フレーズ同士が連続する蓋然性が格納される。ここでの蓋然性は、あるフレーズの次に別のフレーズが続く確率であり、例えば、訳語データD2中の出現頻度から算出される。ここでの出現頻度は、あるフレーズの次に、対応するフレーズが続いた回数である。出現頻度が高いほど、あるフレーズの次に、対応するフレーズが続く蓋然性が高くなる。以上により、モデル構築処理が終了する。
【0068】
次に、翻訳処理について説明する。翻訳処理では、モデル構築処理により構築された翻訳モデルM1と言語モデルM2に基づいて、日本語の文章が英語の文章に翻訳される。例えば、機械翻訳器に日本語の文章が入力されると、当該文章がフレーズに分割され、翻訳モデルM1に基づいて、当該日本語のフレーズに対応する英語のフレーズが探索される。英語のフレーズは、翻訳モデルM1に格納されたフレーズのうち、日本語のフレーズに対応するものが全て探索されてもよいし、蓋然性が閾値以上のものだけが探索されてもよい。
【0069】
次に、上記のように探索された英語のフレーズを並べて繋ぎ合わせた文章ごとに、翻訳モデルM1に格納された蓋然性と、言語モデルM2に格納された蓋然性と、に基づいて、当該文章のスコアが計算される。スコアは、翻訳の精度を示す数値であり、これらの蓋然性が所定の数式に代入されることで計算される。蓋然性が高いフレーズの組み合わせをなるべく多く含む文章は、スコアが高くなる。
【0070】
スコアが高い文章は、統計的に出現回数の高いフレーズの組み合わせによって文章が構成されていることを意味するので、人間が手動で翻訳した文章に近いため精度が高い。即ち、文章のスコアが高いほど、使用されているフレーズの出現頻度が高いので、尤もらしい文章になる。英語のフレーズの組み合わせは多数存在することがあるので、これらの組み合わせの中から、スコアが最大となり、日本語の文章と過不足なく一致するフレーズの組み合わせが探索され、これらのフレーズを繋ぎ合わせた文章が出力され、翻訳処理は終了する。
【0071】
上記のように、統計的機械翻訳方式の機械翻訳器では、対訳文データD1及び訳語データD2に基づいて、翻訳モデルM1及び言語モデルM2が構築される。そして、機械翻訳器に入力された日本語の文章が複数のフレーズに分割され、個々のフレーズを要素として英語のフレーズに翻訳され、スコアが最大となり過不足がないようなフレーズの組み合わせが英語の文章として出力される。
【0072】
例えば、作成部102は、上記説明した統計的機械翻訳方式の機械翻訳器に基づいて、変換器Cを作成する。統計的機械翻訳方式を利用した変換器Cでは、入力された文章が複数の要素に分割され、要素ごとに変換が実行され、スコアが最大となり過不足がないようなフレーズの組み合わせが、変換後の文章として出力される。ここでの要素は、変換の単位であり、少なくとも1つの単語を含む。先述したように、本実施形態では、個々の単語を要素とするのではなく、フレーズを要素とするモデルについて説明する。
【0073】
作成部102は、対訳文データD1及び訳語データD2の代わりに、関連付けデータDを使用してモデルを構築する。作成部102は、翻訳モデルM1の代わりに、関連付けデータDに格納された平叙文の文章に含まれるフレーズと、関連付けデータDに格納された疑問文の文章に含まれるフレーズと、の関係を示す変換モデルを作成する。
【0074】
例えば、作成部102は、関連付けデータDに格納された平叙文と疑問文の各々をフレーズに分割し、平叙文のフレーズと疑問文のフレーズの対応関係を推定される。フレーズの分割方法及び対応関係の推定方法は、先述した通りであり、人間が手動で対応関係を推定して対応関係を入力したり、単語の出現頻度などの統計情報を用いて自動的に対応関係が推定されたりする。
【0075】
作成部102は、上記推定された対応関係に基づいて、平叙文に含まれるフレーズと、疑問文に含まれるフレーズと、の関係を示す変換モデルを生成する。変換モデルの生成方法は、翻訳モデルM1の生成方法と同様であり、推定されたフレーズ同士が関連付けられ、関連付けデータD内の出現頻度に基づいて蓋然性が計算される。
【0076】
そして、作成部102は、言語モデルM2の代わりに、関連付けデータDに基づいて、連続しやすいフレーズ同士を示す言語モデルを作成する。例えば、作成部102は、関連付けデータDから疑問文を抽出し、連続しやすいフレーズ同士を示す言語モデルを作成する。言語モデルの作成方法は、言語モデルM2の作成方法と同様であり、複数のフレーズが連続する蓋然性が計算されて言語モデルに格納される。作成部102は、以上説明した処理により、変換器Cの変換モデル及び言語モデルを作成してデータ記憶部100に記録し、変換器Cの作成を完了する。変換モデル及び言語モデルは、変換器Cのデータと一体化してデータ記憶部100に記録されてもよいし、変換器Cとは別データであり、変換器Cが参照可能なようにデータ記憶部100に記録されてもよい。
【0077】
なお、
図5で説明した翻訳処理は、後述する入力部103及び文章取得部104の処理に相当するので、この点については後述する。また、変換器Cを作成するための統計的機械翻訳方式は、上記の例に限られない。統計的機械翻訳方式自体は、他の手法を適用してもよく、例えば、Statistical Phrase-Based Translation(http://www.aclweb.org/anthology/N03-1017)又はPhrase-Based Statistical Machine Translation(https://pdfs.semanticscholar.org/223d/cd0e44532fc02444709e61327432c74fe46d.pdf)などの論文に記載された手法を適用してもよい。
【0078】
上記説明した統計的機械翻訳方式を利用する手法は、数式を使って説明すると、下記のようになる。例えば、統計的機械翻訳方式では、いわゆる「雑音のある通信路モデル」に基づいて、平叙文と疑問文の組み合わせを機械翻訳器における対訳文として扱ってもよく、ベイズルールを利用して、数式1を下記数式2のように再定義してもよい。統計的機械翻訳方式では、下記数式2を高めることを目指すことになる。
【0079】
【0080】
数式2の右辺のP(c|q)は、変換モデル(機械翻訳器における翻訳モデル)の条件付き確率分布であり、PLM(q)は言語モデルの確率分布である。数式2は、変換器が出力する疑問文のスコアを高めることを目指すことを意味し、例えば、先述した変換モデルに格納される蓋然性と言語モデルに格納される蓋然性とに基づくスコアが最大になるように、疑問文を出力することを目指すことを意味する。より具体的には、変換モデルは、下記数式3のように定義される。
【0081】
【0082】
数式3のci
I(オーバーラインを省略する)は、関連付けデータDに格納された平叙文cから分解された個々のフレーズであり、qi
I(オーバーラインを省略する)は、関連付けデータDに格納された疑問文qから分解された個々のフレーズである。これらは、先述した手法により、フレーズci
Iとフレーズqi
Iは、対応関係が推定される。数式3の右辺のφ(ci|qi)(オーバーラインを省略する)は、フレーズci
Iとフレーズqi
Iの条件付き確率であり、先述したスコアと同じ意味である。数式3の右辺のstartiは、出力側の質問文のi番目のフレーズに対応する入力側の平叙文のフレーズの最初のまとまりであり、endi-1は、出力側の質問文のi-1番目のフレーズに対応する入力側の平叙文のフレーズの最後のまとまりである。d(starti-endi-1)は、これらの相対的歪み確率分布である。数式3は、関連付けデータDにおいて、フレーズci
Iとフレーズqi
Iの組み合わせが多いほど、数式3の値は高くなる。
【0083】
[ニューラル機械翻訳方式を利用した変換器]
次に、ニューラル機械翻訳方式を利用した変換器Cについて説明する。ニューラル機械翻訳方式は、機械学習の一種である再帰型ニューラルネットワーク又は畳み込みニューラルネットワークを利用した機械翻訳方式である。統計的機械翻訳方式が単語又はフレーズごとに翻訳するのに対し、ニューラル機械翻訳方式は文章全体に対して翻訳が実行される。
【0084】
ニューラル機械翻訳方式においても、統計的機械翻訳方式と同様、事前にモデルを構築するモデル構築処理と、入力された文章を翻訳する翻訳処理と、の2種類の処理が実行される。これらの処理は、機械翻訳器のプログラムに基づいて実行される。即ち、下記に説明する処理は、機械翻訳器のプログラムコードに定義されている。この点は、作成部102により作成される変換器Cも同様であり、変換器Cの処理は、プログラムコードに定義されている。
【0085】
図6は、ニューラル機械翻訳方式の仕組みを説明する図である。ここでは、ニューラル機械翻訳のアルゴリズムを説明するために、翻訳処理について先に説明する。また、統計的機械翻訳と同様、日本語の文章を英語の文章に翻訳する場合を例に挙げる。
【0086】
翻訳処理では、日本語の文章が機械翻訳器に入力されると、
図6に示すように、当該入力された文章が単語又はフレーズに分割され、順番に機械翻訳器に入力されることによって、文章全体の特徴量が計算される。特徴量は、分散表現と呼ばれる数値の並びであり、例えば、多次元のベクトル情報又は多数の要素を含む配列によって表現される。特徴量は、単語又はフレーズが入力されるたびに、それまで計算された特徴量に、当該入力された単語又はフレーズの特徴量が合成される。最後の単語又はフレーズまで入力されて特徴量の計算が終了すると、特徴量は、入力された文章全体の特徴を示す数値となる。
【0087】
その後、翻訳開始を示す「BEGIN」等の所定の単語が入力され、それを合図にして、英単語又は英語のフレーズの出力が開始される。英単語又は英語のフレーズは、後述するモデル構築処理によって構築されたモデルが参照されて出力される。このモデルには、特徴量と、出力すべき英単語又は英語のフレーズと、の関係が定義されている。
図6の例であれば、特徴量に基づいて「he」という訳語が最初に出力される。
【0088】
出力された訳語は、再び機械翻訳器に入力されて特徴量に合成される。これにより、どの訳語が出力されたかが特徴量に反映される。次いで、合成後の特徴量に基づいて「went」という訳語が出力され、当該訳語が入力されて特徴量に合成される。以降、文末を表す所定の単語(例えば、「END」)が出力されるまで繰り返される。文末を表す所定の単語が出力されると、それまで出力された訳文が順番に並べられて翻訳文が出力され、翻訳処理が完了する。
【0089】
モデル構築処理では、対訳文データD1を利用して機械翻訳器のパラメータの最適化が行われる。パラメータは、特徴量を計算するための数式の係数やモデル内部の係数などである。なお、対訳文データD1は、統計的機械翻訳方式と同様である。例えば、対訳文データD1に格納された平叙文を機械翻訳器に入力した場合に、対訳文データD1に格納された疑問文が出力されるように、パラメータが最適化する。パラメータの最適化自体は、ニューラルネットワークで行われている種々の手法を適用可能であり、例えば、誤差逆伝搬法といった手法を適用可能である。
【0090】
なお、上記説明したニューラル機械翻訳方式の手法は、入力された文章を1つの分散表現にまとめているため、文章が長くなると、特徴を正確に表現できないことがある。このため、入力された文章を1つの分散表現にまとめるのではなく、分散表現の列として文章の情報を保持し、訳語を出力する際に、次に訳出すべき部分を推定してその部分の情報を用いて訳語を選択するアテンション機構を備えたニューラル機械翻訳方式が用いられてもよい。
【0091】
上記のように、ニューラル機械翻訳方式の機械翻訳器は、対訳文データD1に基づいて機械翻訳器のパラメータを調整し、当該パラメータが調整された機械翻訳器に日本語の文章を入力することによって英語の文章を出力する。
【0092】
例えば、作成部102は、上記説明したニューラル機械翻訳方式の機械翻訳器に基づいて、変換器Cを作成する。ニューラル機械翻訳方式を利用した変換器Cでは、入力された文章の特徴量が計算され、当該特徴量に基づいて変換が実行される。特徴量の意味は、先述した通りである。作成部102は、対訳文データD1の代わりに、関連付けデータDを使用して、パラメータを調整する。パラメータの調整方法は、先述した通りであり、作成部102は、関連付けデータDに格納された平叙文を変換器Cに入力した場合に、関連付けデータDに格納された疑問文が出力されるように、パラメータを最適化する。
【0093】
なお、
図6で説明した翻訳処理は、後述する入力部103及び文章取得部104の処理に相当するので、この点については後述する。また、変換器Cを作成するためのニューラル機械翻訳方式は、上記の例に限られない。ニューラル機械翻訳方式自体は、他の手法を適用してもよく、例えば、Neural Machine Translation and Sequence-to-sequence Models: A Tutorial(https://arxiv.org/abs/1703.01619)などの論文に記載された手法を適用してもよい。
【0094】
上記説明したニューラル機械翻訳方式を利用する手法は、数式を使って説明すると、下記のようになる。ニューラル機械翻訳方式の精度は、いわゆる双方向アーキテクチャやアテンション機構に依存することが知られており、ニューラル機械翻訳方式では、数式1の条件付き確率分布P(q|c)を、下記数式4のように定義する。ニューラル機械翻訳方式では、下記数式4を最大化することを目指すことになる。
【0095】
【0096】
数式4のqtは、変換器Cにより出力される疑問文qを構成する個々の単語である。tは、再帰型ニューラルネットワークにおけるタイムステップである。ここでは、条件付き確率分布P(q|c)を単語レベルの予測結果として取り扱い、個々の単語の蓋然性(変換精度)が高いほど値が高くなる。個々の単語qtの蓋然性は、変換器Cに入力される平叙文cと、それまでに生成された単語q1~qt-1と、によって計算される。数式4の右辺のP(qt|c,q1...t-1)は、個々の単語qtの蓋然性であり、具体的には下記数式5のように定義される。
【0097】
【0098】
数式5の右辺のbtは、タイムステップtにおける状態変数であり、atは、タイムステップtにおけるアテンション確率である。また、数式5の右辺のWqとWbは、学習されたパラメータであり、softmaxはソフトマックス関数である。なお、数式5は、単語qtの蓋然性の計算式の一例であり、蓋然性の計算方法自体は、公知の種々の計算式を適用可能である。
【0099】
例えば、ニューラル機械翻訳方式は、Bi-LSTM(Bi-directional Long Short-Term Memory)が用いられる。ここで、Bi-LSTMを説明する前に、LSTMについて簡単に説明する。
【0100】
LSTMでは、入力された平叙文に含まれる単語wを抽出し、予め用意された単語の辞書を利用して、抽出された単語wがn(nは自然数であり、例えば、数百又は数千以上である。)次元のベクトルで表現される。このベクトルは、単語wの特徴を示す特徴量である。LSTMアーキテクチャは、再帰的に接続されたメモリブロックによって構成される。これらのメモリブロックは、LSTMにおいて、時系列的な情報を記録したり読み出したりするために用いられる。各メモリブロックは、メモリセルと、3つのゲートを有する。これら3つのゲートは、いわゆる入力ゲート、忘却ゲート、及び出力ゲートであり、それぞれの符号をi,f,oと記載すると、メモリブロックなどは、下記数式6-10のようにして表現される。
【0101】
【0102】
【0103】
【0104】
【0105】
【0106】
数式6-数式9におけるxtは、入力された平叙文cに含まれる単語wが示すベクトルであり、式6-7,9のσは、論理シグモイド関数であり、数式6-9のhは、隠れベクトルであり、数式10のように定義される。W,bは、重み付け係数である。なお、ct又はct-1は、それぞれタイムステップt,t-1におけるメモリセルである。なお、LSTM自体は、公知の種々の手法を適用可能であり、上記説明した手法に限られない。
【0107】
LSTMでは、時間的に前の情報だけが考慮されるので、時間的に後の情報も考慮するために、Bi-LSTMが用いられる。Bi-LSTMでは、時間的に前の情報を考慮するためのフォワードと、時間的に後の情報を考慮するためのバックワードと、が計算され、これらの両方が考慮されて出力が決定される。例えば、Bi-LSTMにおける状態変数btは、下記数式11で定義され、タイムステップtにおける平叙文cのアテンション確率は、下記数式12に示すように、状態変数の加重平均によって計算される。なお、数式12の重み付け係数awi,tは、数式13のように定義される。
【0108】
【0109】
【0110】
【0111】
また、ニューラル機械翻訳方式における学習は、下記数式14のように、教師データS={(c(i),q(i))}i=1
Sの対数尤度を最小化するように、全てのパラメータθが決定される。
【0112】
【0113】
以上のようにして、作成部102は、機械翻訳器の手法を利用して、モデルの構築やパラメータの調整をすることによって変換器Cを作成し、データ記憶部100に記録する。本実施形態では、疑問文が複数の分類を有し、分類ごとに関連付けデータDが用意されているので、作成部102は、分類ごとに、当該分類の関連付けデータDに基づいて、当該分類の変換器Cを作成する。例えば、作成部102は、YN疑問文用の関連付けデータDYNに基づいて、YN疑問文用の変換器Cを作成し、WH疑問文用の関連付けデータDWHに基づいて、WH疑問文用の変換器Cを作成する。
【0114】
なお、作成部102は、関連付けデータDを特に分けることなく、YN疑問文用の変換器Cと、WH疑問文用の変換器Cと、を作成してもよい。例えば、作成部102は、関連付けデータDYN,DWHを合わせたデータに基づいて、YN疑問文用の変換器Cと、WH疑問文用の変換器Cと、を作成してもよい。
【0115】
[3-4.入力部]
入力部103は、変換器Cに第1の種類の文章を入力する。本実施形態では、平叙文が第1の種類の文章に相当するので、入力部103は、平叙文を変換器Cに入力する。平叙文は、データ記憶部100に記憶されていてもよいし、サーバ10以外の外部コンピュータ又は外部情報記憶媒体に記憶されていてもよい。他にも例えば、平叙文は、管理者が管理者端末30から入力してもよい。
【0116】
本実施形態では、分類ごとに変換器Cが用意されているので、入力部103は、少なくとも1つの分類の変換器Cに、平叙文を入力する。入力部103は、複数の変換器Cのうち、管理者が管理者端末30から指定した変換器Cに平叙文を入力してもよいし、全ての分類の変換器Cに平叙文を入力してもよい。
【0117】
また、本実施形態では、入力部103は、アイテムの特徴を示す平叙文を変換器Cに入力する。例えば、入力部103は、ユーザが入力したアイテムのレビューを変換器Cに入力してもよいし、管理者又は店舗などが入力したアイテムの説明文を変換器Cに入力してもよい。他にも例えば、入力部103は、アイテムの取扱説明書に記載されている文章を変換器Cに入力してもよい。
【0118】
[3-5.文章取得部]
文章取得部104は、変換器Cにより同一言語の第2の種類に変換された文章を取得する。本実施形態では、疑問文が第2の種類の文章に相当するので、文章取得部104は、変換器Cにより変換された疑問文を取得する。変換器Cによる文章の変換方法は、変換器Cを作成する際に利用した機械翻訳器に応じて異なる。先述したように、機械翻訳器は、任意の機械翻訳器を適用可能であり、本実施形態では、統計的機械翻訳方式と、ニューラル機械翻訳方式と、を例に挙げているので、これらの方式を利用した変換方法について説明する。
【0119】
まず、統計的機械翻訳方式を利用して作成された変換器Cに、平叙文が入力された場合の処理を説明する。この処理の流れは、
図5を参照して説明した機械翻訳器の処理の流れと同様であり、変換器Cは、モデル構築処理により構築された変換モデルと言語モデルに基づいて、平叙文を疑問文に変換する。
【0120】
例えば、入力部103が変換器Cに平叙文を入力すると、変換器Cは、平叙文をフレーズに分割し、変換モデルに基づいて、平叙文におけるフレーズに対応する疑問文のフレーズを探索する。変換器Cは、平叙文のフレーズに対応するものが全ての疑問文のフレーズを探索してもよいし、蓋然性が閾値以上のものだけを探索してもよい。
【0121】
変換器Cは、探索した疑問文のフレーズを並べて繋ぎ合わせた文章ごとに、変換モデルに格納された蓋然性と、言語モデルに格納された蓋然性と、に基づいて、当該文章のスコアを計算する。スコアは、変換の精度を示す数値であり、変換器Cは、これらの蓋然性を所定の数式に代入することでスコアを計算する。蓋然性が高いフレーズの組み合わせをなるべく多く含む文章は、スコアが高くなる。変換器Cは、スコアが最大となり、平叙文と過不足なく一致するフレーズの組み合わせを探索し、これらのフレーズを繋ぎ合わせた文章を疑問文として出力する。
【0122】
次に、ニューラル機械翻訳方式を利用して作成された変換器Cに、平叙文が入力された場合の処理を説明する。この処理の流れは、
図6を参照して説明した機械翻訳器の処理の流れと同様であり、変換器Cは、モデル構築処理により調整されたパラメータに基づいて、平叙文の特徴量を計算し、疑問文に変換する。
【0123】
例えば、入力部103が変換器Cに平叙文を入力すると、変換器Cは、当該入力された平叙文を単語又はフレーズに分割し、当該分割した単語又はフレーズを順番に入力して、文章全体の特徴量を計算する。特徴量は、単語又はフレーズが入力されるたびに、それまで計算された特徴量に、当該入力された単語又はフレーズの特徴量が合成されるので、最後の単語又はフレーズまで入力されて特徴量の計算が終了すると、入力された平叙文全体の特徴量が計算されることになる。
【0124】
その後、変換器Cは、翻訳開始を示す「BEGIN」等の所定の単語を入力し、それを合図にして、疑問文における単語又はフレーズの出力を開始する。どの特徴量の場合にはどの単語又はフレーズを出力するといったことは、モデル構築処理によって予め学習されている。変換器Cは、出力した単語又はフレーズを、再び入力して特徴量に合成する。これにより、どの単語又はフレーズが出力されたかが特徴量に反映される。
【0125】
以降、変換器Cは、文末を表す所定の単語(例えば、「END」)が出力されるまで、単語又はフレーズの出力と、当該単語又はフレーズの入力と、を繰り返す。変換器Cは、文末を表す所定の単語を出力すると、それまで出力された単語又はフレーズが順番に並べられて疑問文が出力され、変換処理が完了する。なお、アテンション機構を利用したニューラル機械翻訳方式を利用して変換器Cが作成された場合には、変換器Cは、疑問文のフレーズを出力する過程で、次に変換すべき部分を推定しながら変換後のフレーズを出力する。
【0126】
以上のようにして、文章取得部104は、変換器Cが機械翻訳器の手法を利用して出力した疑問文を取得する。本実施形態では、分類ごとに変換器Cが用意されているので、文章取得部104は、少なくとも1つの分類の変換器Cにより、同一言語の当該分類に変換された文章を取得する。例えば、文章取得部104は、YN疑問文用の変換器Cが出力したYN疑問文を取得し、WH疑問文用の変換器Cが出力したWH疑問文を取得する。
【0127】
[3-6.生成部]
生成部105は、入力された平叙文と、取得された疑問文と、に基づいて、アイテムのQ&A又はFAQを生成する。生成部105は、これら平叙文と疑問文の組み合わせをデータ記憶部100に記録し、アイテムのQ&A又はFAQとして利用可能とする。例えば、ユーザ端末20からアイテムのQ&A又はFAQの表示要求を受信した場合に、上記記録された組み合わせが参照され、Q&A又はFAQのページがユーザ端末20に表示される。
【0128】
[4.本実施形態において実行される処理]
図7は、サーバ10によって実行される処理を示すフロー図である。
図7に示す処理は、制御部11が記憶部12に記憶されたプログラムに基づいて動作することによって実行される。
図7に示す処理は、
図2に示す機能ブロックにより実行される処理の一例である。
【0129】
なお、ここでは、統計的機械翻訳方式を利用した変換器Cと、ニューラル機械翻訳方式を利用した変換器Cと、の両方を作成する場合を説明するが、これらの何れか一方のみが作成されてもよい。また、
図7に示す処理が実行されるにあたり、YN疑問文用の関連付けデータD
YNと、WH疑問文用の関連付けデータD
WHと、が作成されており、これらが記憶部12に記憶されているものとする。また、モデル構築前の統計的機械翻訳方式の機械翻訳器と、パラメータ調整前のニューラル機械翻訳方式の機械翻訳器と、が記憶部12に記憶されているものとする。
【0130】
図7に示すように、制御部11は、YN疑問文用の関連付けデータD
YNと、統計的機械翻訳方式の機械翻訳器と、に基づいて、YN疑問文用の変換器C
SYNを作成する(S1)。S1においては、制御部11は、関連付けデータD
YNに格納された平叙文と疑問文の組み合わせごとに、これらの文章をフレーズに分割して対応関係を推定する。制御部11は、フレーズの対応関係の統計を取り、変換モデルを構築する。制御部11は、関連付けデータD
YNに格納された疑問文において連続するフレーズの統計を取り、言語モデルを構築する。制御部11は、構築した変換モデルと言語モデルを記憶部12に記録することによって、変換器C
SYNを作成する。
【0131】
制御部11は、WH疑問文用の関連付けデータDWHと、統計的機械翻訳方式の機械翻訳器と、に基づいて、WH疑問文用の変換器CSWHを作成する(S2)。S2の処理は、WH疑問文用の関連付けデータDWHが参照されるという点でS1の処理と異なり、他の点については、S1の処理と同様である。
【0132】
制御部11は、YN疑問文用の関連付けデータDYNと、ニューラル機械翻訳方式の機械翻訳器と、に基づいて、YN疑問文用の変換器CNYNを作成する(S3)。S3においては、制御部11は、関連付けデータDに格納された平叙文が入力された場合に、対応する疑問文が出力されるように、パラメータを調整することによって、変換器CNYNを作成する。
【0133】
制御部11は、WH疑問文用の関連付けデータDWHと、ニューラル機械翻訳方式の機械翻訳器と、に基づいて、WH疑問文用の変換器CNWHを作成する(S4)。S4の処理は、WH疑問文用の関連付けデータDWHが参照されるという点でS3の処理と異なり、他の点については、S3の処理と同様である。
【0134】
制御部11は、管理者端末30から疑問文に変換したい平叙文を取得する(S5)。S5においては、制御部11は、管理者が管理者端末30において入力した平叙文を取得する。なお、ここでは、変換対象となる平叙文が管理者端末30において入力される場合を説明するが、変換対象となる平叙文は、サーバ10の記憶部12に記憶されていてもよいし、管理者端末30の記憶部32に記憶されていてもよい。他にも例えば、変換対象となる平叙文は、ユーザ端末20などの他のコンピュータから取得されるようにしてもよい。
【0135】
制御部11は、S1~S4において作成された変換器CSYN,CSWH,CNYN,CNWHの各々に、S5で取得した平叙文を入力する(S6)。なお、ここでは、4つの変換器CSYN,CSWH,CNYN,CNWHの全てに平叙文が入力される場合を説明したが、少なくとも1つに平叙文が入力されるようにすればよく、例えば、管理者が指定した変換器Cにだけ平叙文が入力されてもよい。
【0136】
制御部11は、S1~S4において作成された変換器CSYN,CSWH,CNYN,CNWHの各々によって変換された疑問文を取得する(S7)。ここでは、4つの変換器CSYN,CSWH,CNYN,CNWHの全てに平叙文が入力されているので、1つの平叙文に対して4つの疑問文が取得されることになる。
【0137】
制御部11は、S6で入力した平叙文と、S7で取得した疑問文と、を関連付けて記憶部12に記録し(S8)、本処理は終了する。先述したように、S8で記録された平叙文と疑問文は、任意の目的で使用されてよく、例えば、試験問題の解答が平叙文として入力されたのであれば試験問題に利用されてもよいし、アイテムの特徴の説明文などが平叙文として入力されたのであればQ&A又はFAQといった質疑応答文に利用されてもよい。また、ここでは、1つの平叙文に対して4つの疑問文が関連付けられているが、実際に利用される疑問文については、管理者が指定してもよいし、変換器Cが計算したスコアが最も高いものだけであってもよい。また例えば、スコアが最も高い疑問文だけが記憶部12に記録されてもよい。
【0138】
以上説明した文章変換システムSによれば、異なる言語間の見た目や文法の違いを吸収する機械翻訳器の仕組みを同一言語内での文章の変換に利用し、平叙文と疑問文の間の見た目や文法の違いをうまく吸収することで、ルールベース方式のように人間が手動で多数のルールを定めておく必要がなくなるので、手間をかけずに、文章を変換する精度を高めることができる。
【0139】
また、統計的機械翻訳方式の機械翻訳器に基づいて作成された変換器Cを利用することで、文章を変換する精度をより効果的に高めることができる。また、統計的機械翻訳方式を利用すると、関連付けデータDに格納される平叙文と疑問文の組み合わせが比較的少なかったとしても、統計情報を利用することである程度の精度を担保することができるので、多量の関連付けデータDを用意する手間を省き、データ記憶部100のメモリ消費量を抑制することもできる。
【0140】
また、ニューラル機械翻訳方式の機械翻訳器に基づいて作成された変換器Cを利用することで、文章を変換する精度をより効果的に高めることができる。ニューラル機械翻訳方式を利用すると、豊富な関連付けデータDを用意できる場合には学習の精度を高めることができるので、変換器Cの精度を高めることができる。
【0141】
また、疑問文のように複数の分類が存在する文章を出力する変換器Cを作成する場合には、分類ごとに関連付けデータDを用意し、分類ごとに専用の変換器Cを作成することで、文章を変換する精度をより効果的に高めることができる。
【0142】
また、関連付けデータDに平叙文と疑問文を関連付けておき、平叙文を疑問文に変換する変換器Cを作成することで、手間をかけずに、平叙文を疑問文に変換することができる。
【0143】
また、アイテムの特徴を示す平叙文を変換器Cに入力し、変換器Cから出力された疑問文に基づいてアイテムのQ&A又はFAQを生成することで、アイテムのQ&A又はFAQを生成する手間を省くことができる。
【0144】
[5.変形例]
なお、本発明は、以上に説明した実施の形態に限定されるものではない。本発明の趣旨を逸脱しない範囲で、適宜変更可能である。
【0145】
(1)例えば、WH疑問文は、What、Which、Why、Where、又はHowなどの複数の単語の何れかが冒頭に記載される疑問文であり、細かく分類すると、これら5つの小分類が存在する。このように、少なくとも1つの分類には、複数の小分類が存在することがあるので、関連付けデータD及び変換器Cの各々を、小分類ごとに用意してもよい。
【0146】
本変形例のデータ記憶部100は、What疑問文用の関連付けデータD及び変換器C、Which疑問文用の関連付けデータD及び変換器C、Why疑問文用の関連付けデータD及び変換器C、Where疑問文用の関連付けデータD及び変換器C、How疑問文用の関連付けデータD及び変換器Cを記憶する。
【0147】
関連付けデータDのデータ格納例は、実施形態で説明した通りであり、各小分類に応じた疑問文が格納されている。例えば、What疑問文用の関連付けデータDには、平叙文と、当該平叙文がWhatで始まる形に変換された疑問文と、が格納されている。また例えば、Which疑問文用の関連付けデータDには、平叙文と、当該平叙文がWhichで始まる形に変換された疑問文と、が格納されている。また例えば、Why疑問文用の関連付けデータDには、平叙文と、当該平叙文がWhyで始まる形に変換された疑問文と、が格納されている。また例えば、Where疑問文用の関連付けデータDには、平叙文と、当該平叙文がWhereで始まる形に変換された疑問文と、が格納されている。また例えば、How疑問文用の関連付けデータDには、平叙文と、当該平叙文がHowで始まる形に変換された疑問文と、が格納されている。
【0148】
データ取得部101は、複数の小分類の各々の関連付けデータDを取得する。データ取得部101は、変換器Cが作成される場合に関連付けデータDを取得するので、作成対象となる変換器Cの分類に応じた関連付けデータDを取得する。例えば、作成部102がWhat疑問文用の変換器Cを作成する場合には、データ取得部101は、What疑問文用の関連付けデータDを取得し、作成部102がWhich疑問文用の変換器Cを作成する場合には、データ取得部101は、Which疑問文用の関連付けデータDを取得する。他の小分類についても同様である。
【0149】
作成部102は、小分類ごとに、当該小分類の関連付けデータDに基づいて、当該小分類の変換器Cを作成する。例えば、作成部102は、What疑問文用の関連付けデータDに基づいて、What疑問文用の変換器Cを作成し、Which疑問文用の関連付けデータDWHに基づいて、Which疑問文用の変換器Cを作成する。他の小分類についても同様である。
【0150】
入力部103は、少なくとも1つの小分類の変換器Cに、平叙文を入力する。入力部103は、各小分類の変換器Cのうち、管理者が管理者端末30から指定した変換器Cに平叙文を入力してもよいし、全ての小分類の変換器Cに平叙文を入力してもよい。
【0151】
文章取得部104は、少なくとも1つの小分類の変換器Cにより、同一言語の当該小分類に変換された文章を取得する。例えば、文章取得部104は、What疑問文用の変換器Cが出力したYN疑問文を取得し、Which疑問文用の変換器Cが出力したWH疑問文を取得する。他の小分類についても同様である。
【0152】
変形例(1)によれば、疑問文のように複数の小分類が存在する文章を出力する変換器Cを作成する場合には、小分類ごとに関連付けデータDを用意し、小分類ごとに専用の変換器Cを作成することで、文章を変換する精度をより効果的に高めることができる。
【0153】
(2)また例えば、実施形態では、平叙文を疑問文に変換する変換器Cを作成する場合を説明したが、疑問文を平叙文に変換する変換器Cを作成してもよい。即ち、疑問文が第1の種類の文章に相当し、平叙文が第2の種類の文章に相当してもよい。この場合、関連付けデータDには、疑問文と平叙文との関連付けが示されている。変換器Cの作成方法自体は、実施形態で説明した通りである。
【0154】
本変形例では、疑問文が第1の種類の文章に相当するので、第1の種類の文章は、複数の分類が存在することになる。実施形態では、変換器Cの出力側の文章の分類ごとに、関連付けデータD及び変換器Cが用意される場合を説明したが、変換器Cの入力側の文章の分類ごとに、関連付けデータD及び変換器Cが用意されてもよい。
【0155】
例えば、YN疑問文用の関連付けデータDYNには、YN形式の疑問文と、当該疑問文が同一言語の平叙文に変換された文章と、が関連付けられている。この平叙文は、YN形式の疑問文の回答である。例えば、管理者は、疑問文の冒頭のDo又はDoesなどの単語を削除して述語の記載形式を変更することによって、平叙文を入力する。また例えば、WH疑問文用の関連付けデータDWHには、WH形式の疑問文と、当該疑問文が同一言語の平叙文に変換された文章と、が関連付けられている。この平叙文は、WH形式の疑問文の回答である。例えば、管理者は、疑問文の冒頭のWH語又はHowなどの単語を削除して述語の記載形式を変更することによって、平叙文を入力する。
【0156】
データ取得部101は、複数の分類の各々の関連付けデータDを取得する。データ取得部101は、変換器Cが作成される場合に関連付けデータDを取得するので、作成対象となる変換器Cの分類に応じた関連付けデータDを取得する。例えば、作成部102がYN疑問文の変換器Cを作成する場合には、データ取得部101は、YN疑問文の関連付けデータDを取得し、作成部102がWH疑問文の変換器Cを作成する場合には、データ取得部101は、WH疑問文の関連付けデータDを取得する。
【0157】
作成部102は、分類ごとに、当該分類の関連付けデータDに基づいて、当該分類の変換器Cを作成する。例えば、作成部102は、YN疑問文用の関連付けデータDYNに基づいて、YN疑問文用の変換器Cを作成し、WH疑問文用の関連付けデータDWHに基づいて、WH疑問文用の変換器Cを作成する。
【0158】
入力部103は、少なくとも1つの分類の変換器Cに、当該分類の文章を入力する。例えば、入力部103は、入力対象の疑問文の分類を判定し、当該分類の変換器Cに疑問文を入力する。例えば、入力部103は、疑問文の冒頭にDo又はDoesなどの単語が記載されていた場合には、YN疑問文用の変換器Cに疑問文を入力し、冒頭にWH語又はHowなどの単語が記載されていた場合には、WH疑問文用の変換器Cに疑問文を入力する。他にも例えば、入力部103は、管理者が指定した変換器Cに疑問文を入力してもよい。
【0159】
変形例(2)によれば、疑問文のように複数の分類が存在する文章が入力される変換器Cを作成する場合には、分類ごとに関連付けデータDを用意し、分類ごとに専用の変換器Cを作成することで、文章を変換する精度をより効果的に高めることができる。
【0160】
(3)また例えば、変形例(2)のように、変換器Cに疑問文が入力される場合、変形例(1)で説明したように、疑問文には、複数の小分類が存在する。このように、少なくとも1つの分類には、複数の小分類が存在することがあるので、このため、関連付けデータD及び変換器Cの各々を、小分類ごとに用意してもよい。
【0161】
本変形例のデータ記憶部100は、What疑問文用の関連付けデータD及び変換器C、Which疑問文用の関連付けデータD及び変換器C、Why疑問文用の関連付けデータD及び変換器C、Where疑問文用の関連付けデータD及び変換器C、How疑問文用の関連付けデータD及び変換器Cを記憶する。例えば、What疑問文用の関連付けデータDには、Whatで始まる形の疑問文と、当該疑問文が平叙文に変換された文章と、が格納されている。また例えば、Which疑問文用の関連付けデータDには、Whichで始まる形の疑問文と、当該疑問文が平叙文に変換された文章と、が格納されている。例えば、Why疑問文用の関連付けデータDには、Whyで始まる形の疑問文と、当該疑問文が平叙文に変換された文章と、が格納されている。例えば、Where疑問文用の関連付けデータDには、Whereで始まる形の疑問文と、当該疑問文が平叙文に変換された文章と、が格納されている。例えば、How疑問文用の関連付けデータDには、Howで始まる形の疑問文と、当該疑問文が平叙文に変換された文章と、が格納されている。
【0162】
データ取得部101は、複数の小分類の各々の関連付けデータDを取得する。データ取得部101は、変換器Cが作成される場合に関連付けデータDを取得するので、作成対象となる変換器Cの小分類に応じた関連付けデータDを取得する。例えば、作成部102がWhat疑問文用の変換器Cを作成する場合には、データ取得部101は、What疑問文用の関連付けデータDを取得し、作成部102がWhich疑問文用の変換器Cを作成する場合には、データ取得部101は、Which疑問文用の関連付けデータDを取得する。他の小分類についても同様である。
【0163】
作成部102は、小分類ごとに、当該小分類の関連付けデータDに基づいて、当該小分類の変換器Cを作成する。例えば、作成部102は、What疑問文用の関連付けデータDに基づいて、What疑問文用の変換器Cを作成し、Which疑問文用の関連付けデータDWHに基づいて、Which疑問文用の変換器Cを作成する。他の小分類についても同様である。
【0164】
入力部103は、少なくとも1つの小分類の変換器Cに、当該小分類の疑問文を入力する。例えば、入力部103は、入力対象の疑問文の小分類を判定し、当該分類の変換器Cに疑問文を入力する。例えば、入力部103は、疑問文の冒頭にWhatが記載されていた場合には、What疑問文用の変換器Cに疑問文を入力し、冒頭にWhichが記載されていた場合には、Which疑問文用の変換器Cに疑問文を入力する。他にも例えば、入力部103は、管理者が指定した変換器Cに疑問文を入力してもよい。
【0165】
変形例(3)によれば、疑問文のように複数の小分類が存在する文章が入力される変換器Cを作成する場合には、小分類ごとに関連付けデータDを用意し、小分類ごとに専用の変換器Cを作成することで、文章を変換する精度をより効果的に高めることができる。
【0166】
(4)また例えば、上記変形例を組み合わせてもよい。
【0167】
また例えば、機械翻訳器の一例として、統計的機械翻訳方式とニューラル機械翻訳方式とについて説明したが、他の方式の機械翻訳器を利用して変換器Cを作成してもよい。例えば、翻訳したい入力文と似た文を大量の対訳文から検索し、対訳文の中で入力文と一致しない部分に対応する表現を書き換える用例翻訳方式の機械翻訳器を利用してもよい。
【0168】
また例えば、実施形態では、アイテムのQ&A又はFAQを生成するために文章変換システムSが利用される場合を説明したが、文章変換システムSは、他の種々の目的で文章を変換してもよい。例えば、文章変換システムSは、チャットボットによる会話の内容を生成するために文章を変換してもよいし、試験問題の作成をするために文章を変換してもよい。例えば、チャットボットに利用する場合には、文章変換システムSは、チャットボットの発言内容を示す疑問文を生成する。また例えば、試験問題の作成に利用する場合には、文章変換システムSは、試験問題の解答に基づいて問題文を生成する。
【0169】
また例えば、平叙文を疑問文に変換する変換器Cと、疑問文を平叙文に変換する変換器Cと、について説明したが、変換器Cは、任意の種類の文章を変換可能であり、変換器Cが変換する文章の種類は、これらに限られない。例えば、文章変換システムSは、平叙文を命令文に変換する変換器Cを作成してもよいし、命令文を平叙文に変換する変換器Cを作成してもよい。また例えば、文章変換システムSは、平叙文を感嘆文に変換する変換器Cを作成してもよいし、感嘆文を平叙文に変換する変換器Cを作成してもよい。他にも例えば、文章変換システムSは、ある地方で使用される方言の文章を、同一言語の(同一の国内での)他の地方で使用される方言の文章に変換する変換器Cを作成してもよい。
【0170】
また例えば、各機能がサーバ10で実現される場合を説明したが、複数のコンピュータによって機能が分担されてもよい。例えば、サーバ10、ユーザ端末20、及び管理者端末30の各々で機能が分担されてもよいし、複数のサーバコンピュータで機能が分担されてもよい。この場合、ネットワークを介して処理結果が送受信されることで、機能が分担されるようにすればよい。また例えば、データ記憶部100に記憶されるものとして説明したデータは、サーバ10以外のコンピュータに記憶されていてもよい。
【符号の説明】
【0171】
S 文章変換システム、10 サーバ、11,21,31 制御部、12,22,32 記憶部、13,23,33 通信部、20 ユーザ端末、24,34 操作部、25,35 表示部、30 管理者端末、D1 対訳文データ、D2 訳語データ、M1 翻訳モデル、M2 言語モデル、100 データ記憶部、101 データ取得部、102 作成部、103 入力部、104 文章取得部、105 生成部。