(57)【要約】      （修正有）【課題】適切なテキストの類推を行う。【解決手段】本願に係る学習装置１０は、所定の文章に含まれる単語群を抽出する抽出部４１と、前記単語群に含まれる各単語が前記文章中に出現する順序とともに、各単語が影響を受ける文法構造を重みとして学習するための符号化器と、前記単語群に含まれる各単語と、当該各単語の属性と、当該各単語が前記文章中に出現する順序とを前記文章中における各単語の属性系列とともに前記特徴から復元する復元器とを学習する学習部４２とを有することを特徴とする。【選択図】図２
2019021218.tif 000002
【特許請求の範囲】
【請求項１】
所定の文章に含まれる単語群を抽出する抽出部と、
前記単語群に含まれる各単語が前記文章中に出現する順序とともに、各単語が影響を受ける文法構造を重みとして学習するための符号化器と、前記単語群に含まれる各単語と、当該各単語の属性と、当該各単語が前記文章中に出現する順序とを前記文章中における各単語の属性系列とともに前記特徴から復元する復元器とを学習する学習部と
を有することを特徴とする学習装置。
【請求項２】
前記学習部は、前記単語群に含まれる各単語が前記文章中に出現する順序とともに当該単語群が有する特徴を学習する符号化器、および、前記単語群に含まれる各単語の属性と当該各単語が前記文章中に出現する順序とに基づく各単語の前記所定の文章における重要度に基づいて、前記単語群に含まれる各単語と当該各単語が前記文章中に出現する順序とを前記文章中における各単語の属性系列とともに前記特徴から復元する復元器とを学習する
ことを特徴とする請求項１に記載の学習装置。
【請求項３】
前記学習部は、前記復元器として、前記特徴から前記単語群に含まれる各単語の属性を復元する第１の層であって、入力された情報と、前回出力した情報とに基づいて新たに出力する情報を生成する第１の層と、当該第１の層の出力から前記単語群に含まれる各単語を復元する第２の層とを有する復元器を学習する
ことを特徴とする請求項１または２に記載の学習装置。
【請求項４】
前記学習部は、前記第１の層として、入力された情報と、前回出力した情報とに基づいて新たに出力する情報を生成する第１の層との畳み込みに基づいて、新たに出力する情報を生成する第１の層を有する復元器を学習する
ことを特徴とする請求項３に記載の学習装置。
【請求項５】
前記学習部は、前記第１の層として、ＤＰＣＮ（Deep  Predictive  Coding  Networks）の構造を有する復元器を学習する
ことを特徴とする請求項３または４に記載の学習装置。
【請求項６】
前記学習部は、前記符号化器として、前記単語群に含まれる各単語を入力する第３の層と、各単語の属性を入力する第４の層とを有し、当該第３の層および第４の層の出力から出力する特徴を生成する符号化器を学習する
ことを特徴とする請求項１〜５のうちいずれか１つに記載の学習装置。
【請求項７】
所定の文章に含まれる単語群を抽出する抽出工程と、
前記単語群に含まれる各単語が前記文章中に出現する順序とともに、各単語が影響を受ける文法構造を重みとして学習するための符号化器と、前記単語群に含まれる各単語と、当該各単語の属性と、当該各単語が前記文章中に出現する順序とを前記文章中における各単語の属性系列とともに前記特徴から復元する復元器とを学習する学習工程と
を含むことを特徴とする学習方法で生成される符号化器と復元器とからなるリカレントニューラルネットワークを含むプログラムパラメータ。
【請求項８】
学習装置が実行する学習方法であって、
所定の文章に含まれる単語群を抽出する抽出工程と、
前記単語群に含まれる各単語が前記文章中に出現する順序とともに、各単語が影響を受ける文法構造を重みとして学習するための符号化器と、前記単語群に含まれる各単語と、当該各単語の属性と、当該各単語が前記文章中に出現する順序とを前記文章中における各単語の属性系列とともに前記特徴から復元する復元器とを学習する学習工程と
を含むことを特徴とする学習方法。
【請求項９】
単語群に含まれる各単語が前記文章中に出現する順序とともに、各単語が影響を受ける文法構造を重みとして学習するための符号化器と、
前記単語群に含まれる各単語と、当該各単語の属性と、当該各単語が前記文章中に出現する順序とを前記文章中における各単語の属性系列とともに前記特徴から復元する復元器と
を含み
前記符号化器が有する入力層に入力された所定の文章に関する情報に対し、前記復元器が有する出力層以外の層に属する各要素の出力と、各要素の出力に対する重みとに基づく演算を行うことにより、前記復元器が有する出力層から、前記単語群に含まれる各単語と各単語が前記文章中に出現する順序と前記文章中における各単語の属性系列とを示す情報を出力するよう
コンピュータを機能させるためのモデル。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、学習装置、プログラムパラメータ、学習方法およびモデルに関する。
【背景技術】
【０００２】
従来、入力された情報の解析結果に基づいて、入力された情報と関連する情報を検索もしくは生成し、検索もしくは生成した情報を応答として出力する技術が知られている。このような技術の一例として、入力されたテキストに含まれる単語、文章、文脈を多次元ベクトルに変換して解析し、解析結果に基づいて、入力されたテキストと類似するテキストや、入力されたテキストに続くテキストを類推し、類推結果を出力する自然言語処理の技術が知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−１２７０７７号公報
【非特許文献】
【０００４】
【非特許文献１】“Learning  Phrase  Representations  using  RNN  Encoder−Decoder  for  Statistical  Machine  Translation”，Kyunghyun  Cho,  Bart  van  Merrienboer,  Caglar  Gulcehre,  Dzmitry  Bahdanau,  Fethi  Bougares,  Holger  Schwenk,  Yoshua  Bengio,  arXiv:1406.1078v3  [cs.CL]  3  Sep  2014
【非特許文献２】"Unsupervised  Learning  of  Visual  Structure  using  Predictive  Generative  Networks”  William  Lotter,  Gabriel  Kreiman,  David  Cox  ＜インターネット＞https://arxiv.org/abs/1511.06380
【非特許文献３】"A  Sensitivity  Analysis  of  (and  Practitioners'  Guide  to)  Convolutional  Neural  Networks  for  Sentence  Classification”  Ye  Zhang,  Byron  Wallace  ＜インターネット＞https://arxiv.org/abs/1510.03820
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記の従来技術では、適切なテキストの類推を行うことが難しい。
【０００６】
例えば、上述の従来技術では、入力された単語やテキストと類似する単語やテキスト等を出力しているに過ぎない。このため、例えば、出力対象となる複数の単語が存在する場合に、単語同士の係り受けといった属性系列を考慮して、適切な構造を有する自然な文章を出力することができない。
【０００７】
また、同じ単語が含まれる文章であっても、文章が主として示すトピックは、文章に含まれる各単語の属性と、各単語が出現する順序とに応じて変化すると考えられる。しかしながら、上述の従来技術では、入力された単語やテキストと類似する単語やテキスト等を出力しているに過ぎないため、文章が主として示すトピックを適切に反映させた自然言語処理を実現できない恐れがある。
【０００８】
本願は、上記に鑑みてなされたものであって、適切なテキストの類推を行うことを目的とする。
【課題を解決するための手段】
【０００９】
本願に係る学習装置は、所定の文章に含まれる単語群を抽出する抽出部と、前記単語群に含まれる各単語が前記文章中に出現する順序とともに、各単語が影響を受ける文法構造を重みとして学習するための符号化器と、前記単語群に含まれる各単語と、当該各単語の属性と、当該各単語が前記文章中に出現する順序とを前記文章中における各単語の属性系列とともに前記特徴から復元する復元器とを学習する学習部とを有することを特徴とする。
【発明の効果】
【００１０】
実施形態の一態様によれば、適切なテキストの類推を行うことができる。
【図面の簡単な説明】
【００１１】
【図１】図１は、実施形態に係る学習装置が実行する学習処理の一例を示す図である。
【図２】図２は、実施形態に係る学習装置の構成例を示す図である。
【図３】図３は、実施形態に係る正解データデータベースに登録される情報の一例を示す図である。
【図４】図４は、実施形態に係る属性レイヤの模式的な構造の一例を示す図である。
【図５】図５は、実施形態に係るモデルが言語の畳み込みを行う技術の一例を示す図である。
【図６】図６は、実施形態に係る学習装置が学習するデコーダのバリエーションを説明するための図である。
【図７】図７は、実施形態に係る学習装置が学習するエンコーダのバリエーションを示す図である。
【図８】図８は、実施形態に係る処理の流れの一例を説明するフローチャートである。
【図９】図９は、ハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【００１２】
以下に、本願に係る学習装置、プログラムパラメータ、学習方法およびモデルを実施するための形態（以下、「実施形態」と記載する。）について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る学習装置、プログラムパラメータ、学習方法およびモデルが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【００１３】
［実施形態］
〔１−１．学習装置の一例〕
まず、図１を用いて、学習装置が実行する学習処理の一例について説明する。図１は、実施形態に係る学習装置が実行する学習処理の一例を示す図である。図１では、学習装置１０は、以下に説明する学習処理を実行する情報処理装置であり、例えば、サーバ装置やクラウドシステム等により実現される。
【００１４】
より具体的には、学習装置１０は、インターネット等の所定のネットワークＮ（例えば、図２参照）を介して、任意の利用者が使用する情報処理装置１００、２００と通信可能である。例えば、学習装置１０は、情報処理装置１００、２００との間で、複数の単語（以下、「単語群」と記載する場合がある。）を含む文章の送受信を行う。
【００１５】
なお、情報処理装置１００、２００は、スマートフォンやタブレット等のスマートデバイス、デスクトップＰＣ（Personal  Computer）やノートＰＣ等、サーバ装置等の情報処理装置により実現されるものとする。
【００１６】
〔１−２．学習処理について〕
ここで、情報処理装置１００は、入力された文章に対応する応答を出力する。例えば、情報処理装置１００は、w２v（word2vec）やs２v(sentence2vec)等、単語や文章をベクトル（多次元量）に変換し、変換後のベクトルを用いて入力された文章に対応する応答を出力する。より具体的な例を挙げると、情報処理装置１００は、利用者の発言に含まれる単語群から、異なる分野の単語群であって、利用者の発言に含まれる単語群と同様の概念構造を有する単語群を特定する。このような単語群を文章化して出力した場合には、利用者の発言と概念構造が類似する文章であって、利用者の発言とは異なる分野に属する概念の文章を出力することができるので、利用者のセレンディピティを生じさせることができると考えられる。
【００１７】
しかしながら、文章には、単語群が有する概念以外にも、単語群を接続する係り受け等の各種属性の概念（以下、「属性系列」と記載する。）が含まれるため、このような単語群から適切な構造を有する自然な文章を生成するのは難しい。そこで、学習装置１０は、以下の学習処理と測定処理とを実行する。
【００１８】
例えば、学習装置１０は、文章に含まれる単語群の特徴と、各単語が文章中に出現する順序の特徴とともに、各単語の属性をニューラルネットワーク等のモデルに学習させる。より具体的には、学習装置１０は、情報処理装置２００から受信する正解データを用いて、以下の学習処理を実行する。まず、学習装置１０は、所定の文章に含まれる単語群を抽出する。そして、学習装置１０は、単語群に含まれる各単語が文章中に出現する順序とともにその単語群が有する特徴を学習するエンコーダ（符号化器）と、単語群に含まれる各単語と、各単語の属性と、各単語が文章中に出現する順序とを文章中における各単語の属性系列とともに特徴から復元するデコーダ（復元器）とを学習する。ここで、属性系列は、例えば、係り受けを示す係り受け情報である。
【００１９】
より具体的には、学習装置１０は、正解データとして受信した文章から単語群を抽出する。そして、学習装置１０は、抽出した単語群に含まれる各単語を、文章に出現する順序でエンコーダに入力した際に、エンコーダが出力した特徴から、各単語の属性と各単語とを属性系列とともに、正解データとして受信した文章に出現する順序でデコーダが復元するように、モデル全体の学習を行う。このような学習は、例えば、バックプロパゲーション等の任意の学習手法が採用可能である。
【００２０】
ここで、単語の属性とは、単語の品詞や単語の原型、所定の分類処理により単語を分類した際のクラスタリングの結果等、表面的には表れない単語の性質を示す情報である。すなわち、学習装置１０は、単語群が文章中に出現する順序や属性系列といった表面的な言語情報の特徴（すなわち、意味構造の特徴）のみならず、文章中に現れない単語の性質（すなわち、言語構造の特徴）をも学習する。
【００２１】
このような学習を行ったモデルに、情報処理装置１００から受信した単語群を入力した場合は、単語群に含まれる各単語の属性が考慮された状態で、各単語が文章中に出現する順序で、属性系列とともに復元される。すなわち、モデルは、情報処理装置１００から受信した単語群を含むであろう文章を、各単語の属性を考慮して復元する。この結果、学習装置１０は、単語群に含まれる各単語の属性を考慮した上で、自然な文章を生成することができる。
【００２２】
ここで、文章の構造によっては、文章が主として示す内容（トピック）が変化すると考えられる。例えば、同一の単語群を含む文章であっても、各単語の出願順序が異なる場合は、文章のトピックが変化する場合がある。より具体的な例を挙げると「彼はリンゴが好きです」という文章と「彼が好きなのはリンゴです」という文章とを比較した場合、後者の文章においては、「リンゴ」という目的語が「好き」という動詞よりも後に配置されているため、「リンゴ」という単語がより強調された文章となっている。このように、文章のトピックは、文章に含まれる各単語の属性と、各単語が文章中に出現する相対的な順序（例えば、目的語が動詞よりも前にあるか後ろにあるか等）によって変化すると考えられる。換言すると、文章中に含まれる各単語の重要性は、各単語の属性と、各単語が文章中に出現する順序（以下、「出現順序」と記載する。）とに関連していると考えられる。
【００２３】
そこで、情報処理装置１００は、各単語が出現する順序を考慮した文章の生成を実現するため、以下の学習処理を実行する。まず、学習装置１００は、所定の文章に含まれる単語群を抽出する。そして、学習装置１０は、復元器として、単語群に含まれる各単語の属性と各単語が文章中に出現する順序とに基づく各単語の所定の文章における重要度に基づいて、単語群に含まれる各単語と各単語が文章中に出現する順序とを文章中における各単語の属性系列とともに特徴から復元する復元器を学習する。
【００２４】
このように、学習装置１０は、所定の文章に含まれる単語群を抽出する。また、学習装置１０は、抽出した単語群に含まれる各単語が文章中に出現する順序とともに、各単語が影響を受ける文法構造を重みとして学習するための符号化器の学習を行う。また、学習装置１０は、単語群に含まれる各単語と、各単語の属性と、各単語が文章中に出現する順序とを文章中における各単語の属性系列とともに符号化器が出力する特徴から復元する復元器を学習する。すなわち、学習装置１０は、各単語が影響を受ける文法構造（例えば、文章中に出現する順番）を重みとして学習するためのしくみを畳み込み処理で実現する。
【００２５】
より具体的には、学習装置１０は、各単語の属性と出現順序とに基づく各単語の相対的な重要性をさらに復元器に学習させる。そして、学習装置１０は、文章化の対象となる単語群から、単語群が有する相対的な重要性と各単語の属性とに基づいた順序で各単語が出現する文章を生成する復号器の学習を行う。この結果、学習装置１０は、各単語の相対的な重要性に基づいて、各単語が出現する文章を生成することができるので、文章化の対象となる単語群からより自然な文章を生成することができる。
【００２６】
〔１−３．デコーダの構成について〕
ここで、学習装置１０は、エンコーダが出力した特徴から、各単語の重要度に基づいて、単語群に含まれる各単語と各単語が文章中に出現する順序とを文章中における各単語の属性系列とともに特徴から復元するデコーダであれば、任意の構成を有するデコーダの学習をおこなってよい。例えば、学習装置１０は、エンコーダが出力した特徴から、各単語の属性を復元する属性レイヤと、属性レイヤの出力から、各単語を文章中に出現する順序で復元する単語レイヤとを有するデコーダを学習する。より具体的には、学習装置１０は、エンコーダが出力した特徴から各単語の属性を各単語が文章中に出現する順序で復元する属性レイヤと、エンコーダが出力した特徴と属性レイヤが復元した属性とに基づいて、文章中に出現する順序で各単語を復元する単語レイヤとを有するデコーダを学習する。
【００２７】
ここで、学習装置１０は、属性レイヤとして、単語群に含まれる各単語の属性と各単語が文章中に出現する順序とに基づく各単語の所定の文章における重要度に基づいて、各単語が文章中に出現する順序を復元するレイヤを有するデコーダの学習を行う。すなわち、学習装置１０は、前回の出力と新たな入力とに基づいて、次の単語の属性を重要性に基づいて推定し、推定した属性から次の単語を導出するデコーダーを生成する。このようなデコーダは、例えば、特徴から単語群に含まれる各単語の属性を復元するニューラルネットワークであって、入力された情報と、前回出力した情報とに基づいて新たに出力する情報を生成する機能を有するニューラルネットワークにより実現される。このようなニューラルネットワークは、例えば、ＲＮＮ（Recurrent  Neural  Networks）やＬＳＴＭ（Long  short-term  memory）と呼ばれる構造を有するニューラルネットワークにより実現される。なお、学習装置１０は、全体としてＬＳＴＭの構成を有するデコーダを学習する必要はなく、少なくとも、属性を復元する属性レイヤがＬＳＴＭの構成を有していればよい。
【００２８】
さらに、学習装置１０は、情報の畳み込みを行うニューラルネットワーク、すなわち、ＣＮＮ（Convolutional  Neural  Network）を用いて、新たに出力する情報を生成してもよい。例えば、学習装置１０は、属性レイヤとして、ＬＳＴＭの機能のみならず、ＣＮＮの機能を有するニューラルネットワークを用いてもよい。このようなニューラルネットワークは、例えば、ＤＰＣＮ（Deep  Predictive  Coding  Networks）と呼ばれるニューラルネットワークにより実現可能である（例えば、非特許文献２参照）。また、言語の畳み込みについては、単語群に含まれる各単語を同じ次元数のベクトルに変換し、変換後の各ベクトルの畳み込みを行う技術により実現可能である（例えば、非特許文献３参照）。なお、学習装置１０は、少なくとも、属性を復元する属性レイヤにおいてＤＰＣＮの構造を有するデコーダを学習すればよい。
【００２９】
以下、より具体的なデコーダの構成例について説明する。例えば、モデルのエンコーダおよびデコーダは、ノードの状態を順次遷移させることで、単語群の符号化および復号化を実現する。例えば、エンコーダは、単語を文章中に出現する順（以下、「出現順」と記載する。）でノードに入力することで、単語群の特徴や各単語が文章中に出現する順序とともに、文章中における各単語の重要度を符号化した特徴を生成する。そして、学習装置１０は、エンコーダが出力する特徴をデコーダのノードに入力し、ノードの状態を順次遷移させることで、符号化された単語を、文章中に出現する順序で属性系列とともに復元させることで、単語群の特徴や属性、出現順序に基づく重要度をデコーダに学習させる。
【００３０】
例えば、デコーダは、入力層側から出力層側に向けて、状態レイヤ、属性レイヤ、および単語レイヤを有する。このようなデコーダは、エンコーダの出力を受付けると、状態レイヤが有する１つ又は複数のノードの状態を状態ｈ１へと遷移させる。そして、デコーダは、属性レイヤにて、状態レイヤのノードの状態ｈ１から最初の単語の属性ｚ１を復元するとともに、単語レイヤにて、状態ｈ１と属性ｚ１とから最初の単語ｙ１を属性系列とともに復元し、単語ｙ１と状態ｈ１から状態レイヤのノードの状態を状態ｈ２へと遷移させる。なお、デコーダは、状態レイヤにＬＳＴＭやＤＰＣＮの機能を持たせることで、出力した属性ｚ１を考慮して状態レイヤのノードの状態を状態ｈ２へと遷移させてもよい。続いて、デコーダは、属性レイヤにて、前回復元した属性ｚ１と状態レイヤのノードの現在の状態ｈ２から、２番目の単語の属性ｚ２を復元し、属性ｚ２と前回復元した単語ｙ１とから、２番目の単語ｙ２を属性系列とともに復元する。
【００３１】
すなわち、デコーダは、状態ｈ２を前の状態ｈ１と前回復元した単語ｙ１と前回復元した属性ｚ１とから生成し、属性ｚ２を前の属性ｚ１と状態ｈ２と前回復元した単語ｙ１とから生成し、単語ｙ２を前回復元した単語ｙ１と属性ｚ２と状態ｈ２とから生成する。なお、デコーダは、前回復元した属性ｚ１を考慮せずに、前回の状態ｈ１と前回復元した単語ｙ１とから状態ｈ２を生成してもよい。また、デコーダは、前回復元した単語ｙ１を考慮せずに、前回復元した属性ｚ１と状態ｈ２とから属性ｚ２を生成してもよい。
【００３２】
このようなデコーダにおいて、属性レイヤにＤＰＣＮ等といった再帰型ニューラルネットワークの機能を持たせた状態で、エンコーダに入力された文章を復元するようにデコーダの学習を行った場合、属性レイヤは、文章中における単語の出現順序の特徴を学習することとなる。この結果、デコーダは、前回復元した単語の属性に基づいて、次に復元する単語の属性の予測を行うこととなる。すなわち、デコーダは、文章中における単語の属性の順序を予測することとなる。このようなデコーダは、測定時において単語群が入力された場合に、各単語の属性と予測される出現順序とに応じた単語の重要度を考慮して、文章に含まれる単語と属性系列とを復元することとなる。すなわち、デコーダは、測定時において、単語群に含まれる各単語の重要度に基づいて、文章化の対象となる単語群の属性と、予測される各単語の出現順序とを復元することとなるので、各単語の重要度に応じた文章化を実現することができる。
【００３３】
なお、学習装置１０は、それぞれ異なる種別の属性を復元する複数の属性レイヤを有するエンコーダの学習を行ってもよい。すなわち、学習装置１０は、特徴から単語群に含まれる各単語の属性であって、それぞれ異なる属性を復元する複数の属性レイヤと、複数の属性レイヤの出力から単語群に含まれる各単語を文章に出現する順序で復元する単語レイヤとを有するデコーダの学習を行ってもよい。なお、学習装置１０は、任意の数の属性レイヤを有するデコーダの学習を行ってもよい。
【００３４】
例えば、学習装置１０は、エンコーダが出力した特徴から、単語群に含まれる各単語の品詞を、各単語が文章中に出現する順序で復元する第１の属性レイヤと、エンコーダが出力した特徴から、単語群に含まれる各単語のクラスタリング結果を、各単語が文章中に出現する順序で復元する第２の属性レイヤとを有するデコーダの学習を行ってもよい。なお、このようなデコーダの単語レイヤは、第１の属性レイヤが復元した属性と、第２の属性レイヤが復元した属性と、エンコーダが出力した特徴とから、各単語を文章に含まれる順序で属性系列とともに復元することとなる。なお、このような各属性レイヤは、それぞれ異なるＤＰＣＮにより構成されてもよい。
【００３５】
〔１−４．エンコーダの構成について〕
ここで、学習装置１０は、必須ではないものの、単語群に含まれる各単語の特徴と、各単語が文章中に出現する順序とを、各単語の属性とともに符号化するエンコーダの学習を行ってもよい。すなわち、学習装置１０は、単語群に含まれる各単語の特徴と、各単語が文章中に出現する順序とを、各単語の属性とともにエンコーダに学習させてもよい。
【００３６】
例えば、学習装置１０は、単語群に含まれる各単語を入力するレイヤと、各単語の属性を入力するレイヤとを含むエンコーダを学習する。より具体的には、学習装置１０は、正解データとして取得した所定の文章に含まれる単語群と、単語群に含まれる各単語の属性とを抽出する。そして、学習装置１０は、エンコーダとして、単語群に含まれる各単語を入力する単語レイヤと、各単語の属性を入力する属性レイヤとを有し、単語レイヤおよび属性レイヤの出力から、出力する特徴を生成するエンコーダの学習を行ってもよい。また、学習装置１０は、ＤＰＣＮの構造を有するニューラルネットワークをエンコーダとしてもよく、エンコーダが有する各レイヤごとに、ＤＰＣＮの構造を有するニューラルネットワークを採用してもよい。
【００３７】
〔１−５．トピックレイヤについて〕
また、学習装置１０は、いわゆるトピックモデル（例えば、非特許文献２を参照）を用いて、単語群から文章の生成を行ってもよい。例えば、学習装置１０は、エンコーダが出力した特徴から、所定の文章が示すトピックを復元するトピックレイヤを有するモデルを生成する。そして、学習装置１０は、トピックレイヤの出力から、単語群に含まれる各単語と、各単語の属性と、各単語が所定の文章中に出現する順序とを属性系列とともに復元するデコーダを学習してもよい。
【００３８】
ここで、トピックモデルとは、ある文章が生成される過程を確率的に表現したモデルである。例えば、トピックモデルでは、文章に含まれる各単語が属する分野、すなわち文章毎のトピックの比率と、トピックの分布とから、文章を確率的に生成する。例えば、トピックモデルでは、文章に含まれる各単語の集合をθ、文章ごとのトピックの比率をＰ（ｚ｜θ）、トピックの分布をＰ（ｗｎ｜ｚ）とすると、以下の式（１）で表される過程により文章を確率的に生成する。なおｎは、トピックの分布の種別を示す添え字である。
【００３９】
【数１】
2019021218.tif 000003
【００４０】
トピックレイヤは、このようなトピックモデルに基づいて、エンコーダが出力した特徴から、文章全体のトピックを示す情報、すなわち、文章のコンテキストを示すコンテキスト情報を抽出する。そして、トピックレイヤは、抽出したコンテキスト情報をデコーダに入力する。このような処理の結果、デコーダは、文章全体のコンテキストを考慮して、エンコーダが出力した特徴から各単語や各単語の属性を復元するので、より自然な文章を生成することができる。
【００４１】
なお、トピックレイヤは、文章が出現する位置（例えば、見出しや本文等）や、文章が出現する時間（例えば、文章が投稿されやすい日時）等、文章のコンテキストであれば任意のコンテキストを抽出してよい。
【００４２】
〔１−６．測定処理について〕
なお、学習装置１０は、上述した学習処理により学習が行われたモデルを用いて、情報処理装置１００から受信した単語群から文章を生成する測定処理を実行する。例えば、学習装置１０は、情報処理装置１００から単語群を受信すると、受信した単語群を順にモデルのエンコーダに入力し、デコーダが属性系列とともに復元した単語群、すなわち、文章を情報処理装置１００へと出力する。
【００４３】
〔１−７．学習装置１０が実行する処理の一例〕
次に、図１を用いて、学習装置１０が実行する学習処理および測定処理の一例について説明する。まず、学習装置１０は、正解データとなる文章を情報処理装置２００から取得する（ステップＳ１）。なお、正解データとなる文章は、例えば、論文や特許公報、ブログ、マイクロブログ、インターネット上のニュース記事等、任意の文章が採用可能である。
【００４４】
このような場合、学習装置１０は、ＬＳＴＭを含むＤＰＣＮを属性レイヤとして含んだデコーダに対して、文章に含まれる各単語の重要度に基づいて、文章に含まれる各単語と、単語の属性と、単語が出現する順序とを係り受けとともに復元するデコーダを学習する（ステップＳ２）。例えば、図１に示す例では、学習装置１０は、エンコーダＬ１１と、デコーダＬ１２と、トピックレイヤＬ１３と、を有するモデルＬ１０を生成する。また、学習装置１０は、状態レイヤＬ１４、属性レイヤＬ１５、および単語レイヤＬ１６を有するデコーダＬ１２を生成する。ここで、デコーダＬ１２は、属性レイヤＬ１５として、ＤＰＣＮが採用されている。
【００４５】
また、学習装置１０は、正解データとして取得した文章Ｃ１０から、単語群Ｃ１１を抽出する。そして、学習装置１０は、単語群Ｃ１１に含まれる各単語と、各単語の属性と、各単語が出現する順序との特徴をモデルＬ１０に学習させる。より具体的には、学習装置１０は、単語群Ｃ１１をエンコーダＬ１１に入力した際に、デコーダＬ１２が出力する文章Ｃ２０が文章Ｃ１０と同じになるように、モデルＬ１０の学習を行う。
【００４６】
例えば、図１に示す例では、学習装置１０は、単語群の各単語ｘ１〜ｘ３を、各単語ｘ１〜ｘ３が文章Ｃ１０中に出現する順序で、エンコーダＬ１１のノードに入力する。この結果、エンコーダＬ１１は、各単語ｘ１〜ｘ３と各単語ｘ１〜ｘ３が文章Ｃ１０に出現する順序との特徴Ｃを出力する。そして、学習装置１０は、特徴Ｃ１０をデコーダＬ１２とトピックレイヤＣ１３とに入力する。
【００４７】
このような場合、デコーダＬ１２は、特徴とトピックレイヤＬ１３の出力とから単語ｙ１〜ｙ３を復元する。より具体的には、トピックレイヤＬ１３は、特徴Ｃから文章Ｃ１０のトピックを示す情報を出力する。そして、デコーダＬ１２は、特徴ＣとトピックレイヤＬ１３の出力とから、属性レイヤＬ１４の状態ｈ１を生成し、状態ｈ１から、各単語ｙ１〜ｙ３の属性と各単語ｙ１〜ｙ３の属性系列とともに、各単語ｙ１〜ｙ３を、各単語ｙ１〜ｙ３が文章Ｃ２０中に出現する順序で復元する。
【００４８】
例えば、デコーダＬ１２の状態レイヤＬ１４は、特徴Ｃに基づいて状態ｈ１へと遷移する。このような場合、属性レイヤＬ１５は、状態レイヤＬ１４の状態ｈ１から、単語群Ｃ１１のうち、文章Ｃ１０中に最初に出現する単語の属性ｚ１を復元する。そして、単語レイヤＬ１６は、状態レイヤＬ１４の状態ｈ１と属性レイヤＬ１５が復元した属性ｚ１とに基づいて、単語群Ｃ１１のうち文章Ｃ１０に最初に出現する単語ｙ１を復元する。
【００４９】
続いて、状態レイヤＬ１４は、前回の状態ｈ１と、復元された単語ｙ１と、属性レイヤＬ１５が前回復元した属性ｚ１とに基づいて、状態ｈ２へと遷移する。このような場合、属性レイヤＬ１５は、状態レイヤＬ１４の状態ｈ２と、属性レイヤＬ１５が前回復元した属性ｚ１と、単語レイヤＬ１６が前回復元した単語ｙ１とに基づいて、単語群Ｃ１１のうち、単語ｙ１の次に出現する単語の属性ｚ２を復元する。そして、単語レイヤＬ１６は、状態レイヤＬ１４の状態ｈ２と属性レイヤＬ１５が復元した属性ｚ２と前回復元した単語ｙ１とに基づいて、単語群Ｃ１１のうち単語ｙ１の次に出現する単語ｙ２を復元する。
【００５０】
続いて、状態レイヤＬ１４は、前回の状態ｈ２と、復元された単語ｙ２と、属性レイヤＬ１５が前回復元した属性ｚ２とに基づいて、状態ｈ３へと遷移する。このような場合、属性レイヤＬ１５は、状態レイヤＬ１４の状態ｈ３と、属性レイヤＬ１５が前回復元した属性ｚ２と、単語レイヤＬ１６が前回復元した単語ｙ２とに基づいて、単語群Ｃ１１のうち、単語ｙ２の次に出現する単語の属性ｚ３を復元する。そして、単語レイヤＬ１６は、状態レイヤＬ１４の状態ｈ３と属性レイヤＬ１５が復元した属性ｚ３と前回復元した単語ｙ２とに基づいて、単語群Ｃ１１のうち単語ｙ２の次に出現する単語ｙ３を復元する。
【００５１】
ここで、学習装置１０は、文章Ｃ１０と文章Ｃ２０とが同じになるように、モデルＬ１０の各種パラメータを調整する。例えば、学習装置１０は、文章Ｃ１０に含まれる各単語ｘ１〜ｘ３と、モデルが出力した各単語ｙ１〜ｙ３とが同一となるように、モデルＬ１０のパラメータを調整する。また、学習装置１０は、各単語ｘ１〜ｘ３の属性系列と、各単語ｙ１〜ｙ３の属性系列とが同一となるように、モデルＬ１０のパラメータを調整する。また、学習装置１０は、各単語ｘ１〜ｘ３の属性と、復元された属性ｚ１〜ｚ３とが同一となるように、モデルＬ１０のパラメータを調整する。この結果、学習装置１０は、単語ｘ１〜ｘ３が有する特徴、単語ｘ１〜ｘ３が出現する順序、および単語ｘ１〜ｘ３が有する属性の特徴をモデルＬ１０に学習させることができる。
【００５２】
ここで、モデルＬ１０は、属性を復元する際に、ＬＳＴＭの技術を用いることでそれまでに復元した属性を考慮して新たな属性を復元することとなる。このようなモデルＬ１０の学習を行った場合、モデルＬ１０は、属性レイヤＬ１５として採用したＤＰＣＮにおいて、単語ｘ１〜ｘ３の属性と出現順序との組、すなわち、文章Ｃ１０における各単語の重要性を考慮して単語群の属性を復元することとなる。このため、学習装置１０は、モデルＬ１０に単語の属性と出現順序とに基づく重要性を学習させることができる。
【００５３】
続いて、学習装置１０は、情報処理装置１００から文章化する単語群Ｃ３１を取得する（ステップＳ３）。このような場合、学習装置１０は、学習したモデルＬ１０に単語群を入力することで、単語群に含まれる各単語を含む文章Ｃ３０を生成する測定処理を実行する（ステップＳ４）。そして、学習装置１０は、生成した文章Ｃ３０を情報処理装置１００へと出力する（ステップＳ５）。この結果、情報処理装置１００は、単語群Ｃ３１を含む自然な文章Ｃ３０を得ることができる。
【００５４】
〔２．学習装置の構成〕
以下、上記した学習処理を実現する学習装置１０が有する機能構成の一例について説明する。図２は、実施形態に係る学習装置の構成例を示す図である。図２に示すように、学習装置１０は、通信部２０、記憶部３０、および制御部４０を有する。
【００５５】
通信部２０は、例えば、ＮＩＣ（Network  Interface  Card）等によって実現される。そして、通信部２０は、ネットワークＮと有線または無線で接続され、情報処理装置１００、２００との間で情報の送受信を行う。
【００５６】
記憶部３０は、例えば、ＲＡＭ（Random  Access  Memory)、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。また、記憶部３０は、正解データデータベース３１およびモデルデータベース３２を記憶する。
【００５７】
正解データデータベース３１には、正解データとなる文章が登録されている。例えば、図３は、実施形態に係る正解データデータベースに登録される情報の一例を示す図である。図３に示す例では、正解データデータベース３１には、「文章ＩＤ（Identifier）」、「文章データ」、「第１単語」、「第２単語」等といった項目を有する情報が登録される。
【００５８】
ここで、「文章ＩＤ（Identifier）」は、正解データとなる文章を識別するための情報である。また、「文章データ」とは、文章のテキストデータである。また、「第１単語」とは、対応付けられた「文章データ」に含まれる単語群のうち、文章内に最初に出現する単語であり、「第２単語」とは、対応付けられた「文章データ」に含まれる単語群のうち、文章内に２番目に出現する単語である。なお、正解データデータベース３１には、「第１単語」や「第２単語」以外にも、文章に含まれる単語が順に登録されているものとする。
【００５９】
例えば、図３に示す例では、文章ＩＤ「ＩＤ＃１」、文章データ「文章データ＃１」、第１単語「単語＃１−１」、および第２単語「単語＃１−２」が対応付けて登録されている。このような情報は、文章ＩＤ「ＩＤ＃１」が示す文章が文章データ「文章データ＃１」であり、かかる文章中に第１単語「単語＃１−１」および第２単語「単語＃１−２」が順に含まれている旨を示す。
【００６０】
なお、図３に示す例では、「文章データ＃１」、「単語＃１−１」、「単語＃１−２」等といった概念的な値について記載したが、実際には文章のテキストデータや単語のテキストデータが登録されることとなる。
【００６１】
図２に戻り、説明を続ける。モデルデータベース３２には、学習対象となるエンコーダＬ１１およびデコーダＬ１２を含むモデルＬ１０のデータが登録される。例えば、モデルデータベース３２には、モデルＬ１０として用いられるニューラルネットワークにおけるノード同士の接続関係、各ノードに用いられる関数、各ノード間で値を伝達する際の重みである接続係数等が登録される。
【００６２】
なお、モデルＬ１０は、単語群に関する情報が入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第１要素と、第１要素と第１要素の重みとに基づいて値が算出される第２要素と、を含み、入力層に入力された情報に対し、出力層以外の各層に属する各要素を第１要素として、第１要素と第１要素の重みとに基づく演算を行うことにより、各単語の属性と出現順序とに応じた重要度に基づいて、属性系列と単語群とを復元し、復元した属性系列と単語群とを出力層から出力するよう、コンピュータを機能させるためのモデルである。
【００６３】
制御部４０は、コントローラ（controller）であり、例えば、ＣＰＵ（Central  Processing  Unit）、ＭＰＵ（Micro  Processing  Unit）等のプロセッサによって、学習装置１０内部の記憶装置に記憶されている各種プログラムがＲＡＭ等を作業領域として実行されることにより実現される。また、制御部４０は、コントローラ（controller）であり、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）等の集積回路により実現されてもよい。
【００６４】
また、制御部４０は、記憶部３０に記憶されるモデルＬ１０に従った情報処理により、モデルＬ１０の入力層に入力された単語群に関する情報に対し、モデルＬ１０が有する係数（すなわち、モデルＬ１０が学習した特徴に対応する係数）に基づく演算を行い、モデルＬ１０の出力層から、各単語の属性と出現順序とに応じた重要度に基づいて、属性系列と単語群とを順に復元し、復元した属性系列と単語群とを出力層から出力する。
【００６５】
図２に示すように、制御部４０は、抽出部４１、学習部４２、受付部４３、生成部４４、および出力部４５を有する。なお、抽出部４１および学習部４２は、上述した学習処理を実行し、受付部４３〜出力部４５は、上述した測定処理を実行する。
【００６６】
抽出部４１は、所定の文章に含まれる単語群を抽出する。例えば、抽出部４１は、情報処理装置２００から正解データとして文章を受信すると、形態素解析等により、文章に含まれる単語群を抽出する。そして、抽出部４１は、受信した文章と、文章に含まれる単語群とを正解データデータベース３１に登録する。より具体的には、抽出部４１は、単語群に含まれる各単語を、文章中に出現する順に、正解データデータベース３１に登録する。
【００６７】
学習部４２は、単語群に含まれる各単語が文章中に出現する順序とともに、各単語が影響を受ける文法構造を重みとして学習するための符号化器と、単語群に含まれる各単語と、各単語の属性と、各単語が文章中に出現する順序とを文章中における各単語の属性系列とともに特徴から復元する復元器との学習を行う。より具体的には、学習部４２は、単語群に含まれる各単語が文章中に出現する順序とともに単語群が有する特徴を学習するエンコーダと、単語群に含まれる各単語と、各単語の属性と、各単語が文章中に出現する順序とを文章中における各単語の属性系列とともに特徴から復元するデコーダとの学習を行う。
【００６８】
ここで、学習部４２は、デコーダとして、単語群に含まれる各単語の属性と各単語が文章中に出現する順序とに基づく各単語の文章における重要度に基づいて、単語群に含まれる各単語と各単語が文章中に出現する順序とを文章中における各単語の属性系列とともに特徴から復元するデコーダを学習する。例えば、学習部４２は、特徴から単語群に含まれる各単語の属性を復元する第１の層（例えば、属性レイヤＬ１５）であって、入力された情報と、前回出力した情報とに基づいて新たに出力する情報を生成する第１の層と、第１の層の出力から単語群に含まれる各単語を属性系列とともに復元する第２の層とを有するデコーダを学習する。
【００６９】
また、例えば、学習部４２は、第１の層として、入力された情報と、前回出力した情報とに基づいて新たに出力する情報を生成する第１の層との畳み込みに基づいて、新たに出力する情報を生成する第１の層を有するデコーダを学習する。より具体的な例を挙げると、学習部４２は、第１の層として、ＤＰＣＮ（Deep  Predictive  Coding  Networks）の構造を有するデコーダを学習する。
【００７０】
例えば、学習部４２は、エンコーダＬ１１とデコーダＬ１２とを有するモデルＬ１０を生成する。続いて、学習部４２は、正解データデータベース３１に登録された文章と、その文章に含まれる単語群とを抽出する。そして、学習部４２は、抽出した単語群を、文章中に出現する順序でモデルＬ１０のエンコーダＬ１１に入力した際に、エンコーダＬ１１が出力した特徴から、エンコーダＬ１１に入力した単語群と、各単語の属性とを、抽出した文章中に各単語が出現する順で、抽出した文章に含まれる属性系列とともに復元するように、エンコーダＬ１１およびデコーダＬ１２の調整を行う。すなわち、学習部４２は、モデルＬ１０に入力した文章と出力した文章とが同じになるように、モデルＬ１０の調整を行う。
【００７１】
ここで、学習部４２は、デコーダとして、特徴の元となる単語群に含まれる各単語の重要度に基づく順序で、各単語の属性を復元する属性レイヤＬ１５と、属性レイヤの出力から単語群に含まれる各単語を復元する単語レイヤＬ１６とを有するデコーダの学習を行う。例えば、学習部４２は、状態ｈ１から最初に出現する単語の属性ｚ１を復元する属性レイヤＬ１５と、状態ｈ１および属性ｚ１から最初に出現する単語ｙ１を復元する単語レイヤＬ１６とを有するデコーダＬ１２の学習を行う。
【００７２】
また、学習部４２は、属性レイヤＬ１５として、ＤＰＣＮの構造を有するレイヤを含むモデルＬ１０の学習を行う。例えば、図４は、実施形態に係る属性レイヤの模式的な構造の一例を示す図である。図４に示すように、ＤＰＣＮにおいては、新たな入力値と前回の出力値との畳み込みにより新たな値を出力する畳み込みＬＳＴＭの機能を有する部分モデルＥ１、畳み込みニューラルネットワークの機能を有する部分モデルＡ１、畳み込みニューラルネットワークの機能と値の保持機能とを有する部分モデルＡ２、および、所定の活性化関数に基づいて部分モデルＡ１の出力と部分モデルＡ２の出力との差に応じた値を出力する部分モデルＥ２とにより構成される。
【００７３】
例えば、時刻ｔにおいて、部分モデルＥ１は、時刻ｔ−１において部分モデルＥ２が出力した値Ｅｔ-1ｌと、時刻ｔ−１において部分モデルＥ１が出力した値Ｒｔ-1ｌとに基づいて、新たな値Ｒｔｌを出力する。また、部分モデルＡ１は、時刻ｔにおいて部分モデルＥ１が出力した値Ｒｔｌに基づいて、新たな値Ａ’ｔｌを出力する。部分モデルＡ２は、状態レイヤＬ１４から出力された値ｘｔを入力として受付けると、受付けた値ｘｔに基づく値Ａｔｌを出力する。部分モデルＥ２は、部分モデルＡ１が出力した値Ａ’ｔｌと部分モデルＡ２が出力した値Ａｔｌとに基づいて、新たな値Ｅｔｌを出力する。このような処理を繰り返すことで、属性レイヤＬ１５は、状態レイヤＬ１４が出力する値から単語群の属性を示す値を順次出力することとなる。
【００７４】
なお、時刻ｔにおいて部分モデルＡ２が出力する値値Ａｔｌは、以下の式（２）で表すことができる。また、時刻ｔにおいて部分モデルＡ１が出力する値Ａ’ｔｌは、以下の式（３）で表すことができる。また、時刻ｔにおいて部分モデルＥ２が出力する値Ｅｔｌは、以下の式（４）で表すことができる。また、時刻ｔにおいて部分モデルＥ１が出力する値Ｒｔｌは、以下の式（５）で表すことができる。ここで、式（２）、式（３）中におけるＣＯＮＶとは、所定の畳み込み処理を示し、式（２）、式（３）、式（４）に示すＲＥＬＵは、所定の活性化関数を示す。また、式（５）におけるＣＯＮＶＬＳＴＭは、所定の畳み込みＬＳＴＭの処理を示す。なお、式（３）においては、カンマをハットで示した。
【００７５】
【数２】
2019021218.tif 000004
【００７６】
【数３】
2019021218.tif 000005
【００７７】
【数４】
2019021218.tif 000006
【００７８】
【数５】
2019021218.tif 000007
【００７９】
なお、図４に示すＤＰＣＮの構造はあくまで一例であり、これに限定されるものではない。例えば、非特許文献２に開示される構造を有するＤＰＣＮは、図４に示すＤＰＣＮと同様の機能を発揮することができ、学習装置１０は、非特許文献２に開示される構造のＤＰＣＮを属性レイヤＬ１５に採用してもよい。
【００８０】
ここで、ＤＰＣＮにおいては、畳み込みニューラルネットワークの機能が含まれるため、単語の出現位置に応じた重要度であって、周囲に出現する単語との相対的な重要度を処理に反映させることができる。ここで、言語の畳み込みについては、非特許文献３に開示された技術が採用可能である。
【００８１】
例えば、図５は、実施形態に係るモデルが言語の畳み込みを行う技術の一例を示す図である。例えば、モデルＬ１０は、ある文章からｓ個の単語が抽出された場合、各単語をそれぞれ同じｄ次元のベクトルに変換し、変換後のベクトルを合わせたｓ行ｄ列の行列Ａを生成する。なお、このような行列Ａは、以下の式（６）で示すことができる。また、図７に示す例では、ｄ＝５、ｓ＝７の例について記載した。
【００８２】
【数６】
2019021218.tif 000008
【００８３】
このような場合、モデルＬ１０は、図５中（Ａ）に示すように、行列Ａのサブ行列を生成する。このようなサブ行列は、行列Ａのうち以下の式（７）で示される範囲を、可能な行番号ｉ、ｊの組み合わせについて抽出したものとなる。
【００８４】
【数７】
2019021218.tif 000009
【００８５】
次に、モデルＬ１０は、図５中（Ｂ）に示すように、各サブ行列の畳み込みを行う。例えば、図５中（Ｂ）に示すサブ行列の畳み込み結果となる行列の要素ｏｉは、以下の式（８）で示すことができる。ここで、式（８）中のｗは、サブ行列の重みであり、ｈは、サブ行列の幅を示す。
【００８６】
【数８】
2019021218.tif 000010
【００８７】
また、サブ行列の畳み込み結果となる行列の列数は、以下の式（９）で表される。
【００８８】
【数９】
2019021218.tif 000011
【００８９】
なお、モデルＬ１０は、以下の式（１０）で示される所定のフィルター関数ｆを考慮してもよい。
【００９０】
【数１０】
2019021218.tif 000012
【００９１】
また、モデルＬ１０は、図５中（Ｃ）に示すように、各サブ行列の畳み込み結果をさらに畳み込むとともに、図５中（Ｄ）に示すように、各畳み込み結果を合成したベクトルを生成する。そして、モデルＬ１０は、図５中（Ｅ）に示すように、生成したベクトルをさらに畳み込むことで、単語群が有する特徴の畳み込みを実現する。
【００９２】
なお、学習部４２は、特徴から単語群に含まれる各単語の属性であって、それぞれ異なる属性を復元する複数の属性レイヤと、複数の属性レイヤの出力から単語群に含まれる各単語を復元する単語レイヤとを有するデコーダを学習してもよい。例えば、図６は、実施形態に係る学習装置が学習するデコーダのバリエーションを説明するための図である。例えば、図６に示す例では、デコーダＬ１２は、単語レイヤＬ１６と、第１属性レイヤＬ１７と、第２属性レイヤＬ１８とを有する。
【００９３】
ここで、第１属性レイヤＬ１７と第２属性レイヤＬ１８とは、それぞれ異なる属性を復元する。例えば、第１属性レイヤＬ１７は、単語の品詞を復元し、第２属性レイヤＬ１８は、単語の原型を復元する。そして、単語レイヤＬ１６は、第１属性レイヤＬ１７と第２属性レイヤＬ１８との出力から、単語を復元する。
【００９４】
より詳細には、デコーダＬ１２は、エンコーダＬ１１が出力した特徴Ｃと、トピックレイヤＬ１３の出力とに基づいて、状態ｈ１を生成する。このような場合、第１属性レイヤＬ１７は、状態ｈ１から属性ｚ１を復元する。また、第２属性レイヤＬ１８は、状態ｈ１から属性ｕ１を復元する。そして、単語レイヤＬ１６は、状態ｈ１と、属性ｚ１と、属性ｕ１とから、単語ｙ１を生成する。
【００９５】
ここで、図６では矢印を省略したが、デコーダＬ１２は、状態ｈ１と、属性ｚ１と、属性ｕ１と、単語ｙ１とから状態ｈ２を生成する。そして、第１属性レイヤＬ１６は、属性ｚ１と状態ｈ２とから属性ｚ２を復元する。なお、第１属性レイヤＬ１７は、単語ｙ１をさらに考慮して属性ｚ２を復元してもよい。また、第２属性レイヤＬ１８は、属性ｕ１と状態ｈ２とから属性ｕ２を復元する。なお、第２属性レイヤＬ１８は、単語ｙ１をさらに考慮して属性ｕ２を復元してもよい。そして、単語レイヤＬ１６は、状態ｈ２と、属性ｚ２と、属性ｕ２と、単語ｙ１とから、単語ｙ２を生成する。
【００９６】
また、学習部４２は、特徴から所定の文章が示すトピックを復元するトピックレイヤの出力から、単語群に含まれる各単語と、各単語の属性と、各単語が文章中に出現する順序とを文章中における各単語の属性系列とともに復元するデコーダを学習してもよい。すなわち、学習部４２は、トピックレイヤＬ１３が文章Ｃ１０のトピックを復元するように、モデルＬ１０の調整を行ってもよい。
【００９７】
また、学習部４２は、エンコーダとして、単語群に含まれる各単語を入力する単語レイヤと、各単語の属性を入力する属性レイヤとを有し、単語レイヤおよび属性レイヤの出力から特徴を生成するエンコーダを学習してもよい。例えば、図７は、実施形態に係る学習装置が学習するエンコーダのバリエーションを示す図である。
【００９８】
例えば、学習部４２は、単語群に含まれる各単語ｘ１〜ｘ３を出現順に受け付ける単語レイヤＬ１９と、単語群の属性ａ１〜ａ３を、各単語の出現順に受け付ける属性レイヤＬ２０とを有するエンコーダＬ１１を生成する。このようなエンコーダＬ１１においては、属性ａ１が入力された属性レイヤＬ２０のノードが状態ｃ１となり、状態ｃ１と単語ｘ１とから単語レイヤＬ１９のノードが状態ｄ１となる。また、属性レイヤＬ２０のノードは、状態ｃ１および状態ｄ１と属性ａ２とから状態ｃ２となり、単語レイヤＬ１９のノードが状態ｃ２と状態ｄ１と単語ｘ２とから状態ｄ２となる。また、属性レイヤＬ２０のノードは、状態ｃ２および状態ｄ２と属性ａ３とから状態ｃ３となり、単語レイヤＬ１９のノードが状態ｃ３と状態ｄ２と単語ｘ３とから状態ｄ３となる。そして、エンコーダＬ１１は、状態ｄ３に基づく特徴Ｃを出力する。
【００９９】
なお、図７に示すエンコーダＬ１１の構成は、必ずしも必須ではない。すなわち、エンコーダＬ１１側には、単語群の属性を学習させずとも、デコーダＬ１２側に単語群の属性から各単語の属性を復元させるように学習を行った場合には、デコーダＬ１２のみならず、エンコーダＬ１１にも、単語群の属性を学習させることができると考えられる。この結果、エンコーダＬ１１は、単語群の属性を入力する属性レイヤＬ２０を有さずとも、単語群の属性を考慮した特徴の抽出、すなわち符号化を行うことができる。
【０１００】
図２に戻り、説明を続ける。受付部４３は、情報処理装置１００から文章化する単語群を受付ける。このような場合、受付部４３は、受付けた単語群を生成部４４に出力する。
【０１０１】
生成部４４は、上述した学習処理により学習が行われたモデルＬ１０を用いて、受付部４３が受け付けた単語群から文章を生成する。例えば、生成部４４は、モデルＬ１０に受付部４３が受け付けた単語群を順に入力する。そして、生成部４４は、モデルＬ１０が属性系列とともに復元した単語群から文章を生成する。
【０１０２】
出力部４５は、情報処理装置１００から受信した単語群を用いた文章を出力する。例えば、出力部４５は、生成部４４が生成した文章を情報処理装置１００へと送信する。
【０１０３】
〔３．学習装置が実行する処理の流れの一例〕
次に、図８を用いて、学習装置１０が実行する処理の流れの一例について説明する。図８は、実施形態に係る処理の流れの一例を説明するフローチャートである。まず、学習装置１０は、正解データとなる文章を取得すると（ステップＳ１０１）、取得した文章から単語群を抽出する（ステップＳ１０２）。そして、学習装置１０は、単語群の各単語を出現順にエンコーダに入力した際にエンコーダが出力した情報から、単語の属性と出現順序とに基づく重要度に基づいて、単語と、単語の属性と、単語の出現順序とを係り受けとともに復元するデコーダの学習を行う（ステップＳ１０３）。
【０１０４】
また、学習装置１０は、文章化する単語群を受けつけると、単語群を学習済みのモデルに入力する（ステップＳ１０４）。このような場合、学習装置１０は、モデルが属性系列とともに出力した単語、すなわち、文章を出力し（ステップＳ１０５）、処理を終了する。
【０１０５】
〔４．変形例〕
上記では、学習装置１０による学習処理の一例について説明した。しかしながら、実施形態は、これに限定されるものではない。以下、学習装置１０が実行する学習処理のバリエーションについて説明する。
【０１０６】
〔４−１．トピックモデルについて〕
上述した例では、学習装置１０は、文章のトピックを出力するトピックレイヤＬ１３を有するモデルを生成した。しかしながら、実施形態は、これに限定されるものではない。例えば、学習装置１０は、トピックレイヤＬ１３を有しないモデルを生成してもよい。また、学習装置１０は、それぞれ異なるトピックモデルに基づいたトピックを出力する複数のトピックレイヤを有するモデルを生成してもよい。
【０１０７】
また、学習装置１０は、ＰＬＳＡ（Probabilistic  Latent  Semantic  Analysis）や、ＬＤＡ（Latent  Dirichlet  Allocation）等、任意のトピックモデルに基づいて、特徴Ｃからトピックを抽出するトピックレイヤＬ１３を有してもよい。また、学習装置１０は、特徴ＣとトピックレイヤＬ１３とから単語を復元するのではなく、トピックレイヤＬ１３の出力のみから単語を復元するデコーダＬ１２を学習してもよい。
【０１０８】
〔４−２．ＤＰＣＮについて〕
また、学習装置１０は、全体で一つのＤＰＣＮにより構成されるデコーダＬ１２を有するモデルＬ１０の学習を行ってもよい。また、学習装置１０は、状態レイヤＬ１４、属性レイヤＬ１５、単語レイヤＬ１６がそれぞれＤＰＣＮにより構成されるデコーダＬ１２を有するモデルＬ１０の学習を行ってもよい。また、学習装置１０は、ＤＰＣＮにより構成されるエンコーダＬ１１の学習を行ってもよい。
【０１０９】
〔４−３．装置構成〕
上述した例では、学習装置１０は、学習装置１０内で学習処理および測定処理を実行した。しかしながら、実施形態は、これに限定されるものではない。例えば、学習装置１０は、学習処理のみを実行し、測定処理については、他の装置が実行してもよい。例えば、学習装置１０が上述した学習処理によって生成したエンコーダおよびデコーダを有するモデルＬ１０を含むプログラムパラメータを用いることで、学習装置１０以外の情報処理装置が、上述した測定処理を実現してもよい。また、学習装置１０は、正解データデータベース３１を外部のストレージサーバに記憶させてもよい。
【０１１０】
〔４−４．その他〕
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文章中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【０１１１】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
【０１１２】
また、上記してきた各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【０１１３】
〔５．プログラム〕
また、上述してきた実施形態に係る学習装置１０は、例えば図９に示すような構成のコンピュータ１０００によって実現される。図９は、ハードウェア構成の一例を示す図である。コンピュータ１０００は、出力装置１０１０、入力装置１０２０と接続され、演算装置１０３０、一次記憶装置１０４０、二次記憶装置１０５０、出力ＩＦ（Interface）１０６０、入力ＩＦ１０７０、ネットワークＩＦ１０８０がバス１０９０により接続された形態を有する。
【０１１４】
演算装置１０３０は、一次記憶装置１０４０や二次記憶装置１０５０に格納されたプログラムや入力装置１０２０から読み出したプログラム等に基づいて動作し、各種の処理を実行する。一次記憶装置１０４０は、ＲＡＭ等、演算装置１０３０が各種の演算に用いるデータを一次的に記憶するメモリ装置である。また、二次記憶装置１０５０は、演算装置１０３０が各種の演算に用いるデータや、各種のデータベースが登録される記憶装置であり、ＲＯＭ(Read  Only  Memory)、ＨＤＤ（Hard  Disk  Drive）、フラッシュメモリ等により実現される。
【０１１５】
出力ＩＦ１０６０は、モニタやプリンタといった各種の情報を出力する出力装置１０１０に対し、出力対象となる情報を送信するためのインタフェースであり、例えば、ＵＳＢ（Universal  Serial  Bus）やＤＶＩ（Digital  Visual  Interface）、ＨＤＭＩ（登録商標）（High  Definition  Multimedia  Interface）といった規格のコネクタにより実現される。また、入力ＩＦ１０７０は、マウス、キーボード、およびスキャナ等といった各種の入力装置１０２０から情報を受信するためのインタフェースであり、例えば、ＵＳＢ等により実現される。
【０１１６】
なお、入力装置１０２０は、例えば、ＣＤ（Compact  Disc）、ＤＶＤ（Digital  Versatile  Disc）、ＰＤ（Phase  change  rewritable  Disk）等の光学記録媒体、ＭＯ（Magneto-Optical  disk）等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等から情報を読み出す装置であってもよい。また、入力装置１０２０は、ＵＳＢメモリ等の外付け記憶媒体であってもよい。
【０１１７】
ネットワークＩＦ１０８０は、ネットワークＮを介して他の機器からデータを受信して演算装置１０３０へ送り、また、ネットワークＮを介して演算装置１０３０が生成したデータを他の機器へ送信する。
【０１１８】
演算装置１０３０は、出力ＩＦ１０６０や入力ＩＦ１０７０を介して、出力装置１０１０や入力装置１０２０の制御を行う。例えば、演算装置１０３０は、入力装置１０２０や二次記憶装置１０５０からプログラムを一次記憶装置１０４０上にロードし、ロードしたプログラムを実行する。
【０１１９】
例えば、コンピュータ１０００が学習装置１０として機能する場合、コンピュータ１０００の演算装置１０３０は、一次記憶装置１０４０上にロードされたプログラムまたはデータ（例えば、モデル）を実行することにより、制御部４０の機能を実現する。コンピュータ１０００の演算装置１０３０は、これらのプログラムまたはデータ（例えば、モデル）を一次記憶装置１０４０から読み取って実行するが、他の例として、他の装置からネットワークＮを介してこれらのプログラムを取得してもよい。
【０１２０】
〔６．効果〕
上述したように、学習装置１０は、所定の文章に含まれる単語群を抽出する。また、学習装置１０は、抽出した単語群に含まれる各単語が文章中に出現する順序とともに、各単語が影響を受ける文法構造を重みとして学習するための符号化器の学習を行う。また、学習装置１０は、単語群に含まれる各単語と、各単語の属性と、各単語が文章中に出現する順序とを文章中における各単語の属性系列とともに符号化器が出力する特徴から復元する復元器を学習する。
【０１２１】
また、学習装置１０は、単語群に含まれる各単語が文章中に出現する順序とともに単語群が有する特徴を学習するエンコーダ、および、単語群に含まれる各単語の属性と各単語が文章中に出現する順序とに基づく各単語の文章における重要度に基づいて、単語群に含まれる各単語と各単語が文章中に出現する順序とを文章中における各単語の属性系列とともに特徴から復元するデコーダとを学習する。
【０１２２】
このような処理の結果、学習装置１０は、各単語の属性のみならず、各単語の属性と各単語の出現順序とに基づく重要度を考慮して、単語群から属性系列を含む文章を生成するモデルＬ１０を学習することができるので、適切なテキストを類推し、適切な構造を有する自然な文章を作成することができる。
【０１２３】
また、学習装置１０は、特徴から単語群に含まれる各単語の属性を復元する第１の層であって、入力された情報と、前回出力した情報とに基づいて新たに出力する情報を生成する第１の層と、第１の層の出力から単語群に含まれる各単語を復元する第２の層とを有するデコーダを学習する。この結果、学習装置１０は、単語の出現順序に基づく重要度をデコーダに学習させることができるので、適切な構造を有する自然な文章を作成することができる。
【０１２４】
また、学習装置１０は、第１の層として、入力された情報と、前回出力した情報とに基づいて新たに出力する情報を生成する第１の層との畳み込みに基づいて、新たに出力する情報を生成する第１の層を有するデコーダを学習する。例えば、学習装置１０は、第１の層として、ＤＰＣＮ（Deep  Predictive  Coding  Networks）の構造を有するデコーダを学習する。この結果、学習装置１０は、単語の出現順序に基づく重要度をデコーダに学習させることができるので、適切な構造を有する自然な文章を作成することができる。
【０１２５】
また、学習装置１０は、エンコーダとして、単語群に含まれる各単語を入力する第３の層と、各単語の属性を入力する第４の層とを有し、第３の層および第４の層の出力から特徴を生成するエンコーダを学習する。このため、学習装置１０は、各単語の属性を考慮して、単語群から属性系列を含む文章を生成するモデルＬ１０を学習することができる。
【０１２６】
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【０１２７】
また、上記してきた「部（section、module、unit）」は、「手段」や「回路」などに読み替えることができる。例えば、生成部は、生成手段や生成回路に読み替えることができる。
【符号の説明】
【０１２８】
２０  通信部
３０  記憶部
３１  正解データデータベース
３２  モデルデータベース
４０  制御部
４１  抽出部
４２  学習部
４３  受付部
４４  生成部
４５  出力部
１００、２００  情報処理装置
【図１】
2019021218.tif 000013
【図２】
2019021218.tif 000014
【図３】
2019021218.tif 000015
【図４】
2019021218.tif 000016
【図５】
2019021218.tif 000017
【図６】
2019021218.tif 000018
【図７】
2019021218.tif 000019
【図８】
2019021218.tif 000020
【図９】
2019021218.tif 000021