(57)【要約】【課題】入力文から、入力文の内容に関連し且つ入力文と異なる出力文を生成する場合に、出力文が汎用的な表現になってしまうのを抑制する。【解決手段】学習装置は、入力文から、入力文の内容に関連し且つ入力文と異なる出力文を生成する生成モデルを用いて、入力文から出力文を生成する生成部３０と、出力文から入力文を復元する復元モデルを用いて、出力文から入力文を復元する復元部３２と、入力文と復元部により復元された復元文との誤差を用いて生成モデル及び復元モデルを学習させることにより生成モデル及び復元モデルを更新する第２の更新部３６と、を備える。【選択図】図２
2020140469.tif 000002
【特許請求の範囲】
【請求項１】
入力文から、前記入力文の内容に関連し且つ前記入力文と異なる出力文を生成する生成モデルを用いて、前記入力文から前記出力文を生成する生成部と、
前記出力文から前記入力文を復元する復元モデルを用いて、前記出力文から前記入力文を復元する復元部と、
前記入力文と前記復元部により復元された復元文との誤差を用いて前記生成モデル及び前記復元モデルの少なくとも一方を学習させることにより前記生成モデル及び前記復元モデルの少なくとも一方を更新する更新部と、
を備えた学習装置。
【請求項２】
前記更新部は、前記入力文に対応する正解の出力文と前記生成部により生成された出力文との誤差を用いて前記生成モデルを学習させることにより前記生成モデルを更新する
請求項１記載の学習装置。
【請求項３】
前記生成部は、前記入力文の中間表現を生成すると共に前記出力文を中間表現で出力し、
前記復元部は、中間表現で表された前記出力文から前記復元文を生成し、
前記更新部は、中間表現で表された前記入力文と、中間表現で表された前記復元文と、の誤差を用いて前記生成モデル及び前記復元モデルの少なくとも一方を学習させることにより前記生成モデル及び前記復元モデルの少なくとも一方を更新する
請求項１又は請求項２記載の学習装置。
【請求項４】
前記復元モデルは、中間表現で表された前記出力文からＧｕｍｂｅｌ−Ｓｏｆｔｍａｘ関数を用いて生成した単語を取得し、取得した単語の分散表現に基づいて、変換した単語から、中間表現で表された前記復元文を生成する
請求項３記載の学習装置。
【請求項５】
前記更新部は、前記入力文と前記復元文との誤差を用いて前記生成モデル及び前記復元モデルを学習させることにより前記生成モデル及び前記復元モデルを更新する
請求項１〜４の何れか１項に記載の学習装置。
【請求項６】
前記生成モデルは、前記入力文に含まれる単語に重み付けして前記出力文を生成するアテンション機構付きエンコーダデコーダモデルである
請求項１〜５の何れか１項に記載の学習装置。
【請求項７】
前記更新部は、前記生成部に入力された入力文と、前記復元部で復元された復元文と、前記生成部に入力された入力文と異なる少なくとも１つ以上の入力文と、を入力とし、各々の入力文と復元文とがペアである確率を各々算出するモデルを用いて、前記生成部に入力された入力文と前記復元部で復元された復元文とがペアである確率の誤差を算出し、算出した誤差を用いて前記生成モデル及び前記復元モデルを学習させることにより前記生成モデル及び前記復元モデルを更新する
請求項１〜６の何れか１項に記載の学習装置。
【請求項８】
前記復元部は、前記出力文に含まれる単語のうち、単語の重要度が予め定めた重要度以上の単語から前記入力文を復元する処理、及び、前記復元文に含まれる単語のうち、単語の重要度が予め定めた重要度以上の単語から入力文を復元する処理の少なくとも一方を実行する
請求項１〜７の何れか１項に記載の学習装置。
【請求項９】
前記復元部は、ｔｆ−ｉｄｆを用いて前記出力文に含まれる単語の重要度を算出する
請求項８記載の学習装置。
【請求項１０】
前記単語の重要度をアテンション機構付きの学習モデルを用いて学習する
請求項８記載の学習装置。
【請求項１１】
前記生成モデルは、前記入力文よりも短い出力文を生成する
請求項１〜１０の何れか１項に記載の学習装置。
【請求項１２】
コンピュータを、請求項１〜１１の何れか１項に記載の学習装置の各部として機能させるための学習プログラム。
【請求項１３】
入力文から、前記入力文の内容に関連し且つ前記入力文と異なる出力文を生成する生成モデルであって、請求項１〜１０の何れか１項に記載の学習装置により学習された生成モデルを用いて、前記入力文から前記出力文を生成する生成部と、
前記出力文から前記入力文を復元する復元モデルであって、請求項１〜１０の何れか１項に記載の学習装置により学習された復元モデルを用いて、前記出力文から前記入力文を復元する復元部と、
前記出力文及び前記復元部により復元された復元文の少なくとも一方を出力する出力部と、
を備えた文生成装置。
【請求項１４】
前記生成部は、複数の出力文を生成し、
前記出力部は、前記複数の出力文と、前記複数の出力文の各々に対応した前記復元文と、を出力する
を備えた請求項１３記載の文生成装置。
【請求項１５】
前記復元部は、前記入力文と前記復元文との誤差が閾値以下の復元文のみを出力する
請求項１３又は請求項１４記載の文生成装置。
【請求項１６】
前記閾値を受け付ける閾値受付部
を備えた請求項１５記載の文生成装置。
【請求項１７】
前記復元部は、入力文を受け付け、受け付けた入力文に対応する単語を出力する
請求項１３〜１６の何れか１項に記載の文生成装置。
【請求項１８】
前記出力文の修正を受け付ける修正受付部を備え、
前記復元部は、前記修正受付部が受け付けた修正が反映された前記出力文から前記入力文を復元する
請求項１３〜１７の何れか１項に記載の文生成装置。
【請求項１９】
前記入力文に含まれる単語のうち注目すべき注目単語を受け付ける注目単語受付部を備え、
前記生成部は、生成された前記出力文のうち、前記注目単語受付部が受け付けた注目単語が含まれる出力文を出力する
請求項１３〜１８の何れか１項に記載の文生成装置。
【請求項２０】
前記注目単語受付部は、複数の前記注目単語を優先度と共に受け付け、
前記生成部は、複数の前記注目単語が前記優先度で重み付けされた入力文から前記出力文を生成する
請求項１９記載の文生成装置。
【請求項２１】
前記生成部は、生成された前記出力文のうち、前記復元文に含まれる単語の組み合わせの少なくとも一部が異なる出力文を選択して出力する
請求項１３〜２０の何れか１項に記載の文生成装置。
【請求項２２】
コンピュータを、請求項１３〜２１の何れか１項に記載の文生成装置の各部として機能させるための文生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、学習装置及び学習プログラム並びに文生成装置及び文生成プログラムに関する。
【背景技術】
【０００２】
特許文献１には、ある言語（以後Ａ言語と呼ぶ）により表された文または文節または単語を入力する手段と、この入力された文または文節または単語を別の言語（以後Ｂ言語と呼ぶ）で表された文または文節または単語に翻訳する手段と、Ｂ言語により表された文または文節または単語をＡ言語で表された文または文節または単語に翻訳する手段と、翻訳された文または文節または単語を出力する手段とを有する装置であって、Ａ言語により入力された一つの文または文節または単語を、一つもしくは異なる二つ以上の、Ｂ言語で表された文または文節または単語に自動的に翻訳するとともに、該翻訳された一つもしくは二つ以上のＢ言語で表された文または文節または単語のそれぞれを、各々一つのＡ言語で表された文または文節または単語に再び自動的に翻訳し、翻訳されたＢ言語で表された文または文節または単語の一つと、それが再び翻訳されたＡ言語で表された文または文節または単語の組を、時間差を置いて、もしくは同時に出力する手段を備えることを特徴とする装置が開示されている。
【０００３】
特許文献２には、言語情報を出力する情報出力装置へ接続し、第１言語と第２言語との間の翻訳処理を行なう機械翻訳システムにおける機械翻訳方法であって、前記第１言語の翻訳対象文を受信し、受信した前記翻訳対象文を前記第２言語へ翻訳した複数の異なる順翻訳文を生成し、前記複数の異なる前記順翻訳文の各々について前記第１言語へ逆翻訳した複数の逆翻訳文を生成し、前記情報出力装置において前記複数の逆翻訳文を出力しているときに、前記複数の逆翻訳文から一の逆翻訳文を選択する操作を受け付けた場合、前記一の逆翻訳文に対応する前記順翻訳文を出力する、機械翻訳方法が開示されている。
【０００４】
特許文献３には、第１データから第２データへのデータ変換手段と、第２データから第１データへのデータ逆変換手段とが併存するデータ変換装置を用いて、該第１データに対して、データ変換手段における変換適性を評価して変換適性値を算出するデータ変換適性評価方法であって、該データ変換手段により第１データを変換して変換後第２データを取得するデータ変換ステップ、該データ逆変換手段により該変換後第２データを逆変換して逆変換後第１データを取得するデータ逆変換ステップ、該第１データと該逆変換後第１データとを類似度算出手段に入力して、所定の類似度算出式により類似度を算出する類似度算出ステップ、該類似度を第１データのデータ変換手段における変換適性値として出力手段から出力する変換適性値出力ステップを含むことを特徴とするデータ変換適性評価方法が開示されている。
【０００５】
特許文献４には、目的言語に翻訳すべき原始言語のテキストセグメントを入力として受け取り、初期翻訳分を、現行目的言語翻訳文として生成し、その現行目的言語翻訳文に、１又は２以上の修正オペレータを適用して、１又は２以上の修正された目的言語翻訳文を生成し、その修正された目的言語翻訳文の１又は２以上が、該現行目的言語翻訳文と比較して改良された翻訳文になっているかどうかを確認し、修正された目的言語翻訳文を、現行目的言語翻訳文として設定し、次いで前記適用、前記確認及び前記設定を、終了条件が生じるまで繰り返す、ことを含んでなる機械翻訳デコーディング方法が開示されている。
【０００６】
特許文献５には、入力された第１自然言語の原文を第２自然言語に翻訳した翻訳文を生成するとともに、この翻訳文を第１自然言語に翻訳した逆翻訳文を生成する翻訳文生成部と、この翻訳文生成部によって生成された翻訳文及び逆翻訳文を原文と対応付けて表示する表示処理部と、原文の形態素のうち第２自然言語の訳語の候補が複数存在するものについて、その訳語のリストを作成するリスト生成部と、このリストを記憶する候補記憶部と、ユーザからの操作を受け付ける操作部と、前記操作部で受け付けたユーザからの指示に応じて、前記候補記憶部に記憶されるリストから１の候補を選択し、この選択した訳語を対応する形態素の訳語として用いて翻訳文及び逆翻訳文の再生成を翻訳文生成部に実行させる再翻訳処理部と、を備えたことを特徴とする翻訳装置が開示されている。
【０００７】
特許文献６には、目的言語の用例と、前記目的言語の用例と意味が等価な原言語の用例とを対応づけて記憶する用例記憶部と、原言語による入力文を受付ける入力受付部と、前記入力文と一致または類似する前記原言語の用例に対応する前記目的言語の用例を前記用例記憶部から検索する検索部と、前記入力文を目的言語に翻訳した目的言語文を生成し、検索された前記目的言語の用例を原言語に翻訳した再訳文を生成する翻訳部と、前記再訳文と前記入力文との間の相違部分を検出する検出部と、前記相違部分を出力する出力部と、を備えたことを特徴とする機械翻訳装置が開示されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００７−０５８８２９号公報
【特許文献２】特開２０１６−２１８９９５号公報
【特許文献３】特開２００６−２５２３２３号公報
【特許文献４】特表２００４−５０１４２９号公報
【特許文献５】特開２００６−３１８２０２号公報
【特許文献６】特許第５１００４４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明は、入力文から、入力文の内容に関連し且つ入力文と異なる出力文を生成する場合に、出力文が汎用的な表現になってしまうのを抑制することができる学習装置及び学習プログラム並びに文生成装置及び文生成プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
第１態様に係る学習装置は、入力文から、前記入力文の内容に関連し且つ前記入力文と異なる出力文を生成する生成モデルを用いて、前記入力文から前記出力文を生成する生成部と、前記出力文から前記入力文を復元する復元モデルを用いて、前記出力文から前記入力文を復元する復元部と、前記入力文と前記復元部により復元された復元文との誤差を用いて前記生成モデル及び前記復元モデルの少なくとも一方を学習させることにより前記生成モデル及び前記復元モデルの少なくとも一方を更新する更新部と、を備える。
【００１１】
第２態様に係る学習装置は、第１態様に係る学習装置において、前記更新部は、前記入力文に対応する正解の出力文と前記生成部により生成された出力文との誤差を用いて前記生成モデルを学習させることにより前記生成モデルを更新する。
【００１２】
第３態様に係る学習装置は、第１態様又は第２態様に係る学習装置において、前記生成部は、前記入力文の中間表現を生成すると共に前記出力文を中間表現で出力し、前記復元部は、中間表現で表された前記出力文から前記復元文を生成し、前記更新部は、中間表現で表された前記入力文と、中間表現で表された前記復元文と、の誤差を用いて前記生成モデル及び前記復元モデルの少なくとも一方を学習させることにより前記生成モデル及び前記復元モデルの少なくとも一方を更新する。
【００１３】
第４態様に係る学習装置は、第３態様に係る学習装置において、前記復元モデルは、中間表現で表された前記出力文からＧｕｍｂｅｌ−Ｓｏｆｔｍａｘ関数を用いて生成した単語を取得し、取得した単語の分散表現に基づいて、中間表現で表された前記復元文を生成する。
【００１４】
第５態様に係る学習装置は、第１〜第４態様の何れかの態様に係る学習装置において、前記更新部は、前記入力文と前記復元文との誤差を用いて前記生成モデル及び前記復元モデルを学習させることにより前記生成モデル及び前記復元モデルを更新する。
【００１５】
第６態様に係る学習装置は、第１〜第５態様の何れかの態様に係る学習装置において、前記生成モデルは、前記入力文に含まれる単語に重み付けして前記出力文を生成するアテンション機構付きエンコーダデコーダモデルである。
【００１６】
第７態様に係る学習装置は、第１〜第６態様の何れかの態様に係る学習装置において、前記更新部は、前記生成部に入力された入力文と、前記復元部で復元された復元文と、前記生成部に入力された入力文と異なる少なくとも１つ以上の入力文と、を入力とし、各々の入力文と復元文とがペアである確率を各々算出するモデルを用いて、前記生成部に入力された入力文と前記復元部で復元された復元文とがペアである確率の誤差を算出し、算出した誤差を用いて前記生成モデル及び前記復元モデルを学習させることにより前記生成モデル及び前記復元モデルを更新する。
【００１７】
第８態様に係る学習装置は、第１〜第７態様の何れかの態様に係る学習装置において、前記復元部は、前記出力文に含まれる単語のうち、単語の重要度が予め定めた重要度以上の単語から前記入力文を復元する処理、及び、前記復元文に含まれる単語のうち、単語の重要度が予め定めた重要度以上の単語から入力文を復元する処理の少なくとも一方を実行する。
【００１８】
第９態様に係る学習装置は、第８態様に係る学習装置において、前記復元部は、ｔｆ−ｉｄｆを用いて前記出力文に含まれる単語の重要度を算出する。
【００１９】
第１０態様に係る学習装置は、第８態様に係る学習装置において、前記単語の重要度をアテンション機構付きの学習モデルを用いて学習する。
【００２０】
第１１態様に係る学習装置は、第１〜第１０態様の何れかの態様に係る学習装置において、  前記生成モデルは、前記入力文よりも短い出力文を生成する。
【００２１】
第１２態様に係る学習プログラムは、コンピュータを、第１〜第１１態様の何れかの態様に記載の学習装置の各部として機能させるためのプログラムである。
【００２２】
第１３態様に係る文生成装置は、入力文から、前記入力文の内容に関連し且つ前記入力文と異なる出力文を生成する生成モデルであって、請求項１〜１０の何れか１項に記載の学習装置により学習された生成モデルを用いて、前記入力文から前記出力文を生成する生成部と、前記出力文から前記入力文を復元する復元モデルであって、請求項１〜１０の何れか１項に記載の学習装置により学習された復元モデルを用いて、前記出力文から前記入力文を復元する復元部と、前記出力文及び前記復元部により復元された復元文の少なくとも一方を出力する出力部と、を備える。
【００２３】
第１４態様に係る文生成装置は、第１３態様に係る文生成装置において、前記生成部は、複数の出力文を生成し、前記出力部は、前記複数の出力文と、前記複数の出力文の各々に対応した前記復元文と、を出力する。
【００２４】
第１５態様に係る文生成装置は、第１３態様又は第１４態様に係る文生成装置において、前記復元部は、前記入力文と前記復元文との誤差が閾値以下の復元文のみを出力する。
【００２５】
第１６態様に係る文生成装置は、第１５態様に係る文生成装置において、前記閾値を受け付ける閾値受付部を備える。
【００２６】
第１７態様に係る文生成装置は、第１３〜第１６態様の何れかの態様に係る文生成装置において、前記復元部は、入力文を受け付け、受け付けた入力文に対応する単語を出力する。
【００２７】
第１８態様に係る文生成装置は、第１３〜第１７態様の何れかの態様に係る文生成装置において、前記出力文の修正を受け付ける修正受付部を備え、前記復元部は、前記修正受付部が受け付けた修正が反映された前記出力文から前記入力文を復元する。
【００２８】
第１９態様に係る文生成装置は、第１３〜第１８態様の何れかの態様に係る文生成装置において、  前記入力文に含まれる単語のうち注目すべき注目単語を受け付ける注目単語受付部を備え、前記生成部は、生成された前記出力文のうち、前記注目単語受付部が受け付けた注目単語が含まれる出力文を出力する。
【００２９】
第２０態様に係る文生成装置は、第１９態様に係る文生成装置において、前記注目単語受付部は、複数の前記注目単語を優先度と共に受け付け、前記生成部は、複数の前記注目単語が前記優先度で重み付けされた入力文から前記出力文を生成する。
【００３０】
第２１態様に係る文生成装置は、第１３〜第２０態様の何れかの態様に係る文生成装置において、前記生成部は、生成された前記出力文のうち、前記復元文に含まれる単語の組み合わせの少なくとも一部が異なる出力文を選択して出力する。
【００３１】
第２２態様に係る文生成プログラムは、コンピュータを、第１３〜第２１態様の何れかの態様に記載の文生成装置の各部として機能させるためのプログラムである。
【発明の効果】
【００３２】
第１及び第１２態様によれば、入力文から、入力文の内容に関連し且つ入力文と異なる出力文を生成する場合に、出力文が汎用的な表現になってしまうのを抑制することができる、という効果を有する。
【００３３】
第２態様によれば、入力文に対応する正解の出力文と生成部により生成された出力文との誤差を用いて生成モデルを学習させない場合と比較して、生成される出力文の精度が向上する、という効果を有する。
【００３４】
第３態様によれば、中間表現を用いずに生成モデル及び復元モデルの少なくとも一方を学習する場合と比較して、生成モデル及び復元モデルの少なくとも一方の学習が容易となる、という効果を有する。
【００３５】
第４態様によれば、中間表現で表された出力文をＧｕｍｂｅｌ−Ｓｏｆｔｍａｘ関数を用いずに生成した単語から、中間表現で表された復元文を生成する場合と比較して、復元モデルの学習を効率的に行うことができる、という効果を有する。
【００３６】
第５態様によれば、入力文と復元文との誤差を用いて生成モデル及び復元モデルの一方のみを学習させる場合と比較して、生成される出力文の精度が向上する、という効果を有する。
【００３７】
第６態様によれば、アテンション機構付きではないエンコーダデコーダモデルを用いる場合と比較して、より入力文の特徴が表された出力文を生成することができる、という効果を有する。
【００３８】
第７態様によれば、複数の入力文と復元文とがペアである確率を考慮せずに生成モデル及び復元モデルを学習させる場合と比較して、生成される出力文の精度が向上する、という効果を有する。
【００３９】
第８態様によれば、単語の重要度を考慮せずに入力文を復元する場合と比較して、より出力文が汎用的な表現になってしまうのを抑制することができる、という効果を有する。
【００４０】
第９態様によれば、より重要な単語が含まれる出力文が生成されやすくなる、という効果を有する。
【００４１】
第１０態様によれば、重要な単語を自動的に求めることができる、という効果を有する。
【００４２】
第１１態様によれば、入力文の特徴を端的に表した出力文を生成できる、という効果を有する。
【００４３】
第１３態様及び第２２態様によれば、入力文から、入力文の内容に関連し且つ入力文と異なる出力文を生成する場合に、出力文が汎用的な表現になってしまうのを抑制することができる、という効果を有する。
【００４４】
第１４態様によれば、１つの出力文しか生成しない場合と比較して、所望の出力文を選択しやすくなる、という効果を有する。
【００４５】
第１５態様によれば、入力文と復元文との誤差が閾値を超える復元文も出力する場合と比較して、余計な復元文が出力されるのを抑制できる、という効果を有する。
【００４６】
第１６態様によれば、閾値が固定の場合と比較して、復元の度合いをユーザーが調整できる、という効果を有する。
【００４７】
第１７態様によれば、復元部が入力文を受け付けない場合と比較して、ユーザーが入力文と異なる出力文を作成する際の参考にすることができる、という効果を有する。
【００４８】
第１８態様によれば、出力文の修正を受け付けない場合と比較して、所望の出力文を生成しやすくなる、という効果を有する。
【００４９】
第１９態様によれば、注目単語を受け付けない場合と比較して、より注目単語が含まれる出力文が生成されやすくなる、という効果を有する。
【００５０】
第２０態様によれば、注目単語の優先度を受け付けない場合と比較して、所望の出力文を生成しやすくなる、という効果を有する。
【００５１】
第２１態様によれば、復元文に含まれる単語の組み合わせを考慮しない場合と比較して、単語の組み合わせが類似する出力文が出力されるのを抑制することができる、という効果を有する。
【図面の簡単な説明】
【００５２】
【図１】情報処理装置の構成を示す概略構成図である。
【図２】情報処理装置が学習装置として機能する場合の機能ブロック図である。
【図３】学習処理のフローチャートである。
【図４】情報処理装置が文生成処理装置として機能する場合の機能ブロック図である。
【図５】文生成処理のフローチャートである。
【図６】受付画面の一例を示す図である。
【図７】キャッチコピーを表示した画面の一例を示す図である。
【図８】キャッチコピーを修正後の画面の一例を示す図である。
【図９】複数のキャッチコピーを表示した画面の一例を示す図である。
【図１０】注目単語を設定する画面の一例を示す図である。
【図１１】キャッチコピーを入力文として受け付ける画面の一例を示す図である。
【図１２】キャッチコピーから生成した単語を表示した画面の一例を示す図である。
【発明を実施するための形態】
【００５３】
以下、図面を参照して、本発明を実施するための形態を詳細に説明する。
【００５４】
図１は、情報処理装置１０の構成図である。情報処理装置１０は、後述する学習装置としての機能及び文生成装置としての機能を有する。
【００５５】
図１に示すように、情報処理装置１０は、一般的なコンピュータを含む装置であり、例えばパーソナルコンピュータ等で構成される。
【００５６】
図１に示すように、情報処理装置１０は、コントローラ１２を備える。コントローラ１２は、ＣＰＵ（Central Processing Unit）１２Ａ、ＲＯＭ（Read Only Memory）１２Ｂ、ＲＡＭ（Random Access Memory）１２Ｃ、不揮発性メモリ１２Ｄ、及び入出力インターフェース（Ｉ／Ｏ）１２Ｅを備える。そして、ＣＰＵ１２Ａ、ＲＯＭ１２Ｂ、ＲＡＭ１２Ｃ、不揮発性メモリ１２Ｄ、及びＩ／Ｏ１２Ｅがバス１２Ｆを介して各々接続されている。
【００５７】
また、Ｉ／Ｏ１２Ｅには、操作部１４、表示部１６、通信部１８、及び記憶部２０が接続されている。
【００５８】
操作部１４は、例えばマウス及びキーボードを含んで構成される。
【００５９】
表示部１６は、例えば液晶ディスプレイ等で構成される。
【００６０】
通信部１８は、外部装置とデータ通信を行うためのインターフェースである。
【００６１】
記憶部２０は、ハードディスク等の不揮発性の記憶装置で構成され、後述する学習プログラムＰ１、文生成プログラムＰ２等を記憶する。ＣＰＵ１２Ａが記憶部２０に記憶された学習プログラムＰ１を読み込んで実行した場合は学習装置として機能する。また、ＣＰＵ１２Ａが記憶部２０に記憶された文生成プログラムＰ２を読み込んで実行した場合は文生成装置として機能する。
【００６２】
次に、情報処理装置１０が学習装置として機能する場合におけるＣＰＵ１２Ａの機能構成について説明する。
【００６３】
図２に示すように、ＣＰＵ１２Ａは、機能的には、生成部３０、復元部３２、第１の更新部３４、及び第２の更新部３６を備える。なお、第１の更新部３４及び第２の更新部３６は、更新部の一例である。
【００６４】
生成部３０は、入力文から、入力文の内容に関連し且つ入力文と異なる出力文を生成する生成モデルを用いて、出力文を生成する。
【００６５】
本実施形態では、生成モデルは、入力文よりも短い出力文を生成する場合について説明する。なお、入力文よりも短い出力文としては、例えば入力文の特徴を端的に表したキャッチコピー、入力文を要約した要約文、及び入力文のタイトル等が挙げられるが、これらに限られるものではない。本実施形態では、生成部３０が、出力文としてキャッチコピーを生成する場合について説明する。
【００６６】
生成部３０は、記憶部２０に記憶された学習データ３８から入力文を取得する。学習データ３８には、入力文３８Ａと正解の出力文（キャッチコピー）３８Ｂとの組み合わせが大量に含まれている。
【００６７】
生成部３０が用いる生成モデルは、本実施形態では、一例として入力文に含まれる単語に重み付けして出力文を生成するアテンション機構付きのエンコーダデコーダモデルである。また、本実施形態で用いるエンコーダデコーダモデルは、例えばＲＮＮ（Recurrent Neural Network：再帰型ニューラルネットワーク）に基づく学習モデルである。
【００６８】
具体的には、生成部３０は、中間表現生成部４０、エンコーダ４２、デコーダ４４、中間表現生成部４６、及びＳｏｆｔｍａｘ層４８を備える。
【００６９】
中間表現生成部４０は、所謂埋め込み（ｅｍｂｅｄｄｉｎｇ）層として機能し、記憶部２０から学習データ３８に含まれる入力文３８Ａを構成する単語ｘ１、ｘ２、・・・ｘｎ（ｎは単語数）を取得し、取得した入力文を構成する単語の中間表現を生成する。そして、中間表現生成部４０は、生成した各単語の中間表現をエンコーダ４２に出力する。
【００７０】
また、中間表現生成部４０は、生成した各単語の中間表現の平均値（Ａｖｅｒａｇｅ  Ｐｏｏｌｉｎｇ）を算出し、算出した値をＤｏｂｊとして第２の更新部３６に出力する。なお、中間表現生成部４０は、各単語の中間表現の平均値ではなく合計値を算出してもよい。
【００７１】
エンコーダ４２は、中間表現生成部４０で生成された各単語の中間表現をエンコードしてデコーダ４４に出力する。
【００７２】
デコーダ４４は、エンコーダ４２から出力された情報に基づいて、１単語ずつキャッチコピーの中間表現を生成する。また、デコーダ４４は、アテンション機構として、エンコーダ４２から出力された各単語の中間表現に重み付けしてキャッチコピーの中間表現を生成する。
【００７３】
このように、生成部３０は、入力文の中間表現を生成すると共に出力文を中間表現で出力する。
【００７４】
中間表現生成部４６は、埋め込み（ｅｍｂｅｄｄｉｎｇ）層として機能し、記憶部２０から学習データ３８に含まれる正解の出力文３８Ｂを構成する単語ｙ１、ｙ２、・・・ｙｎ（ｎは単語数）を取得する。そして、中間表現生成部４６は、取得した出力文を構成する単語ｙ１、ｙ２、・・・ｙｎの中間表現を生成し、デコーダ４４に出力する。
【００７５】
Ｓｏｆｔｍａｘ層４８は、デコーダ４４から出力されたキャッチコピーの中間表現を単語ｘ’１、ｘ’２、・・・ｘ’ｎ（ｎは単語数）に変換して第１の更新部３４に出力すると共に、所謂Ｓｏｆｔｍａｘ関数を用いてデコーダ４４から出力されたキャッチコピーの正解らしさを表す確率を算出する。
【００７６】
なお、エンコーダ４２、デコーダ４４、及びアテンション機構は例えば同時に学習され、キャッチコピーを生成する際はビームサーチを用いて事後確率の高いキャッチコピーを得る。また、エンコーダ４２及びデコーダ４４の内部構造としては、例えばBidirectional Gated Recurrent Unit (GRU) が用いられる。
【００７７】
復元部３２は、生成部３０により生成された出力文から入力文を復元する復元モデルを用いて、出力文から入力文を復元する。
【００７８】
具体的には、復元部３２は、ＧｕｍｂｅｌＳｏｆｔｍａｘ層５０、中間表現生成部５２、及び全結合層５４を備える。
【００７９】
ＧｕｍｂｅｌＳｏｆｔｍａｘ層５０は、生成部３０のデコーダ４４から出力されたキャッチコピーの各単語の中間表現を、所謂ＧｕｍｂｅｌＳｏｆｔｍａｘ関数を用いて復元文を構成する単語ｙ’１、ｙ’２、・・・ｙ’ｎ（ｎは単語数）に変換し、中間表現生成部５２に出力する。
【００８０】
中間表現生成部５２は、ＧｕｍｂｅｌＳｏｆｔｍａｘ層５２から出力されたキャッチコピーの各単語ｙ’１、ｙ’２、・・・ｙ’ｎの中間表現を生成し、生成した中間表現の平均値（Ａｖｅｒａｇｅ  Ｐｏｏｌｉｎｇ）を算出して全結合層５４へ出力する。なお、各単語の中間表現の平均値ではなく合計値を算出してもよい。このように、復元部３２における復元モデルは、中間表現で表された出力文からＧｕｍｂｅｌ−Ｓｏｆｔｍａｘ関数を用いて生成した単語を取得し、取得した単語の分散表現に基づいて、中間表現で表された復元文を生成する。なお、中間表現生成部５２は、本実施形態では一例としてＣＮＮ（Convolutional Neural Network：畳み込みニューラルネットワーク）に基づく学習モデルを用いる。
【００８１】
全結合層５４は、中間表現生成部５２から出力されたキャッチコピーの中間表現の平均値を線形変換し、線形変換した値をＤｏｕｔとして第２の更新部３６に出力する。このように、復元部３２は、中間表現で表された出力文から復元文を生成する。
【００８２】
なお、復元部３２は、生成部３０から出力された出力文に含まれる単語のうち、単語の重要度が予め定めた重要度以上の単語から入力文を復元するようにしてもよい。具体的には、生成部３０のデコーダ４４から出力されたキャッチコピーの各単語の中間表現のうち、ＧｕｍｂｅｌＳｏｆｔｍａｘ層５０には、予め定めた重要度以上の単語の中間表現のみ入力するようにしてもよい。また、復元文に含まれる単語のうち、単語の重要度が予め定めた重要度以上の単語から入力文を復元するようにしてもよい。また、単語の重要度をアテンション機構付きの学習モデルを用いて学習するようにしてもよい。
【００８３】
なお、重要度を算出する際には、ｔｆ−ｉｄｆを用いて出力文に含まれる単語の重要度を算出してもよい。具体的には、学習データ３８に含まれる全ての入力文に含まれる全ての単語について、ｔｆ−ｉｄｆを算出し、重要度とする。
【００８４】
ここで、ｔｆ（Term Frequency）は、単語の出現頻度を表すパラメータである。例えば入力文Ａに含まれる単語Ｘのｔｆは、入力文Ａに含まれる単語Ｘの出現回数を、入力文Ａに含まれる全単語の出現回数の和で除算することにより算出される。
【００８５】
また、ｉｄｆ（Inverse Document Frequency）は、逆文書頻度を表し、単語が他の入力文に出現する回数が少ないほど値が大きくなり、単語が他の入力文に出現する回数が多いほど値が小さくなる。
【００８６】
そして、ｔｆ−ｉｄｆは、ｔｆとｉｄｆを乗算した値である。従って、或る入力文での出現回数は多いが他の入力文には出現していない単語のｔｆ−ｉｄｆは大きくなり、それ以外の単語のｔｆ−ｉｄｆは相対的に小さくなる．
【００８７】
第１の更新部３４は、入力文３８Ａに対応する正解の出力文３８Ｂと生成部３０から出力された出力文との誤差Ｌ１を用いて生成モデルを学習させることにより生成モデルを更新する。なお、第１の更新部３４は省略してもよい。
【００８８】
第２の更新部３６は、入力文と復元部３２により復元された復元文との誤差Ｌ２を用いて生成部３０で用いられる生成モデル及び復元部３２で用いられる復元モデルを学習させることにより生成モデル及び復元モデルを更新する。具体的には、誤差Ｌ２は、生成部３０の中間表現生成部４０で算出された値Ｄｏｂｊと、復元部３２の全結合層５４から出力された値Ｄｏｕｔと、の差分である。
【００８９】
なお、第２の更新部３６は、生成部３０に入力された入力文と、復元部３２で復元された復元文と、生成部３０に入力された入力文と異なる少なくとも１つ以上の入力文と、を入力とし、各々の入力文と復元文とがペアである確率を各々算出するモデルを用いて、生成部３０に入力された入力文と復元部３２で復元された復元文とがペアである確率の誤差を算出し、算出した誤差を用いて生成モデル及び復元モデルを学習させることにより生成モデル及び復元モデルを更新してもよい。
【００９０】
また、本実施形態では、第２の更新部３６は、生成モデル及び復元モデルを学習して更新する場合について説明するが、生成モデル及び復元モデルの何れか一方を学習して更新してもよい。
【００９１】
次に、情報処理装置１０が学習装置として機能する場合にＣＰＵ１２Ａで実行される学習処理について、図３に示すフローチャートを参照して説明する。図３に示す学習処理は、ユーザーの操作により学習処理の実行が指示されると実行される。ＣＰＵ１２Ａは、学習処理の実行が指示されると、記憶部２０に記憶された学習プログラムＰ１を読み込んで実行する。
【００９２】
ステップＳ１００では、ＣＰＵ１２Ａが、生成部３０として、記憶部２０に記憶された学習データ３８を参照し、入力文３８Ａを取得する。
【００９３】
ステップＳ１０２では、ＣＰＵ１２Ａが、生成部３０として、ステップＳ１００で取得した入力文３８Ａから出力文としてキャッチコピーを生成する。
【００９４】
ステップＳ１０４では、ＣＰＵ１２Ａが、復元部３２として、ステップＳ１０２で生成されたキャッチコピーから入力文を復元し、復元文を生成する。
【００９５】
ステップＳ１０６では、ＣＰＵ１２Ａが、第１の更新部３４として、入力文３８Ａに対応する正解の出力文３８ＢとステップＳ１０２で生成した出力文との誤差Ｌ１を算出する。
【００９６】
ステップＳ１０８では、ＣＰＵ１２Ａが、第１の更新部３４として、ステップＳ１０６で算出した誤差Ｌ１を用いて生成モデルのパラメータを学習させることにより生成モデルを更新する。
【００９７】
ステップＳ１１０では、ＣＰＵ１２Ａが、第２の更新部３６として、ステップＳ１００で取得した入力文の中間表現とステップＳ１０４で復元された復元文の中間表現との誤差Ｌ２を算出する。
【００９８】
ステップＳ１１２では、ＣＰＵ１２Ａが、第２の更新部３６として、ステップＳ１１０で算出した誤差Ｌ２を用いて生成モデルのパラメータ及び復元モデルのパラメータを学習させることにより生成モデル及び復元モデルを更新する。
【００９９】
ステップＳ１１４では、学習を終了する終了条件を満たすか否かを判定する。ここで、終了条件は、例えば予め定めた数の入力文３８Ａについてキャッチコピーの生成を実行した場合としてもよいし、入力文３８Ａの全てについてキャッチコピーの生成を実行した場合としてもよい。
【０１００】
そして、終了条件を満たす場合は本ルーチンを終了する。一方、終了条件を満たさない場合はステップＳ１００へ戻って未処理の入力文を取得し、上記と同様の処理を繰り返す。
【０１０１】
このように、本実施形態では、キャッチコピーから入力文を復元する復元モデルを用いて、キャッチコピーから入力文を復元し、入力文と復元文との誤差を用いて生成モデル及び復元モデルを学習させる。このため、キャッチコピーが汎用的な表現になってしまうのが抑制され、入力文に固有の内容を表すキャッチコピーが生成される。
【０１０２】
例えば、入力文が「ＡＩ／ＩＣＴ領域において新規サービスの開発に携わってもらいます。Ｐｙｔｈｏｎを利用したコーディングの経験者を募集します。」であった場合に、従来では、生成されるキャッチコピーが「エンジニア募集！」、「ＩＴ技術者急募！」等の汎用的な表現になりやすかった。これに対し、本実施形態に係る情報処理装置１０が学習装置として機能することにより学習された生成モデルによれば、例えば「あなたの力が必要です！Ｐｙｔｈｏｎが書けるエンジニア募集！」、「独立に向けた修行に最適！ＡＩ領域の新サービスに携わるエンジニア！」等のように、汎用的な表現ではなく、入力文に固有の内容を表すキャッチコピーが生成される。
【０１０３】
なお、ステップＳ１０８及びステップＳ１１２において、次式により算出した誤差Ｌに基づいて生成モデル及び復元モデルを学習してもよい。
Ｌ＝Ｌ１＋λ×Ｌ２
【０１０４】
ここで、λは、誤差Ｌ１及び誤差Ｌ２の学習度合いを制御するためのパラメータである。λは、予め定めた値としてもよいし、ユーザーが任意の値を設定できるようにしてもよい。
【０１０５】
次に、情報処理装置１０が文生成装置として機能する場合におけるＣＰＵ１２Ａの機能構成について説明する。
【０１０６】
図４に示すように、ＣＰＵ１２Ａは、機能的には、生成部３０、復元部３２、出力部６０、及び受付部６２を備える。受付部６２は、閾値受付部、修正受付部、及び注目単語受付部の一例である。
【０１０７】
生成部３０は、前述したように情報処理装置１０を学習装置として機能させることにより学習された生成モデルを用いて、入力文から出力文を生成する。なお、出力文は、図２のＳｏｆｔｍａｘ層４８から出力される。
【０１０８】
復元部３２は、前述したように情報処理装置１０を学習装置として機能させることにより学習された復元モデルを用いて、出力文から入力文を復元する。
【０１０９】
出力部６０は、生成部３０により生成された出力文及び復元部３２により復元された復元文の少なくとも一方を出力する。なお、本実施形態では、生成部３０により生成された出力文及び復元部３２により復元された復元文の少なくとも一方を表示部１６に出力する場合について説明するが、通信部１８を介して外部装置に出力するようにしてもよいし、記憶部２０に出力して記憶させてもよい。
【０１１０】
受付部６２は、閾値受付部として機能する。受付部６２の閾値受付部として機能する場合、受付部６２は、復元部３２が、入力文と復元文との誤差が閾値以下の復元文のみを出力する場合における閾値を受け付ける。ここで、誤差とは、前述した誤差Ｌ２であり、例えば復元部３２により算出される。
【０１１１】
また、受付部６２は、修正受付部として機能する。受付部６２が修正受付部として機能する場合、受付部６２は、生成部３０が生成した出力文の修正を受け付ける。
【０１１２】
また、受付部６２は、注目単語受付部として機能する。受付部６２が修正受付部として機能する場合、受付部６２は、入力文に含まれる単語のうち注目すべき注目単語を受け付ける。この場合、生成部３０は、生成された出力文のうち、受付部６２が受け付けた注目単語が含まれる出力文を出力する。
【０１１３】
次に、情報処理装置１０が文生成装置として機能する場合にＣＰＵ１２Ａで実行される学習処理について、図５に示すフローチャートを参照して説明する。図５に示す文生成処理は、ユーザーの操作により文生成処理の実行が指示されると実行される。ＣＰＵ１２Ａは、文生成処理の実行が指示されると、記憶部２０に記憶された文生成プログラムＰ２を読み込んで実行する。
【０１１４】
ステップＳ２００では、ＣＰＵ１２Ａが、受付部６２として、図６に示すような受付画面を表示部１６に表示させる。図６に示す受付画面は、入力文を入力する入力欄７２及びキャッチコピーの生成を指示するための生成ボタン７４を備える。ユーザーは、キャッチコピーの元となる入力文を入力欄７２に入力して生成ボタン７４を押下することにより、キャッチコピーの生成を指示する。
【０１１５】
ステップＳ２０２では、ＣＰＵ１２Ａが、受付部６２として、入力文を受け付けたか、すなわち生成ボタン７４が押下されたか否かを判定する。そして、生成ボタン７４が押下された場合はステップＳ２０４へ移行し、生成ボタン７４が押下されていない場合はステップＳ２１０へ移行する。
【０１１６】
ステップＳ２０４では、ＣＰＵ１２Ａが、生成部３０として、入力欄７２に入力された入力文から出力文としてキャッチコピーを生成する。
【０１１７】
ステップＳ２０６では、ＣＰＵ１２Ａが、復元部３２として、ステップＳ２０４で生成されたキャッチコピーから入力文を復元する。
【０１１８】
ステップＳ２０８では、ＣＰＵ１２Ａが、出力部６０として、ステップＳ２０４で生成したキャッチコピー及びステップＳ２０６でキャッチコピーから入力文を復元した復元文を表示部１６に表示させる。なお、本実施形態では、キャッチコピー及び復元文の両方を表示部１６に表示させる場合について説明するが、キャッチコピーのみ又は復元文のみを表示部１６に表示させてもよい。
【０１１９】
図７には、ステップＳ２０４で生成したキャッチコピー及びステップＳ２０６で復元した復元文を表示部１６に表示させる場合の画面例を示した。図７の例では、入力欄７２に「ＡＩ／ＩＣＴ領域において新規サービスの開発に携わってもらいます。Ｐｙｔｈｏｎを利用したコーディングの経験者を募集します。」という入力文が入力されている。そして、「あなたの力が必要です！Ｐｙｔｈｏｎが書けるエンジニア募集！」というキャッチコピーが出力欄７８に表示される共に、「Ｐｙｔｈｏｎ」、「エンジニア」、「新規サービス」という復元文が復元欄８０に表示された場合を示した。
【０１２０】
ここで、生成されたキャッチコピーをユーザーが修正したい場合がある。この場合、図７に示すように、修正ボタン８２を押下することにより、出力欄７８に表示されたキャッチコピーの修正を受け付けても良い。この場合、ユーザーによる出力欄７８に表示されたキャッチコピーの修正が終了すると、修正が反映されたキャッチコピーから入力文を復元した復元文を復元欄８０に表示するようにしてもよい。
【０１２１】
図８には、キャッチコピーを修正した場合の例を示した。図８は、出力欄７８に表示されたキャッチコピーの「エンジニア募集」の前に「ＡＩ」の文字を追加する修正が行われ、修正後のキャッチコピーを再度復元した結果、復元欄８０に「ＡＩ」が追加された場合の例である。このように、キャッチコピーを修正すると、これに対応して復元文がどのように変化したかが判る。
【０１２２】
なお、複数のキャッチコピーを生成し、複数のキャッチコピーと、複数のキャッチコピーの各々に対応した復元文と、を表示部１６に表示するようにしてもよい。
【０１２３】
図９には、２つのキャッチコピーと、各々のキャッチコピーに対応した復元文と、を表示部１６に表示した例を示した。図９の例では、入力欄７２に入力された入力文に対して生成された第１のキャッチコピー「あなたの力が必要です！Ｐｙｔｈｏｎが書けるエンジニア募集！」が出力欄７８−１に表示されている。また、第１のキャッチコピーに対応する復元文として「Ｐｙｔｈｏｎ」、「エンジニア」が復元欄８０−１に表示されている。また、入力欄７２に入力された入力文に対して生成された第２のキャッチコピー「福利厚生充実！裁量もってがんばれる方募集！」が出力欄７８−２に表示されている。また、第２のキャッチコピーに対応する復元文として「自由」、「ワークライフバランス」が復元欄８０−２に表示されている。これにより、ユーザーは複数のキャッチコピーから最適なキャッチコピーを選択しやすくなる。
【０１２４】
また、入力文と復元文との誤差Ｌ２が閾値以下の復元文のみを表示部１６に表示させるようにしてもよい。この場合、ユーザーの設定による閾値を受付部６２が受け付けるようにしてもよい。例えば閾値が小さくなるに従って、よりキャッチコピーの内容が限定的となる。このように閾値をユーザーにより設定可能とすることで復元の度合いをユーザーが調整可能となる。
【０１２５】
また、生成された複数の出力文のうち、復元文に含まれる単語の組み合わせの少なくとも一部が異なる出力文を選択して表示部１６に表示するようにしてもよい。
【０１２６】
例えば、図６の入力欄７２に入力された入力文に対して、第１のキャッチコピーとして「ＡＩで未来の世界を一緒に作りましょう！」が生成され、第２のキャッチコピーとして「新サービス立ち上げ！Ｃｏｍｍｉｔしまくろう！」が生成され、第３のキャッチコピーとして「あなたの力が必要です！Ｐｙｔｈｏｎが書けるエンジニア募集！」が生成されたとする。そして、第１のキャッチコピーから復元された復元文が「ＡＩ」、「世界」、「イノベーション」であり、第２のキャッチコピーから復元された復元文が「エンジニア」、「新規サービス」であり、第３のキャッチコピーから復元された復元文が「Ｐｙｔｈｏｎ」、「エンジニア」、「新規サービス」であったとする。この場合、復元文の重複が最も少ない組み合わせは第１のキャッチコピーと第３のキャッチコピーの組み合わせである。従って、第１〜第３のキャッチコピーの全てを表示部１６に表示するのではなく、第１のキャッチコピー及び第３のキャッチコピーを表示部１６に表示するようにしてもよい。
【０１２７】
ステップＳ２１０では、ユーザーの操作により文生成処理の終了が指示されたか否かを判定し、終了が指示された場合は本ルーチンを終了し、終了が指示されていない場合はステップＳ２０２へ移行する。
【０１２８】
なお、入力文に含まれる単語のうち注目すべき注目単語を受付部６２が受け付けてもよい。この場合、複数の注目単語を優先度と共に受け付けるようにしてもよい。図１０には、注目単語を受け付ける受付画面の例を示した、図１０に示すように、受付画面には、入力文を入力する入力欄７２の他に、注目単語を入力する複数の注目単語入力欄８３、注目単語の優先度を入力する複数の優先度入力欄８４が設けられている。図１０の例では、ユーザーが、入力欄７２に入力された入力文に含まれる単語のうち、注目単語として「ＡＩ」を注目単語入力欄８３に入力すると共に、「ＡＩ」について最も高い優先度である「１」を優先度入力欄８４に入力している。また、ユーザーは、他の注目単語として「Ｐｙｔｈｏｎ」を注目単語入力欄８３に入力すると共に、優先度「２」を優先度入力欄８４に入力している。この場合、ユーザーが生成ボタン７４を押下してキャッチコピーの生成を指示すると、生成されたキャッチコピーのうち、受付部６２が受け付けた注目単語「ＡＩ」、「Ｐｙｔｈｏｎ」が含まれるキャッチコピーが出力される。
【０１２９】
また、キャッチコピーを入力文として受け付け、受け付けた入力文に対応する単語を復元文として出力するようにしてもよい。例えば図１１には、ユーザーが「あなたの力が必要です！Ｐｙｔｈｏｎが書けるエンジニア募集！」というキャッチコピーを入力欄８６に入力した場合を示した。この場合、ユーザーが単語生成ボタン８８を押下すると、図１２に示すように、生成された単語が単語欄９０に表示される。図１２の例では、「Ｐｙｔｈｏｎ」、「エンジニア」、「新規サービス」という単語が単語欄９０に表示された例を示した。
【０１３０】
このように、キャッチコピーを入力すると、入力したキャッチコピーに対応する単語が表示されるので、ユーザーがキャッチコピーを作る際の参考となる。
【０１３１】
以上、実施の形態を説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。発明の要旨を逸脱しない範囲で上記実施の形態に多様な変更又は改良を加えることができ、該変更又は改良を加えた形態も本発明の技術的範囲に含まれる。
【０１３２】
また、上記実施の形態は、クレーム（請求項）にかかる発明を限定するものではなく、また実施の形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。前述した実施の形態には種々の段階の発明が含まれており、開示される複数の構成要件の組み合わせにより種々の発明が抽出される。実施の形態に示される全構成要件から幾つかの構成要件が削除されても、効果が得られる限りにおいて、この幾つかの構成要件が削除された構成が発明として抽出され得る。
【０１３３】
また、上記実施の形態では、学習プログラム及び文生成プログラムが記憶部２０に予めインストールされている場合について説明したが、本発明はこれに限定されるものではない。例えば、学習プログラム及び文生成プログラムが、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）等の記憶媒体に格納されて提供される形態、又はネットワークを介して提供される形態としてもよい。
【０１３４】
さらに、上記実施の形態では、学習処理及び文生成処理を、プログラムを実行することにより、コンピュータを利用してソフトウェア構成により実現する場合について説明したが、本発明はこれに限定されるものではない。例えば、学習処理及び文生成処理を、ハードウェア構成や、ハードウェア構成とソフトウェア構成の組み合わせによって実現する形態としてもよい。
【０１３５】
その他、上記実施の形態で説明した情報処理装置１０の構成（図１参照。）は一例であり、本発明の主旨を逸脱しない範囲内において不要な部分を削除したり、新たな部分を追加したりしてもよいことは言うまでもない。
【０１３６】
また、上記実施の形態で説明した学習プログラム及び文生成プログラムの処理の流れ（図３、５参照）も一例であり、本発明の主旨を逸脱しない範囲内において不要なステップを削除したり、新たなステップを追加したり、処理順序を入れ替えたりしてもよいことは言うまでもない。
【符号の説明】
【０１３７】
１０   情報処理装置
１２   コントローラ
１４   操作部
１６   表示部
１８   通信部
２０   記憶部
３０   生成部
３２   復元部
３４   第１の更新部
３６   第２の更新部
３８   学習データ
３８Ａ 入力文
３８Ｂ 出力文
４０   中間表現生成部
４２   エンコーダ
４４   デコーダ
４６   中間表現生成部
４８   Ｓｏｆｔｍａｘ層
５０   ＧｕｍｂｅｌＳｏｆｔｍａｘ層
５２   中間表現生成部
５４   全結合層
６０   出力部
６２   受付部
【図１】
2020140469.tif 000003
【図２】
2020140469.tif 000004
【図３】
2020140469.tif 000005
【図４】
2020140469.tif 000006
【図５】
2020140469.tif 000007
【図６】
2020140469.tif 000008
【図７】
2020140469.tif 000009
【図８】
2020140469.tif 000010
【図９】
2020140469.tif 000011
【図１０】
2020140469.tif 000012
【図１１】
2020140469.tif 000013
【図１２】
2020140469.tif 000014