(57)【要約】      （修正有）【課題】制限字数を超える要約が過大評価されない学習を実現する学習プログラム、学習方法及び学習装置を提供する。【解決手段】学習装置１０は、システム要約および参照要約の間で算出する単語の重複度に基づいてモデルを学習する際に、システム要約のうち制限字数内の文まで重複度の算出に用い、システム要約のうち制限字数を超える部分が重複度の算出対象から除外する。この制限字数内の文の、入力文に対応する参照要約を正解とした評価、を用いて、生成モデルの学習を行う。【選択図】図１
2019016239.tif 000002
【特許請求の範囲】
【請求項１】
入力文より要約文を生成する要約文の生成モデルの学習プログラムであって、
入力文および制限字数に基づき前記生成モデルにより生成された要約文のうち前記制限字数内の文の、前記入力文に対応する参照要約を正解とした評価、を用いて、前記生成モデルの学習を行う、
処理をコンピュータに実行させることを特徴とする学習プログラム。
【請求項２】
前記生成された要約文の前記制限字数を超えた文字数を損失として、前記生成モデルの学習を行う、ことを特徴とする請求項１に記載の学習プログラム。
【請求項３】
前記生成された要約文の前記制限字数を超えた文字数が多くなるにしたがって前記損失を大きく設定する、ことを特徴とする請求項２に記載の学習プログラム。
【請求項４】
前記生成された要約文の前記制限字数に足りない文字数を損失として、前記生成モデルの学習を行う、ことを特徴とする請求項１または２に記載の学習プログラム。
【請求項５】
入力文より要約文を生成する要約文の生成モデルの学習方法であって、
入力文および制限字数に基づき前記生成モデルにより生成された要約文のうち前記制限字数内の文の、前記入力文に対応する参照要約を正解とした評価、を用いて、前記生成モデルの学習を行う、
処理をコンピュータが実行することを特徴とする学習方法。
【請求項６】
入力文より要約文を生成する要約文の生成モデルの学習装置であって、
入力文および制限字数に基づき前記生成モデルにより生成された要約文のうち前記制限字数内の文の、前記入力文に対応する参照要約を正解とした評価、を用いて、前記生成モデルの学習を行う学習部、
を有することを特徴とする学習装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、学習プログラム、学習方法及び学習装置に関する。
【背景技術】
【０００２】
Ｗｅｂサイトや新聞記事などの文書から要約文を生成する自動要約にニューラルネットワークなどの機械学習が利用されることがある。たとえば、入力文をベクトル化するＲＮＮ（Recurrent  Neural  Networks）エンコーダと、入力文のベクトルを参照して要約文の単語の予測を繰り返すＲＮＮデコーダとが接続されたモデルが要約文の生成に用いられる。
【０００３】
このようなモデルを学習する方法の一例として、学習サンプルの入力文に対応する正解の要約文である参照要約の単語ごとにモデルのパラメータの更新に用いる損失を算出するものがある。たとえば、モデル学習の際には、ＲＮＮデコーダは、入力文のベクトル、１時刻前の正解の単語及びＲＮＮデコーダが文末記号と呼ばれるＥＯＳを出力するまでの残り文字数などを入力とし、ＥＯＳを出力するまで時刻ごとに単語の確率分布を繰り返し計算する。ここで言う「ＥＯＳ」は、「End  of  Sentence」の略称である。このように時刻ごとに計算される単語の確率分布と、当該時刻における正解の単語とを比較することにより損失が計算される。例えば、１時刻目に計算される単語の確率分布は、参照要約に含まれる単語列のうち先頭の単語と比較される。また、２時刻目に計算される単語の確率分布は、参照要約の先頭から２番目の単語と比較される。
【０００４】
上記のモデル学習が行われる場合、要約文の語数の制限はある程度は満たされる一方で、ＲＮＮデコーダが出力する要約文と正解の参照要約との間で文意が同じであっても単語の語順が異なる場合には、損失が生じる評価となる。
【０００５】
また、モデル学習の他の一例として、語順の違いを不問とし、単語の重複度によりモデルのパラメータを更新しようとする論文も存在する。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Yuta  Kikuchi,  Graham  Neubig,  Ryohei  Sasano,  Hiroya  Takamura,  Manabu  Okumura著  「Controlling  Output  Length  in  Neural  Encoder-Decoders」  EMNLP  2016
【非特許文献２】Ayana,  Shiqi  Shen,  Yu  Zhao,  Zhiyuan  Liu,  Maosong  Sun著  「Neural  Headline  Generation  with  Sentence-wise  Optimization」  Submitted  on  7  Apr  2016
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記の論文では、学習の際には要約文の字数はモデルの評価に影響を与えない。その一方で、上記の論文では、学習結果として得られたモデルを利用した要約文生成の際に字数の制限を設ける結果、要約文として主要な単語が、制限字数内に存在しない可能性が生じる。たとえば、学習の際に、正解の参照要約の字数を超える要約文であっても、単語の重複度が高ければ評価が高くなるモデル学習が行われる。この結果、制限字数を超える要約が過大評価されてしまう場合もある。
【０００８】
１つの側面では、本発明は、制限字数を超える要約が過大評価されない学習を実現できる学習プログラム、学習方法及び学習装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
一態様では、学習プログラムは、入力文より要約文を生成する要約文の生成モデルの学習プログラムであって、入力文および制限字数に基づき前記生成モデルにより生成された要約文のうち前記制限字数内の文の、前記入力文に対応する参照要約を正解とした評価、を用いて、前記生成モデルの学習を行う、処理をコンピュータに実行させる。
【発明の効果】
【００１０】
１つの側面では、本発明は、制限字数を超える要約が過大評価されない学習の実現が可能となる。
【図面の簡単な説明】
【００１１】
【図１】図１は、実施例１に係る学習装置の機能的構成を示すブロック図である。
【図２】図２は、入力文の一例を示す図である。
【図３Ａ】図３Ａは、参照要約の一例を示す図である。
【図３Ｂ】図３Ｂは、システム要約の一例を示す図である。
【図３Ｃ】図３Ｃは、システム要約の一例を示す図である。
【図４Ａ】図４Ａは、参照要約の一例を示す図である。
【図４Ｂ】図４Ｂは、システム要約の一例を示す図である。
【図４Ｃ】図４Ｃは、システム要約の一例を示す図である。
【図４Ｄ】図４Ｄは、システム要約の一例を示す図である。
【図５】図５は、第１のモデル学習の一例を示す図である。
【図６】図６は、第１のモデル学習の一例を示す図である。
【図７】図７は、第１のモデル学習の一例を示す図である。
【図８】図８は、第２のモデル学習の一例を示す図である。
【図９】図９は、重複度の算出方法の一例を示す図である。
【図１０】図１０は、誤差付きの重複度の算出方法の一例を示す図である。
【図１１】図１１は、誤差付きの重複度の算出方法の一例を示す図である。
【図１２】図１２は、実施例１に係る学習処理の手順を示すフローチャートである。
【図１３】図１３は、実施例１及び実施例２に係る学習プログラムを実行するコンピュータのハードウェア構成例を示す図である。
【発明を実施するための形態】
【００１２】
以下に添付図面を参照して本願に係る学習プログラム、学習方法及び学習装置について説明する。なお、この実施例は開示の技術を限定するものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【実施例１】
【００１３】
図１は、実施例１に係る学習装置の機能的構成を示すブロック図である。図１に示す学習装置１０は、Ｗｅｂサイトや新聞記事などの各種の文書から要約文を生成するモデルを学習するものである。
【００１４】
上記の背景技術の欄で説明した通り、学習サンプルの入力文に対応する正解の参照要約の単語ごとにモデルのパラメータの更新に用いる損失を算出する場合、参照要約と語順が異なるが文意は類似する要約文の評価が過小評価されることがある。
【００１５】
このようなモデル学習の失敗事例を図２及び図３Ａ〜図３Ｃを用いて説明する。図２は、入力文の一例を示す図である。図３Ａは、参照要約の一例を示す図である。図３Ｂ及び図３Ｃは、システム要約の一例を示す図である。以下では、学習サンプルに含まれる正解の要約文のことを「参照要約」と記載し、モデルが入力文から生成する要約文のことを「システム要約」と記載する場合がある。
【００１６】
ここでは、一例として、モデル学習の際に、図２に示す入力文２０及び図３Ａに示す参照要約３０のペアが学習サンプルとして入力される事例を例に挙げる。このとき、ＲＮＮ（Recurrent  Neural  Networks）エンコーダ及びＲＮＮデコーダが接続されたモデルによって入力文２０から図３Ｂに示すシステム要約３０Ｂや図３Ｃに示すシステム要約３０Ｃが生成される場合、次のような評価が行われる。
【００１７】
すなわち、図３Ａに示す参照要約３０及び図３Ｂに示すシステム要約３０Ｂの間では、先頭から末尾までの各位置で単語が一致する。図３Ａ及び図３Ｂには、一例として、参照要約３０及びシステム要約３０Ｂの先頭から５番目に位置する単語が太字により示されている。たとえば、システム要約３０Ｂの先頭から５番目に位置する単語が予測される際には、図３Ｂに示すように、ＲＮＮデコーダが出力する入力文２０の単語の確率分布のうち単語「ＡＩ」の確率が最高となる。また、先頭から５番目に位置する参照要約３０の単語も、図３Ａに示すように、「ＡＩ」である。このように参照要約３０に含まれる単語ごとに当該単語の位置に対応する位置のシステム要約３０Ｂの単語が一致する場合、損失は「０」となる。
【００１８】
一方、図３Ａに示す参照要約３０及び図３Ｃに示すシステム要約３０Ｃは、文意は同一であるが、参照要約３０及びシステム要約３０Ｃの間で先頭から８番目までの単語の語順が異なる。図３Ａ及び図３Ｃには、一例として、参照要約３０及びシステム要約３０Ｃの先頭から５番目の単語が太字により示されている。たとえば、システム要約３０Ｃの先頭から５番目に位置する単語が予測される際には、図３Ｃに示すように、ＲＮＮデコーダが出力する入力文２０の単語の確率分布のうち単語「コールセンター」の確率が最高となる。その一方で、先頭から５番目に位置する参照要約３０の単語は、図３Ａに示すように、「ＡＩ」である。このように参照要約３０及びシステム要約３０Ｃの間で語順が入れ替わることにより単語の配置が異なる場合、システム要約３０Ｃが参照要約３０と同一の文意を有する場合であっても、損失が生じる。
【００１９】
これらのことから、システム要約３０Ｂ及びシステム要約３０Ｃの間で異なる評価がなされることになる。しかしながら、システム要約３０Ｂ及びシステム要約３０Ｃの文意は同一である。それ故、要約という側面から言えば、同一の評価がなされなければ適切とは言えず、システム要約３０Ｃはシステム要約３０Ｂに比べて過小評価されている。
【００２０】
また、上記の背景技術の欄で説明した通り、語順の違いを不問とし、単語の重複度によりモデルのパラメータを更新する場合、制限字数を超える要約が過大評価されることがある。
【００２１】
このようなモデル学習の失敗事例を図４Ａ〜図４Ｄを用いて説明する。図４Ａは、参照要約の一例を示す図である。図４Ｂ〜図４Ｄは、システム要約の一例を示す図である。ここでは、一例として、モデルの学習の際に、図２に示す入力文２０及び図４Ａに示す参照要約４０のペアが学習サンプルとして入力される事例を例に挙げる。このとき、ＲＮＮエンコーダ及びＲＮＮデコーダが接続されたモデルによって入力文２０から図４Ｂ〜図４Ｄに示すシステム要約４０Ｂ〜４０Ｄが生成される場合、次のような評価が行われる。
【００２２】
すなわち、図４Ａに示す参照要約４０及び図４Ｂに示すシステム要約４０Ｂの間では、語順が一致し、かつ単語の集合も一致する。このように参照要約４０及びシステム要約４０Ｂの間で単語の集合が一致するので、損失は「０」となる。また、図４Ａに示す参照要約４０及び図４Ｃに示すシステム要約４０Ｃの間では、語順は異なるが、単語の集合が一致する。このように参照要約４０及びシステム要約４０Ｃの間で単語の集合が一致するので、損失は「０」となる。また、図４Ａに示す参照要約４０及び図４Ｄに示すシステム要約４０Ｄの間には、システム要約４０Ｄが参照要約４０の単語の集合を包含するという関係がある。それ故、図４Ｄに示すシステム要約４０Ｄの字数が図４Ａに示す参照要約４０の字数を超えるにもかかわらず、損失は「０」となる。
【００２３】
このように、システム要約４０Ｂ〜システム要約４０Ｄの間で同一の評価がなされることになる。しかしながら、システム要約４０Ｄは、参照要約４０の字数を超えるので、要約という側面から言えば、システム要約４０Ｄは、システム要約４０Ｂ及びシステム要約４０Ｃよりも低い評価でなければ適切とは言えない。それ故、システム要約４０Ｄは、過大評価されている。
【００２４】
これらのことから、本実施例に係る学習装置１０は、モデルが生成するシステム要約と学習サンプルの参照要約の間で単語の重複度を評価する際に、システム要約のうち制限字数内の文まで評価の対象とする一方で制限字数を超える部分を評価の対象から除外する。これによって、参照要約と語順が異なるが文意は類似するシステム要約３０Ｂが過小評価される事態を抑制しつつ、制限字数を超えるシステム要約４０Ｄが制限字数の超過に伴う重複度の増加により過大評価を受ける事態を抑制するモデル学習を実現する。
【００２５】
［学習装置１０の機能的構成］
図１に示す学習装置１０は、上記のモデル学習を実行するコンピュータである。
【００２６】
一実施形態として、学習装置１０は、パッケージソフトウェアやオンラインソフトウェアとして上記のモデル学習を実現する学習プログラムを所望のコンピュータにインストールさせることによって実装できる。このように上記の学習プログラムをコンピュータに実行させることにより、コンピュータを学習装置１０として機能させることができる。ここで言うコンピュータは、任意の情報処理装置であってよい。たとえば、デスクトップ型またはノート型のパーソナルコンピュータやワークステーションの他、スマートフォン、携帯電話機やＰＨＳ（Personal  Handyphone  System）などの移動体通信端末、さらには、ＰＤＡ（Personal  Digital  Assistants）などのスレート端末などがその範疇に含まれる。また、ユーザが使用する端末装置をクライアントとし、当該クライアントに上記のモデル学習に関するサービスを提供するサーバ装置として実装することもできる。例えば、学習装置１０は、複数の学習サンプルを含む学習データ、または、学習データをネットワークもしくは記憶メディアを介して呼び出すことができる識別情報を入力とし、当該学習データに対する上記のモデル学習の実行結果を出力する学習サービスを提供するサーバ装置として実装される。この場合、学習装置１０は、Ｗｅｂサーバとして実装することとしてもよいし、アウトソーシングによって上記のモデル学習に関するサービスを提供するクラウドとして実装することとしてもかまわない。
【００２７】
図１に示すように、学習装置１０は、学習データ記憶部１１と、第１のモデル記憶部１２Ａと、第２のモデル記憶部１２Ｂと、第１の取得部１３Ａと、第２の取得部１３Ｂと、第１の学習部１４と、第２の学習部１５とを有する。なお、学習装置１０は、図１に示した機能部以外にも既知のコンピュータが有する各種の機能部、例えば各種の入力デバイスや音声出力デバイスなどの機能部を有することとしてもかまわない。
【００２８】
図１に示す第１の取得部１３Ａ、第２の取得部１３Ｂ、第１の学習部１４及び第２の学習部１５などの機能部は、ＧＰＧＰＵ（General-Purpose  computing  on  Graphics  Processing  Units）やＣＰＵ（Central  Processing  Unit）、ＭＰＵ（Micro  Processing  Unit）などのハードウェアプロセッサにより仮想的に実現される。すなわち、プロセッサがＲＡＭ（Random  Access  Memory）等のメモリ上に上記のモデル学習を実現する学習プログラムをプロセスとして展開することにより、上記の機能部が仮想的に実現される。ここでは、プロセッサの一例として、ＧＰＧＰＵやＣＰＵ、ＭＰＵを例示したが、汎用型および特化型を問わず、任意のプロセッサにより上記の機能部が実現されることとしてもかまわない。この他、上記の機能部は、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などのハードワイヤードロジックによって実現されることとしてもかまわない。
【００２９】
また、図１に示す学習データ記憶部１１、第１のモデル記憶部１２Ａ及び第２のモデル記憶部１２Ｂなどの機能部には、ＨＤＤ（Hard  Disk  Drive）、光ディスクやＳＳＤ（Solid  State  Drive）などの記憶装置を採用できる。なお、記憶装置は、必ずしも補助記憶装置でなくともよく、各種の半導体メモリ素子、例えばＲＡＭ、ＥＰＰＲＯＭやフラッシュメモリなども採用できる。
【００３０】
ここで、図１には、第２の学習部１５におけるモデルの学習速度を向上させる側面から、第１の学習部１４にモデルのパラメータを学習する前処理を実行させてから第１の学習部１４により学習されたパラメータを用いて第２の学習部１５に上記のモデル学習を実行させる場合を例示するが、必ずしも第１の学習部１４による前処理が行われずともかまわない。例えば、第１の学習部１４による前処理をスキップし、第２の学習部１５に初期化時のパラメータを用いて上記のモデル学習を実行させることとしてもかまわない。以下では、第１の学習部１４により実行される前処理となるモデル学習のことを「第１のモデル学習」と記載し、第２の学習部１５により実行される上記のモデル学習のことを「第２のモデル学習」と記載する場合がある。
【００３１】
学習データ記憶部１１は、学習データを記憶する記憶部である。ここで、学習データには、一例として、Ｄ個の学習サンプル、いわゆる学習事例が含まれる。さらに、学習サンプルには、入力文ｘおよび参照要約ｙのペアが含まれる。なお、図１には、あくまで一例として、第１の学習部１４及び第２の学習部１５に同一の学習データが用いられる場合を例示するが、第１の学習部１４及び第２の学習部１５の間で異なる学習データがモデル学習に用いられることとしてもかまわない。
【００３２】
第１のモデル記憶部１２Ａ及び第２のモデル記憶部１２Ｂは、いずれもモデルに関する情報を記憶する記憶部である。
【００３３】
一実施形態として、第１のモデル記憶部１２Ａ及び第２のモデル記憶部１２Ｂには、ニューラルネットワークを形成する入力層、隠れ層及び出力層の各層のニューロンやシナプスなどのモデルの層構造を始め、各層の重みやバイアスなどのモデルのパラメータを含むモデル情報が記憶される。ここで、第１の学習部１４によりモデル学習が実行される前の段階では、第１のモデル記憶部１２Ａには、モデルのパラメータとして、乱数により初期設定されたパラメータが記憶される。また、第１の学習部１４によりモデル学習が実行された後の段階では、第１のモデル記憶部１２Ａには、第１の学習部１４により学習されたモデルのパラメータが保存される。また、第２の学習部１５によりモデル学習が実行された後の段階では、第２のモデル記憶部１２Ｂには、第２の学習部１５により学習されたモデルのパラメータが保存される。
【００３４】
第１の取得部１３Ａ及び第２の取得部１３Ｂは、いずれも学習サンプルを取得する処理部である。
【００３５】
一実施形態として、第１の取得部１３Ａ及び第２の取得部１３Ｂは、学習サンプルをカウントするループカウンタｄの値を初期化する。そして、第１の取得部１３Ａ及び第２の取得部１３Ｂは、学習データ記憶部１１に記憶されたＤ個の学習サンプルのうちループカウンタｄに対応する学習サンプルを取得する。その後、第１の取得部１３Ａ及び第２の取得部１３Ｂは、ループカウンタｄをインクリメントし、ループカウンタｄの値が学習サンプルの総数Ｄと等しくなるまで、学習データ記憶部１１から学習サンプルを取得する処理を繰り返し実行する。これら第１の取得部１３Ａ及び第２の取得部１３Ｂは、学習サンプルを第１の学習部１４または第２の学習部１５のいずれに入力するかが異なる以外は同様の処理を実行する。
【００３６】
第１の学習部１４は、上記の前処理となる第１のモデル学習を実行する処理部である。ここでは、第１のモデル学習の一例として、対数尤度の最適化と呼ばれるモデル学習が実行される場合を例示する。
【００３７】
第１の学習部１４は、図１に示すように、ＲＮＮエンコーダを実行するエンコーダ実行部１４Ａ、ＲＮＮデコーダを実行するデコーダ実行部１４Ｂおよび入力文から要約文を生成するモデルのパラメータを更新する更新部１４Ｃを有する。
【００３８】
これらエンコーダ実行部１４Ａ、デコーダ実行部１４Ｂおよび更新部１４Ｃの処理内容を図５〜図７を用いて説明する。図５〜図７は、第１のモデル学習の一例を示す図である。図５〜図７には、第１の取得部１３Ａにより図２に示す入力文２０および図３Ａに示す参照要約３０のペアが学習サンプルとして取得される場合が示されている。
【００３９】
図５に示すように、エンコーダ実行部１４Ａは、第１の取得部１３Ａにより取得された入力文２０に含まれる単語列をベクトル化する。すなわち、エンコーダ実行部１４Ａは、エンコーダ実行部１４Ａが使用するワークエリアに入力文２０の単語数ｎに対応するｎ個のＬＳＴＭ（Long  Short-Term  Memory）１４ａ−１〜１４ａ−ｎを展開する。その上で、エンコーダ実行部１４Ａは、入力文２０に含まれる先頭の単語から順に入力文２０の単語を当該単語の位置に対応するＬＳＴＭ１４ａに入力すると共に１つ前のＬＳＴＭ１４ａの出力を入力する。このような入力を先頭の単語「当社」に対応するＬＳＴＭ１４ａ−１から末尾の単語「。」に対応するＬＳＴＭ１４ａ−ｎまで繰り返すことにより、入力文２０のベクトルが得られる。このようにＲＮＮエンコーダにより生成された入力文２０のベクトルがＲＮＮデコーダへ入力される。
【００４０】
その後、デコーダ実行部１４Ｂは、入力文２０のベクトル、１時刻前の正解の単語及びＲＮＮデコーダが文末記号と呼ばれるＥＯＳを出力するまでの残り文字数などを入力とし、ＥＯＳを出力するまで時刻ごとに単語の確率分布を繰り返し計算する。
【００４１】
たとえば、参照要約３０の先頭の単語と照合する単語の確率分布を計算する１時刻目には、デコーダ実行部１４Ｂでは、図５に示す動作が行われる。すなわち、図５に示すように、デコーダ実行部１４Ｂは、デコーダ実行部１４Ｂが使用するワークエリアに展開されたＬＳＴＭ１４ｂ−１に対し、ＬＳＴＭ１４ａ−ｎの出力およびＢＯＳ（Begin  Of  Sentence）と呼ばれる文頭記号を入力すると共に参照要約３０の文字数「３７」を残り文字数として入力する。これにより、ＬＳＴＭ１４ｂ−１により１時刻目（ｔ＝１）における単語の確率分布が出力される。この結果、更新部１４Ｃは、１時刻目における単語の確率文と１時刻目の正解の単語「コールセンター」とから損失を算出する。この場合、１時刻目の正解の単語「コールセンター」の確率が１に近く、かつその他の単語の確率が０に近いほど小さい損失が算出される。
【００４２】
また、参照要約３０の先頭から２番目の単語と照合する単語の確率分布を計算する２時刻目には、デコーダ実行部１４Ｂでは、図６に示す動作が行われる。すなわち、図６に示すように、デコーダ実行部１４Ｂは、ＬＳＴＭ１４ｂ−２に対し、ＬＳＴＭ１４ｂ−１の出力および１時刻前の正解の単語「コールセンター」を入力すると共に１時刻目の残り文字数から１時刻目の正解の単語の字数が減算された字数「３０」を２時刻目の残り文字数として入力する。これにより、ＬＳＴＭ１４ｂ−２により１時刻目（ｔ＝２）における単語の確率分布が出力される。この結果、更新部１４Ｃは、２時刻目における単語の確率文と２時刻目の正解の単語「の」とから損失を算出する。この場合、２時刻目の正解の単語「の」の確率が１に近く、かつその他の単語の確率が０に近いほど小さい損失が算出される。
【００４３】
さらに、参照要約３０の先頭から３番目の単語と照合する単語の確率分布を計算する３時刻目には、デコーダ実行部１４Ｂでは、図７に示す動作が行われる。すなわち、図７に示すように、デコーダ実行部１４Ｂは、ＬＳＴＭ１４ｂ−３に対し、ＬＳＴＭ１４ｂ−２の出力および１時刻前の正解の単語「の」を入力すると共に２時刻目の残り文字数から２時刻目の正解の単語の字数が減算された字数「２９」を３時刻目の残り文字数として入力する。これにより、ＬＳＴＭ１４ｂ−３により３時刻目（ｔ＝３）における単語の確率分布が出力される。この結果、更新部１４Ｃは、３時刻目における単語の確率文と３時刻目の正解の単語「問い合わせ」とから損失を算出する。この場合、３時刻目の正解の単語「問い合わせ」の確率が１に近く、かつその他の単語の確率が０に近いほど小さい損失が算出される。
【００４４】
このような処理をＬＳＴＭ１４ｂから文末記号「ＢＯＳ」が出力されるまで繰り返し実行されることにより、更新部１４Ｃは、参照要約３０の単語ごとに損失を算出する。さらに、学習データに含まれる全ての学習サンプルについて参照要約の単語ごとに損失を算出する処理が実行される。このように学習データに含まれる全ての学習サンプルについて参照要約の単語ごとの損失が算出されると、更新部１４Ｃは、下記の式（１）に示す目的関数Ｌｔをパラメータθについて最大化する「対数尤度の最適化」を第１のモデル学習として実行する。ここで、下記の式（１）における確率「ｐ（ｙ｜ｘ；θ）」は、下記の式（２）に示す通り、各時刻における損失の総積によって求まる。なお、下記の式（１）における「Ｄ」は、入力文ｘおよび参照要約ｙを含む学習サンプルの集合を指す。また、下記の式（２）における「ｙ＜ｔ」の「ｔ」は、参照要約における単語の位置を指し、例えば、参照要約の先頭の単語はｙ１で表され，２番目の単語はｙ２で表され，・・・，末尾の単語はｙｔ−１で表される。
【００４５】
【数１】
2019016239.tif 000003
【数２】
2019016239.tif 000004
【００４６】
その後、更新部１４Ｃは、第１のモデル記憶部１２Ａに記憶されたモデルのパラメータを対数尤度の最適化により求められたパラメータθに更新する。このパラメータθの更新は、学習データＤについて所定の回数にわたって繰り返すことができる。このように第１のモデル記憶部１２Ａに保存されたモデルのパラメータが第２の学習部１５により用いられることになる。
【００４７】
図１の説明に戻り、第２の学習部１５は、上記の第２のモデル学習を実行する処理部である。図１に示すように、第２の学習部１５は、エンコーダ実行部１５Ａ、デコーダ実行部１５Ｂ、生成部１５Ｃ、重複度算出部１５Ｄ、誤差算出部１５Ｅ、損失算出部１５Ｆおよび更新部１５Ｇを有する。
【００４８】
ここで、図８を用いて、第２のモデル学習の処理内容を説明する。図８は、第２のモデル学習の一例を示す図である。図８には、第２の取得部１３Ｂにより図２に示す入力文２０および図３Ａに示す参照要約３０のペアが学習サンプルとして取得される場合が示されている。
【００４９】
図８に示すように、エンコーダ実行部１５Ａは、エンコーダ実行部１４Ａと同様、第２の取得部１３Ｂにより取得された入力文２０に含まれる単語列をベクトル化する。すなわち、エンコーダ実行部１５Ａは、エンコーダ実行部１５Ａが使用するワークエリアに入力文２０の単語数ｎに対応するｎ個のＬＳＴＭ１５ａ−１〜１５ａ−ｎを展開する。その上で、エンコーダ実行部１５Ａは、入力文２０に含まれる先頭の単語から順に入力文２０の単語を当該単語の位置に対応するＬＳＴＭ１５ａに入力すると共に１つ前のＬＳＴＭ１５ａの出力を入力する。このような入力を先頭の単語「当社」に対応するＬＳＴＭ１５ａ−１から末尾の単語「。」に対応するＬＳＴＭ１５ａ−ｎまで繰り返すことにより、入力文２０のベクトルが得られる。このようにＲＮＮエンコーダにより生成された入力文２０のベクトルがＲＮＮデコーダへ入力される。
【００５０】
その後、デコーダ実行部１５Ｂは、入力文２０のベクトル、１時刻前に予測された単語及びＲＮＮデコーダがＥＯＳを出力するまでの残り文字数などを入力とし、ＥＯＳを出力するまで時刻ごとに単語の確率分布を繰り返し計算する。
【００５１】
ここで、第２のモデル学習では、参照要約に対するシステム要約の損失は、第１のモデル学習のように、ＲＮＮデコーダの各時刻ごとに算出されない。すなわち、第２のモデル学習では、図８に示すように、文末記号「ＥＯＳ」が出力されるまで各時刻に対応するＬＳＴＭ１５ｂから単語の確率分布に基づいて単語を繰り返して出力させることによりシステム要約が生成される。
【００５２】
たとえば、システム要約の先頭の単語を予測する１時刻目には、デコーダ実行部１５Ｂでは、デコーダ実行部１５Ｂが使用するワークエリアに展開されたＬＳＴＭ１５ｂ−１に対し、ＬＳＴＭ１５ａ−ｎの出力および文頭記号「ＢＯＳ」と共に参照要約３０の文字数「３７」を残り文字数として入力する。ここでは、制限字数の一例として、参照要約の文字数を採用する場合を例示したが、参照要約の文字数よりも短い文字数に制限してもよいし、参照要約の文字数よりも長い文字数に制限することもできる。これにより、ＬＳＴＭ１５ｂ−１によって１時刻目（ｔ＝１）における単語の確率分布が出力される。この単語の確率分布に基づいて、生成部１５Ｃは、システム要約の先頭の単語を抽出する。例えば、生成部１５Ｃは、確率が上位所定数、例えば上位５位までに属する単語の中から１つの単語をランダムにサンプリングする。ここでは、一例として、システム要約の先頭の単語として「コールセンター」がランダムサンプリングされた場合を例に挙げて２時刻目以降の処理について説明する。
【００５３】
続いて、システム要約の先頭から２番目の単語を予測する２時刻目には、デコーダ実行部１５Ｂでは、ＬＳＴＭ１５ｂ−２に対し、ＬＳＴＭ１５ｂ−１の出力および１時刻前の予測結果「コールセンター」と共に１時刻目の残り文字数から１時刻目に予測された単語の字数が減算された字数「３０」を２時刻目の残り文字数として入力する。これにより、ＬＳＴＭ１５ｂ−２によって２時刻目（ｔ＝２）における単語の確率分布が出力される。この単語の確率分布に基づいて、生成部１５Ｃは、上位５位までに属する単語の中から１つの単語をランダムにサンプリングする。
【００５４】
その後、生成部１５Ｃは、ＬＳＴＭ１５ｂ−ｔによりＥＯＳが出力されるまで、システム要約の単語を時刻ごとにランダムサンプリングする。このようなランダムサンプリングによりシステム要約を生成することで、生成部１５Ｃは、１つの入力文につき所定数、例えばＳ個のシステム要約を生成することができる。
【００５５】
ここで、第２のモデル学習では、後述の重複度算出部１５Ｄにより算出されるシステム要約および参照要約の間の単語の重複度に基づいてモデル学習を実行する。たとえば、更新部１５Ｇは、下記の式（３）にしたがって目的関数ＬＭＲＴを最小化するモデルのパラメータθを学習する。下記の式（３）における「Ｐ（ｙ′｜ｘ；θ）」は、パラメータをθとしたときのｙ′の確率を指す。また、下記の式（３）における「Ｄ」は、入力文ｘおよび参照要約ｙを含む学習サンプルの集合を指す。さらに、下記の式（３）における「Ｓ」は、パラメータをθとしたときに入力文ｘから得られるシステム要約の集合の部分集合を指す。また、下記の式（３）における「Δ（ｙ′，ｙ）」は、システム要約ｙ′と参照要約ｙから算出される単語の重複度を指し、ここでは、一例として、ＲＯＵＧＥなどの関数を用いることにより負の利得を得る場合を例に挙げる。
【００５６】
【数３】
2019016239.tif 000005
【００５７】
このように第２のモデル学習に用いられる重複度Δ（ｙ′，ｙ）は、図８に示すように、必ずしもシステム要約に含まれる全ての単語を用いて算出されるとは限らない。すなわち、重複度算出部１５Ｄは、生成部１５Ｃにより生成されるＳ個のシステム要約ごとに、当該システム要約のうち制限字数、例えば参照要約の文字数以内の文を対象に参照要約との間で単語の重複度を算出する。これによって、システム要約のうち制限字数を超える部分の単語、すなわち図８に示すハッチング部分を重複度の算出対象から除外することができる。
【００５８】
例えば、重複度算出部１５Ｄは、下記の式（４）に示すように、システム要約の文字列の先頭から制限字数に対応するｎバイト分の文字列に対応する単語を切り取るｔｒｉｍ関数を含むＲＯＵＧＥ関数にしたがってｎ−ｇｒａｍの重複度を算出できる。
【００５９】
【数４】
2019016239.tif 000006
【００６０】
図９は、重複度の算出方法の一例を示す図である。図９には、上記の式（４）にしたがって重複度Δ（ｙ′，ｙ）が算出される例が示されている。図９に示すように、システム要約ｙ′には、先頭の単語ｙ′１、先頭から２番目の単語ｙ′２、・・・、先頭からｋ−１番目の単語ｙ′ｋ−１、先頭からｋ番目の単語ｙ′ｋ、・・・、末尾の単語ｙ′｜ｙ′｜が含まれる。一方、参照要約ｙには、先頭の単語ｙ１、先頭から２番目の単語ｙ２、・・・、末尾の単語ｙ｜ｙ｜が含まれる。この場合、ｔｒｉｍ（ｙ′，ｂｙｔｅ（ｙ））によってシステム要約ｙ′から参照要約ｙに対応するバイト数の単語、すなわち先頭の単語ｙ′１、先頭から２番目の単語ｙ′２、・・・、先頭からｋ−１番目の単語ｙ′ｋ−１が切り取られる。その上で、ＲＯＵＧＥ（ｔｒｉｍ（ｙ′，ｂｙｔｅ（ｙ）），ｙ）により、システム要約ｙ′の先頭の単語ｙ′１からｋ−１番目の単語ｙ′ｋ−１まで切り出されたｔｒｉｍ（ｙ′，ｂｙｔｅ（ｙ））と、参照要約ｙとの単語の重複度が算出される。このように上記の式（４）にしたがって重複度Δ（ｙ′，ｙ）を算出することで、制限字数を超えるシステム要約ｙ′のｋ番目から末尾までの単語、すなわち単語ｙ′ｋ〜単語ｙ′｜ｙ′｜を重複率の算出対象から除外できる。この結果、制限字数を超えるシステム要約ｙ′のｋ番目から末尾までの単語、すなわち単語ｙ′ｋ〜単語ｙ′｜ｙ′｜に参照要約ｙと重複する単語が含まれることが一因となって、システム要約ｙ′が過大評価されるのを抑制できる。
【００６１】
このように重複度の算出対象をシステム要約の制限字数内の単語に抑えることに加え、下記の式（５）に示す通り、誤差算出部１５Ｅは、システム要約の制限字数に足りない分の長さ、もしくは、システム要約の制限字数を超える分の長さを、重複度にペナルティとして付与する誤差として、算出することもできる。なお、下記の式（５）に示す「Ｃ」は、上記の学習プログラムの開発者やユーザにより設定されるハイパーパラメータを指す。
【００６２】
【数５】
2019016239.tif 000007
【００６３】
図１０は、誤差付きの重複度の算出方法の一例を示す図である。図１０には、上記の式（５）にしたがって誤差付きの重複度Δ（ｙ′，ｙ）が算出される例が示されている。図１０に示す例においても、図９に示す例と同様に、ＲＯＵＧＥ（ｔｒｉｍ（ｙ′，ｂｙｔｅ（ｙ）），ｙ）により、システム要約ｙ′の先頭の単語ｙ′１からｋ−１番目の単語ｙ′ｋ−１まで切り出されたｔｒｉｍ（ｙ′，ｂｙｔｅ（ｙ））と、参照要約ｙとの単語の重複度が算出される。さらに、上記の式（５）に従えば、システム要約および参照要約の間の長さの差の絶対値、例えば｜ｂｙｔｅ（ｙ′）−ｂｙｔｅ（ｙ）｜が誤差として重複度に付与される。たとえば、図１０の例で言えば、システム要約の長さの方が参照要約よりも大きいので、制限字数を超える分の長さｂｙｔｅ（ｙ′）−ｂｙｔｅ（ｙ）が重複度に加算されることにより、誤差付きの重複度Δ（ｙ′，ｙ）が算出される。このように上記の式（５）にしたがってＲＯＵＧＥにより算出される重複度に誤差｜ｂｙｔｅ（ｙ′）−ｂｙｔｅ（ｙ）｜を付与して誤差付きの重複度Δ（ｙ′，ｙ）を算出する。これによって、制限字数に満たないシステム要約および制限字数を超えるシステム要約の損失が高まる結果、文字数が制限字数と一致するシステム要約の評価を高めるモデル学習を実現できる。
【００６４】
また、誤差算出部１５Ｅは、必ずしも制限字数に満たないシステム要約にまで重複度に付与する誤差を算出せずともかまわない。例えば、誤差算出部１５Ｅは、下記の式（６）にしたがって、システム要約が制限字数を超える場合に絞ってシステム要約の制限字数を超える分の長さを誤差として算出することもできる。
【００６５】
【数６】
2019016239.tif 000008
【００６６】
図１１は、誤差付きの重複度の算出方法の一例を示す図である。図１１には、上記の式（６）にしたがって誤差付きの重複度Δ（ｙ′，ｙ）が算出される例が示されている。図１１に示す例においても、図９に示す例と同様に、ＲＯＵＧＥ（ｔｒｉｍ（ｙ′，ｂｙｔｅ（ｙ）），ｙ）により、システム要約ｙ′の先頭の単語ｙ′１からｋ−１番目の単語ｙ′ｋ−１まで切り出されたｔｒｉｍ（ｙ′，ｂｙｔｅ（ｙ））と、参照要約ｙとの単語の重複度が算出される。さらに、システム要約が制限字数を超える場合、ｍａｘ（０，ｂｙｔｅ（ｙ′）−ｂｙｔｅ（ｙ））によって制限字数を超える分の長さｂｙｔｅ（ｙ′）−ｂｙｔｅ（ｙ）が重複度に加算されることにより、誤差付きの重複度Δ（ｙ′，ｙ）が算出される。一方、システム要約が制限字数に満たない場合、ｍａｘ（０，ｂｙｔｅ（ｙ′）−ｂｙｔｅ（ｙ））によって「０」が選択されるので、重複度には誤差が付与されず、重複度がそのままΔ（ｙ′，ｙ）として算出される。これによって、制限字数に満たないシステム要約の損失は高めずに制限字数を超えるシステム要約の損失が高まる結果、制限字数以内のシステム要約の評価を高めるモデル学習が実現できる。
【００６７】
このような誤差付きの重複度Δ（ｙ′，ｙ）が算出された後、損失算出部１５Ｆは、生成部１５Ｃにより生成された所定数、例えばＳ個のシステム要約ごとに、Ｓ個のシステム要約に対する確率の計算結果と、重複度算出部１５Ｄ及び誤差算出部１５Ｅにより算出された誤差付きの重複度Δ（ｙ′，ｙ）とから損失を算出する。さらに、損失算出部１５Ｆは、Ｓ個のシステム要約ごとに算出された損失を合計する計算を実行することにより、Ｓ個のシステム要約に対する損失の和を算出する。
【００６８】
その後、学習データに含まれる全ての学習サンプルについて、Ｓ個のシステム要約に対する損失の和を算出する処理が繰り返し実行される。このように学習データに含まれる全ての学習サンプルについてＳ個のシステム要約に対する損失の和が算出されると、更新部１５Ｇは、上記の式（３）に示す目的関数ＬＭＲＴが最小化されるモデルのパラメータθにモデルのパラメータを更新する。このように更新されたモデルのパラメータが第２のモデル記憶部１２Ｂへ保存される。このパラメータθの更新は、学習データＤについて所定の回数にわたって繰り返すことができる。この結果、第２のモデル記憶部１２Ｂに保存されたモデル情報は、要約文の生成モデルとして提供することができる。
【００６９】
［処理の流れ］
図１２は、実施例１に係る学習処理の手順を示すフローチャートである。図１２に示す学習処理のフローチャートは、第２の学習部１５により実行される第２のモデル学習の手順が図式化されたものである。図１２には、あくまで一例として、上記の式（６）にしたがって誤差付きの重複度が算出される例のフローチャートが示されている。たとえば、第２の学習部１５におけるモデルの学習速度を向上させる側面から、第１の学習部１４による第１のモデル学習を前処理として実行させてから第１の学習部１４により学習されたモデルのパラメータを用いて図１２に示す学習処理を開始することができる。
【００７０】
図１２に示すように、学習データに含まれるＤ個の学習サンプルごとに、ステップＳ１０１〜ステップＳ１０８の処理が実行される。
【００７１】
すなわち、第２の取得部１３Ｂは、学習データ記憶部１１に記憶された学習データに含まれる学習サンプルのうち１つを取得する（ステップＳ１０１）。このようにステップＳ１０１で取得された学習サンプルがエンコーダ実行部１５Ａにより実行されるＲＮＮエンコーダ及びデコーダ実行部１５Ｂにより実行されるＲＮＮデコーダへ入力される。
【００７２】
続いて、生成部１５Ｃは、ＲＮＮデコーダから出力される単語の確率分布に基づいて単語を時刻ごとにランダムサンプリングすることにより、ステップＳ１０１で取得された学習サンプルの入力文に対するＳ個のシステム要約を生成する（ステップＳ１０２）。そして、損失算出部１５Ｆは、ステップＳ１０２で生成されたＳ個のシステム要約に対する確率を算出する（ステップＳ１０３）。
【００７３】
その後、ステップＳ１０２で生成されたＳ個のシステム要約ごとに、下記のステップＳ１０４〜下記のステップＳ１０７の処理が実行される。すなわち、重複度算出部１５Ｅは、上記の式（６）に示すｔｒｉｍ（ｙ′，ｂｙｔｅ（ｙ））にしたがってシステム要約ｙ′から制限字数、例えば参照要約ｙに対応するバイト数の単語を切り出す（ステップＳ１０４）。
【００７４】
その上で、重複度算出部１５Ｅは、上記の式（６）に示すＲＯＵＧＥ（ｔｒｉｍ（ｙ′，ｂｙｔｅ（ｙ）），ｙ）にしたがってステップＳ１０４で切り出されたｔｒｉｍ（ｙ′，ｂｙｔｅ（ｙ））と、参照要約ｙとの単語の重複度を算出する（ステップＳ１０５）。
【００７５】
また、誤差算出部１５Ｆは、上記の式（６）に示すｍａｘ（０，ｂｙｔｅ（ｙ′）−ｂｙｔｅ（ｙ））にしたがってシステム要約ｙ′が制限字数を超える分の長さｂｙｔｅ（ｙ′）−ｂｙｔｅ（ｙ）を誤差として算出する（ステップＳ１０６）。なお、システム要約が制限字数に満たない場合、ｍａｘ（０，ｂｙｔｅ（ｙ′）−ｂｙｔｅ（ｙ））によって「０」が選択されるので、重複度に付与する誤差は「０」と算出される。
【００７６】
これらステップＳ１０５で算出された重複度にステップＳ１０６で算出された誤差が付与されることにより、誤差付きの重複度Δ（ｙ′，ｙ）が導出される。
【００７７】
その後、損失算出部１５Ｆは、ステップＳ１０３で算出されたＳ個のシステム要約に対する確率の計算結果と、誤差付きの重複度Δ（ｙ′，ｙ）とから損失を算出する（ステップＳ１０７）。
【００７８】
ステップＳ１０２で生成されたＳ個のシステム要約ごとに損失が算出されると、損失算出部１５Ｆは、Ｓ個のシステム要約ごとに算出された損失を合計する計算を実行することにより、Ｓ個のシステム要約に対する損失の和を算出する（ステップＳ１０８）。
【００７９】
その後、学習データに含まれる全ての学習サンプルについてＳ個のシステム要約に対する損失の和が算出されると、更新部１５Ｇは、第２のモデル記憶部１２Ｂに記憶されるモデルのパラメータを上記の式（３）に示す目的関数ＬＭＲＴが最小化されるモデルのパラメータθに更新し（ステップＳ１０９）、処理を終了する。
【００８０】
［効果の一側面］
上述してきたように、本実施例に係る学習装置１０は、システム要約および参照要約の間で算出する単語の重複度に基づいてモデルを学習する際に、システム要約のうち制限字数内の文まで重複度の算出に用いる。これによって、システム要約のうち制限字数を超える部分が重複度の算出対象から除外される。したがって、本実施例に係る学習装置１０によれば、参照要約と語順が異なるが文意は類似するシステム要約が過小評価される事態を抑制しつつ、制限字数を超えるシステム要約が制限字数の超過に伴う重複度の増加により過大評価を受ける事態を抑制するモデル学習を実現することが可能となる。
【実施例２】
【００８１】
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。
【００８２】
［分散および統合］
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されておらずともよい。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、第１の学習部１４または第２の学習部１５を学習装置１０の外部装置としてネットワーク経由で接続するようにしてもよい。さらに、第２の学習部１５が有する機能部の一部を学習装置１０の外部装置としてネットワーク経由で接続するようにしてもよい。また、第１の学習部１４および第２の学習部１５を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記の学習装置１０の機能を実現するようにしてもよい。また、第１のモデル記憶部１２Ａに記憶されるモデル情報および第２のモデル記憶部１２Ｂに記憶されるモデル情報の全部または一部を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記の学習装置１０の機能を実現するようにしてもかまわない。
【００８３】
［学習プログラム］
また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図１３を用いて、上記の実施例と同様の機能を有する学習プログラムを実行するコンピュータの一例について説明する。
【００８４】
図１３は、実施例１及び実施例２に係る学習プログラムを実行するコンピュータのハードウェア構成例を示す図である。図１３に示すように、コンピュータ１００は、操作部１１０ａと、スピーカ１１０ｂと、カメラ１１０ｃと、ディスプレイ１２０と、通信部１３０とを有する。さらに、このコンピュータ１００は、ＣＰＵ１５０と、ＲＯＭ１６０と、ＨＤＤ１７０と、ＲＡＭ１８０とを有する。これら１１０〜１８０の各部はバス１４０を介して接続される。
【００８５】
ＨＤＤ１７０には、図１３に示すように、上記の実施例１で示した第２の学習部１５と同様の機能を発揮する学習プログラム１７０ａが記憶される。この学習プログラム１７０ａは、図１に示した第２の学習部１５の各構成要素と同様、統合又は分離してもかまわない。すなわち、ＨＤＤ１７０には、必ずしも上記の実施例１で示した全てのデータが格納されずともよく、処理に用いるデータがＨＤＤ１７０に格納されればよい。
【００８６】
このような環境の下、ＣＰＵ１５０は、ＨＤＤ１７０から学習プログラム１７０ａを読み出した上でＲＡＭ１８０へ展開する。この結果、学習プログラム１７０ａは、図１３に示すように、学習プロセス１８０ａとして機能する。この学習プロセス１８０ａは、ＲＡＭ１８０が有する記憶領域のうち学習プロセス１８０ａに割り当てられた領域にＨＤＤ１７０から読み出した各種データを展開し、この展開した各種データを用いて各種の処理を実行する。例えば、学習プロセス１８０ａが実行する処理の一例として、図１２に示す処理などが含まれる。なお、ＣＰＵ１５０では、必ずしも上記の実施例１で示した全ての処理部が動作せずともよく、実行対象とする処理に対応する処理部が仮想的に実現されればよい。
【００８７】
なお、上記の学習プログラム１７０ａは、必ずしも最初からＨＤＤ１７０やＲＯＭ１６０に記憶されておらずともかまわない。例えば、コンピュータ１００に挿入されるフレキシブルディスク、いわゆるＦＤ、ＣＤ−ＲＯＭ、ＤＶＤディスク、光磁気ディスク、ＩＣカードなどの「可搬用の物理媒体」に学習プログラム１７０ａを記憶させる。そして、コンピュータ１００がこれらの可搬用の物理媒体から学習プログラム１７０ａを取得して実行するようにしてもよい。また、公衆回線、インターネット、ＬＡＮ、ＷＡＮなどを介してコンピュータ１００に接続される他のコンピュータまたはサーバ装置などに学習プログラム１７０ａを記憶させておき、コンピュータ１００がこれらから学習プログラム１７０ａを取得して実行するようにしてもよい。
【００８８】
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
【００８９】
（付記１）入力文より要約文を生成する要約文の生成モデルの学習プログラムであって、
入力文および制限字数に基づき前記生成モデルにより生成された要約文のうち前記制限字数内の文の、前記入力文に対応する参照要約を正解とした評価、を用いて、前記生成モデルの学習を行う、
処理をコンピュータに実行させることを特徴とする学習プログラム。
【００９０】
（付記２）前記生成された要約文の前記制限字数を超えた文字数を損失として、前記生成モデルの学習を行う、ことを特徴とする付記１に記載の学習プログラム。
【００９１】
（付記３）前記生成された要約文の前記制限字数を超えた文字数が多くなるにしたがって前記損失を大きく設定する、ことを特徴とする付記２に記載の学習プログラム。
【００９２】
（付記４）前記生成された要約文の前記制限字数に足りない文字数を損失として、前記生成モデルの学習を行う、ことを特徴とする付記１に記載の学習プログラム。
【００９３】
（付記５）前記生成された要約文の前記制限字数に足りない文字数が多くなるにしたがって前記損失を大きく設定する、ことを特徴とする付記４に記載の学習プログラム。
【００９４】
（付記６）入力文より要約文を生成する要約文の生成モデルの学習方法であって、
入力文および制限字数に基づき前記生成モデルにより生成された要約文のうち前記制限字数内の文の、前記入力文に対応する参照要約を正解とした評価、を用いて、前記生成モデルの学習を行う、
処理をコンピュータが実行することを特徴とする学習方法。
【００９５】
（付記７）前記生成された要約文の前記制限字数を超えた文字数を損失として、前記生成モデルの学習を行う、ことを特徴とする付記６に記載の学習方法。
【００９６】
（付記８）前記生成された要約文の前記制限字数を超えた文字数が多くなるにしたがって前記損失を大きく設定する、ことを特徴とする付記７に記載の学習方法。
【００９７】
（付記９）前記生成された要約文の前記制限字数に足りない文字数を損失として、前記生成モデルの学習を行う、ことを特徴とする付記６に記載の学習方法。
【００９８】
（付記１０）前記生成された要約文の前記制限字数に足りない文字数が多くなるにしたがって前記損失を大きく設定する、ことを特徴とする付記９に記載の学習方法。
【００９９】
（付記１１）入力文より要約文を生成する要約文の生成モデルの学習装置であって、
入力文および制限字数に基づき前記生成モデルにより生成された要約文のうち前記制限字数内の文の、前記入力文に対応する参照要約を正解とした評価、を用いて、前記生成モデルの学習を行う学習部、
を有することを特徴とする学習装置。
【０１００】
（付記１２）前記学習部は、前記生成された要約文の前記制限字数を超えた文字数を損失として、前記生成モデルの学習を行う、ことを特徴とする付記１１に記載の学習装置。
【０１０１】
（付記１３）前記学習部は、前記生成された要約文の前記制限字数を超えた文字数が多くなるにしたがって前記損失を大きく設定する、ことを特徴とする付記１２に記載の学習装置。
【０１０２】
（付記１４）前記学習部は、前記生成された要約文の前記制限字数に足りない文字数を損失として、前記生成モデルの学習を行う、ことを特徴とする付記１１に記載の学習装置。
【０１０３】
（付記１５）前記学習部は、前記生成された要約文の前記制限字数に足りない文字数が多くなるにしたがって前記損失を大きく設定する、ことを特徴とする付記１４に記載の学習装置。
【符号の説明】
【０１０４】
１０    学習装置
１１    学習データ記憶部
１２Ａ  第１のモデル記憶部
１２Ｂ  第２のモデル記憶部
１３Ａ  第１の取得部
１３Ｂ  第２の取得部
１４    第１の学習部
１４Ａ  エンコーダ実行部
１４Ｂ  デコーダ実行部
１４Ｃ  更新部
１５    第２の学習部
１５Ａ  エンコーダ実行部
１５Ｂ  デコーダ実行部
１５Ｃ  生成部
１５Ｄ  重複度算出部
１５Ｅ  誤差算出部
１５Ｆ  損失算出部
１５Ｇ  更新部
【図１】
2019016239.tif 000009
【図２】
2019016239.tif 000010
【図３Ａ】
2019016239.tif 000011
【図３Ｂ】
2019016239.tif 000012
【図３Ｃ】
2019016239.tif 000013
【図４Ａ】
2019016239.tif 000014
【図４Ｂ】
2019016239.tif 000015
【図４Ｃ】
2019016239.tif 000016
【図４Ｄ】
2019016239.tif 000017
【図５】
2019016239.tif 000018
【図６】
2019016239.tif 000019
【図７】
2019016239.tif 000020
【図８】
2019016239.tif 000021
【図９】
2019016239.tif 000022
【図１０】
2019016239.tif 000023
【図１１】
2019016239.tif 000024
【図１２】
2019016239.tif 000025
【図１３】
2019016239.tif 000026