(57)【要約】【課題】学習により生成する分類モデルの精度を上げて、予測の精度を向上させることができるようにする。【解決手段】ｍ個の文章を学習用データとして入力する学習用データ入力部１０と、ｍ個の文章からｎ個の単語を抽出し、ｍ個の文章およびｎ個の単語間の関係性を反映した類似性指標値を算出する類似性指標値算出部１００と、１つの文章についてｎ個の類似性指標値から成る文章指標値群をもとに、ｍ個の文章を複数の事象に分類するための分類モデルを生成する分類モデル生成部１４と、予測用データ入力部２０により入力される文章から類似性指標値算出部１００により算出される類似性指標値を分類モデルに適用することにより、予測対象の文章から複数の事象の何れかを予測する事象予測部２１とを備え、どの単語がどの文章に対してどの程度寄与しているのかを表した類似性指標値を用いて高精度な分類モデルを生成する。【選択図】図１
2019194808.tif 000002
【特許請求の範囲】
【請求項１】
ｍ個（ｍは２以上の任意の整数）の文章を解析し、当該ｍ個の文章からｎ個（ｎは２以上の任意の整数）の単語を抽出する単語抽出部と、
上記ｍ個の文章をそれぞれ所定のルールに従ってｑ次元（ｑは２以上の任意の整数）にベクトル化することにより、ｑ個の軸成分から成るｍ個の文章ベクトルを算出する文章ベクトル算出部と、
上記ｎ個の単語をそれぞれ所定のルールに従ってｑ次元にベクトル化することにより、ｑ個の軸成分から成るｎ個の単語ベクトルを算出する単語ベクトル算出部と、
上記ｍ個の文章ベクトルと上記ｎ個の単語ベクトルとの内積をそれぞれとることにより、上記ｍ個の文章および上記ｎ個の単語間の関係性を反映したｍ×ｎ個の類似性指標値を算出する指標値算出部と、
上記指標値算出部により算出された上記ｍ×ｎ個の類似性指標値を用いて、１つの文章についてｎ個の類似性指標値から成る文章指標値群をもとに、上記ｍ個の文章を複数の事象に分類するための分類モデルを生成する分類モデル生成部と、
予測対象とする１つ以上の文章を予測用データとして入力する予測用データ入力部と、
上記予測用データ入力部により入力された上記予測用データに対して上記単語抽出部、上記文章ベクトル算出部、上記単語ベクトル算出部および上記指標値算出部の処理を実行することによって得られる類似性指標値を、上記分類モデル生成部により生成された上記分類モデルに適用することにより、上記予測対象データから上記複数の事象の何れかを予測する事象予測部とを備えたことを特徴とする事象予測装置。
【請求項２】
上記文章ベクトル算出部および上記単語ベクトル算出部は、上記ｎ個の単語のうち一の単語から上記ｍ個の文章のうち一の文章が予想される確率、または、上記ｍ個の文章のうち一の文章から上記ｎ個の単語のうち一の単語が予想される確率を、上記ｍ個の文章と上記ｎ個の単語との全ての組み合わせについて算出して合計した値を目標変数とし、当該目標変数を最大化する文章ベクトルおよび単語ベクトルを算出することを特徴とする請求項１に記載の事象予測装置。
【請求項３】
上記指標値算出部は、上記ｍ個の文章ベクトルの各ｑ個の軸成分を各要素とする文章行列と、上記ｎ個の単語ベクトルの各ｑ個の軸成分を各要素とする単語行列との積をとることにより、ｍ×ｎ個の上記類似性指標値を各要素とする指標値行列を算出することを特徴とする請求項１または２に記載の事象予測装置。
【請求項４】
上記複数の事象のうちどれに該当するかが既知である上記ｍ個の文章を学習用データとして入力する学習用データ入力部を更に備え、
上記単語抽出部、上記文章ベクトル算出部、上記単語ベクトル算出部、上記指標値算出部および上記分類モデル生成部の処理を、上記学習用データ入力部により上記学習用データとして入力された上記ｍ個の文章を対象として実行することを特徴とする請求項１〜３の何れか１項に記載の事象予測装置。
【請求項５】
上記事象予測部により予測された事象に対する実際の事象に応じて、上記分類モデル生成部に与える報酬を決定する報酬決定部を更に備え、
上記分類モデル生成部は、上記報酬決定部により決定された報酬に応じて、上記分類モデルを改変することを特徴とする請求項１〜４の何れか１項に記載の事象予測装置。
【請求項６】
ｍ個（ｍは２以上の任意の整数）の文章を解析し、当該ｍ個の文章からｎ個（ｎは２以上の任意の整数）の単語を抽出する単語抽出部と、
上記ｍ個の文章をそれぞれ所定のルールに従ってｑ次元（ｑは２以上の任意の整数）にベクトル化することにより、ｑ個の軸成分から成るｍ個の文章ベクトルを算出する文章ベクトル算出部と、
上記ｎ個の単語をそれぞれ所定のルールに従ってｑ次元にベクトル化することにより、ｑ個の軸成分から成るｎ個の単語ベクトルを算出する単語ベクトル算出部と、
上記ｍ個の文章ベクトルと上記ｎ個の単語ベクトルとの内積をそれぞれとることにより、上記ｍ個の文章および上記ｎ個の単語間の関係性を反映したｍ×ｎ個の類似性指標値を算出する指標値算出部と、
上記指標値算出部により算出された上記ｍ×ｎ個の類似性指標値を用いて、１つの文章についてｎ個の類似性指標値から成る文章指標値群をもとに、上記ｍ個の文章を複数の事象に分類するための分類モデルを、上記文章から事象を予測するための予測モデルとして生成する分類モデル生成部とを備えたことを特徴とする予測モデル生成装置。
【請求項７】
上記文章ベクトル算出部および上記単語ベクトル算出部は、上記ｎ個の単語のうち一の単語から上記ｍ個の文章のうち一の文章が予想される確率、または、上記ｍ個の文章のうち一の文章から上記ｎ個の単語のうち一の単語が予想される確率を、上記ｍ個の文章と上記ｎ個の単語との全ての組み合わせについて算出して合計した値を目標変数とし、当該目標変数を最大化する文章ベクトルおよび単語ベクトルを算出することを特徴とする請求項６に記載の予測モデル生成装置。
【請求項８】
上記指標値算出部は、上記ｍ個の文章ベクトルの各ｑ個の軸成分を各要素とする文章行列と、上記ｎ個の単語ベクトルの各ｑ個の軸成分を各要素とする単語行列との積をとることにより、ｍ×ｎ個の上記類似性指標値を各要素とする指標値行列を算出することを特徴とする請求項６または７に記載の予測モデル生成装置。
【請求項９】
ｍ個（ｍは２以上の任意の整数）の文章を解析し、当該ｍ個の文章からｎ個（ｎは２以上の任意の整数）の単語を抽出する単語抽出部手段、
上記ｍ個の文章をそれぞれ所定のルールに従ってｑ次元（ｑは２以上の任意の整数）にベクトル化するとともに、上記ｎ個の単語をそれぞれ所定のルールに従ってｑ次元にベクトル化することにより、ｑ個の軸成分から成るｍ個の文章ベクトルおよびｑ個の軸成分から成るｎ個の単語ベクトルを算出するベクトル算出手段、および
上記ｍ個の文章ベクトルと上記ｎ個の単語ベクトルとの内積をそれぞれとることにより、上記ｍ個の文章および上記ｎ個の単語間の関係性を反映したｍ×ｎ個の類似性指標値を算出する指標値算出手段、および
上記指標値算出手段により算出された上記ｍ×ｎ個の類似性指標値を用いて、１つの文章についてｎ個の類似性指標値から成る文章指標値群をもとに、上記ｍ個の文章を複数の事象に分類するための分類モデルを、上記文章から事象を予測するための予測モデルとして生成する分類モデル生成手段、
としてコンピュータを機能させるための事象予測用プログラム。
【請求項１０】
予測対象とする１つ以上の文章または１つ以上の単語を予測用データとして入力する予測用データ入力手段、および
上記予測用データ入力手段により入力された上記予測用データに対して上記単語抽出手段、上記文章ベクトル算出手段、上記単語ベクトル算出手段および上記指標値算出手段の処理を実行することによって得られる類似性指標値を、上記分類モデル生成手段により生成された上記分類モデルに適用することにより、上記予測対象データから上記複数の事象の何れかを予測する事象予測手段
としてコンピュータを更に機能させるための請求項９に記載の事象予測用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、事象予測装置、予測モデル生成装置および事象予測用プログラムに関し、特に、複数の単語を含む文章の内容に基づいて特定の事象を予測する技術および、この予測に用いる予測モデルを生成する技術に関するものである。
【背景技術】
【０００２】
従来、人工知能（ＡＩ）を使って特定の事象を予測する技術が広く使われている。人工知能の１つとして機械学習がある。機械学習は、人間が行っている学習と同様の機能をコンピュータで実現しようとする技術のことであり、教師あり学習、教師なし学習および強化学習の３つに大別される。最も広く普及している教師あり学習は、正解付きの多数の教師データを用意して、それを用いて学習を行うことによって分類モデルを生成し、生成した分類モデルをもとに予測対象のデータを分類するというものである。
【０００３】
何を教師データとして用いるかは多様であるが、文書データを教師データとして用いて機械学習を行うシステムが古くから知られている（例えば、特許文献１，２参照）。
【０００４】
特許文献１には、テキストデータから利用者の意図に合った規則性を容易に発見可能なテキストデータ分析装置が開示されている。この特許文献１に記載のテキストデータ分析装置では、テキストを分類するクラスを格納するテキストクラス格納部と、対象としている分野において重要な概念を示す単語の集合を概念定義辞書として格納する概念定義辞書格納部と、テキストの分析を行うテキスト分析部とを備える。テキスト分析部は、形態素解析によってテキストから単語列を生成し、得られた単語列からテキストの特徴を抽出し、テキストの特徴とそれに対応するクラスとを示す事例を生成し、生成された事例を用いて帰納学習を行うことにより、判断規則を生成してルール格納部に格納する。
【０００５】
特許文献２には、正解データに基づき機械学習を行うことにより文書を分類する文書分類装置が開示されている。この特許文献２に記載の文書分類装置では、正解データから、新たな事例を作り出すための元となる正解事例を機械学習の方式に応じて選択し、選択された正解事例から新たな正解事例を所定のルールに基づいて作り出し、機械学習用の正解事例の全部または一部に追加して機械学習用の正解データを作成する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００２−１４９６７５号公報
【特許文献２】特開２００４−２８７７７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
機械学習によって事象の予測を行う場合に、予測の精度を上げるためには、学習によって生成する分類モデルの精度を上げることが欠かせない。この点、特許文献２に記載の文書分類装置では、既にある機械学習のための正解事例から新たな事例を作り出すことにより、事例のバリエーションを増やして機械学習の精度を上げることを可能としている。
【０００８】
しかしながら、ただ事例の数を増やすだけでは、生成する分類モデルの精度を上げるのに限界がある。新たに作り出される事例が全て教師データとして適切なものとは限らないからである。また、適切な事例の数が増えたとしても、分類モデルを生成するアルゴリズムが十分に改良されていなければ、高精度な分類モデルを生成することが期待できないからである。
【０００９】
例えば、上記特許文献１のように、形態素解析によってテキストから得られた単語列に基づいてテキストの特徴を抽出する方式では、ただ単にテキスト内にどのような単語が含まれているかによって特徴データが生成されているだけであり、このような特徴データをもとに生成される分類モデルの精度を十分に上げることは難しい。同じ単語が複数のテキスト内に含まれる可能性があるのに対し、どの単語がどのテキストに対してどの程度寄与しているのか、あるいは、どのテキストがどの単語に対してどの程度寄与しているのかが特徴データとして十分に評価されていないからである。
【００１０】
本発明は、このような問題を解決するために成されたものであり、複数の単語を含む文章を対象として機械学習によって事象の予測を行う場合において、学習によって生成する分類モデルの精度を上げて、予測の精度を向上させることができるようにすることを目的とする。
【課題を解決するための手段】
【００１１】
上記した課題を解決するために、本発明の事象予測装置では、ｍ個の文章を解析して当該ｍ個の文章からｎ個の単語を抽出し、ｍ個の文章をそれぞれ所定のルールに従ってｑ次元にベクトル化することにより、ｑ個の軸成分から成るｍ個の文章ベクトルを算出するとともに、ｎ個の単語をそれぞれ所定のルールに従ってｑ次元にベクトル化することにより、ｑ個の軸成分から成るｎ個の単語ベクトルを算出し、さらに、ｍ個の文章ベクトルとｎ個の単語ベクトルとの内積をそれぞれとることにより、ｍ個の文章およびｎ個の単語間の関係性を反映したｍ×ｎ個の類似性指標値を算出する。そして、１つの文章についてｎ個の類似性指標値から成る文章指標値群をもとに、ｍ個の文章を複数の事象に分類するための分類モデルを生成するようにしている。予測対象とする文章から事象を予測する際には、１つ以上の文章を予測用データとして入力し、当該入力した予測用データに対して単語抽出、文章ベクトル算出、単語ベクトル算出および指標値算出の各処理を実行することによって得られる類似性指標値を分類モデルに適用することにより、予測対象データから複数の事象の何れかを予測するようにしている。
【発明の効果】
【００１２】
上記のように構成した本発明によれば、文章から算出された文章ベクトルと、文章内に含まれる単語から算出された単語ベクトルとの内積を計算することによって、文章および単語間の関係性を反映した類似性指標値が算出されるので、どの単語がどの文章に対してどの程度寄与しているのか、あるいは、どの文章がどの単語に対してどの程度寄与しているのかを内積の値として得ることができる。そして、このような性質を有する類似性指標値を用いて分類モデルが生成されるので、ｍ個の文章とｎ個の単語との寄与度を加味した上で、文章を複数の事象のうち何れかに適切に分類することができるようになる。よって、本発明によれば、文章を対象として機械学習によって事象の予測を行う場合において、学習によって生成する分類モデルの精度を上げて、文章から事象を予測する精度を向上させることができる。
【図面の簡単な説明】
【００１３】
【図１】本実施形態による事象予測装置の機能構成例を示すブロック図である。
【図２】本実施形態による事象予測装置の動作例を示すフローチャートである。
【図３】本実施形態による事象予測装置の他の機能構成例を示すブロック図である。
【発明を実施するための形態】
【００１４】
以下、本発明の一実施形態を図面に基づいて説明する。図１は、本実施形態による事象予測装置の機能構成例を示すブロック図である。本実施形態の事象予測装置は、その機能構成として、学習用データ入力部１０、単語抽出部１１、ベクトル算出部１２、指標値算出部１３、分類モデル生成部１４、予測用データ入力部２０および事象予測部２１を備えて構成されている。ベクトル算出部１２は、より具体的な機能構成として、文章ベクトル算出部１２Ａおよび単語ベクトル算出部１２Ｂを備えている。また、本実施形態の事象予測装置は、記憶媒体として、分類モデル記憶部３０を備えている。
【００１５】
なお、以下の説明の便宜上、単語抽出部１１、ベクトル算出部１２および指標値算出部１３で構成される部分を類似性指標値算出部１００と称する。類似性指標値算出部１００は、文章に関する文章データを入力し、文章とその中に含まれる単語との関係性を反映した類似性指標値を算出して出力するものである。また、本実施形態の事象予測装置は、類似性指標値算出部１００により算出される類似性指標値を利用して、文章の内容から特定の事象を予測する（複数の事象のうちどれに該当するかを予測する）ものである。なお、学習用データ入力部１０、類似性指標値算出部１００および分類モデル生成部１４により、本発明の予測モデル生成装置が構成される。
【００１６】
上記各機能ブロック１０〜１４，２０〜２１は、ハードウェア、ＤＳＰ（Digital Signal Processor）、ソフトウェアの何れによっても構成することが可能である。例えばソフトウェアによって構成する場合、上記各機能ブロック１０〜１４，２０〜２１は、実際にはコンピュータのＣＰＵ、ＲＡＭ、ＲＯＭなどを備えて構成され、ＲＡＭやＲＯＭ、ハードディスクまたは半導体メモリ等の記録媒体に記憶されたプログラムが動作することによって実現される。
【００１７】
学習用データ入力部１０は、複数の事象のうちどれに該当するかが既知であるｍ個（ｍは２以上の任意の整数）の文章に関する文章データを学習用データとして入力する。ここで、複数の事象は、２つであってもよいし、３つ以上であってもよい。例えば、特定の障害や症状が発生する可能性などのように、１つの事柄に関する発生可能性の有無を表す２つの事象とすることが可能である。あるいは、人の性格タイプや趣味趣向などのように、互いに性質の異なる２つ以上の事象の組み合わせとすることも可能である。なお、ここに挙げた事象は一例に過ぎず、これに限定されるものではない。
【００１８】
入力する文章データは、予測したい複数の事象に関連する文章が記述されたデータとするのが好ましい。例えば、システム障害の発生可能性の有無を予測するための予測モデルの構築を目的として学習用データを入力する場合は、システムの監視または検査の結果を記述したレポートに関する文章データを入力するといった具合である。
【００１９】
ただし、人の性格タイプや趣味趣向などを予測することなどが目的の場合は、予測したい複数の事象とはいっけん無関係と思われる文章であっても、以下に述べる解析によって、文章と事象との関係性が見出される可能性もあり得る。よって、予測したい複数の事象に関連すると人間が判断した文章のみを学習用データとすることは必須ではない。すなわち、予測したい複数の事象の内容によっては、当該複数の事象に明らかに関連する文章が記述されたデータのみならず、当該複数の事象にいっけん無関係と思われる文章が記述されたデータを含めて学習用データとして入力するようにしてもよい。
【００２０】
また、学習用データ入力部１０により入力する文章、つまり、後述の解析対象とする文章は、１つのセンテンス（句点によって区切られる単位）から成るものであってもよいし、複数のセンテンスから成るものであってもよい。複数のセンテンスから成る文章は、１つの文書に含まれる一部または全部の文章であってもよい。１つの文書に含まれる一部の文章を学習用データとして使用する場合、学習用データ入力部１０は、文書の中のどの部分の文章を学習用データとして使用するのかを設定した状態で、文章データを入力する（厳密に言うと、文書データを入力して、その文書の中の設定部分を文章データとして使用する）。例えば、複数の記載項目が存在する文書の中で、特定の記載項目に関する文章を学習用データとして使用するように設定することが考えられる。設定する記載項目は、１つでもよいし、複数でもよい。
【００２１】
単語抽出部１１は、学習用データ入力部１０により入力されたｍ個の文章を解析し、当該ｍ個の文章からｎ個（ｎは２以上の任意の整数）の単語を抽出する。文章の解析方法としては、例えば、公知の形態素解析を用いることが可能である。ここで、単語抽出部１１は、形態素解析によって分割される全ての品詞の形態素を単語として抽出するようにしてもよいし、特定の品詞の形態素のみを単語として抽出するようにしてもよい。
【００２２】
なお、ｍ個の文章の中には、同じ単語が複数含まれていることがある。この場合、単語抽出部１１は、同じ単語を複数個抽出することはせず、１つのみ抽出する。すなわち、単語抽出部１１が抽出するｎ個の単語とは、ｎ種類の単語という意味である。ここで、単語抽出部１１は、ｍ個の文章から同じ単語が抽出される頻度を計測し、出現頻度が大きい方からｎ個（ｎ種類）の単語、あるいは出現頻度が閾値以上であるｎ個（ｎ種類）の単語を抽出するようにしてもよい。
【００２３】
ベクトル算出部１２は、ｍ個の文章およびｎ個の単語から、ｍ個の文章ベクトルおよびｎ個の単語ベクトルを算出する。ここで、文章ベクトル算出部１２Ａは、単語抽出部１１による解析対象とされたｍ個の文章をそれぞれ所定のルールに従ってｑ次元にベクトル化することにより、ｑ個（ｑは２以上の任意の整数）の軸成分から成るｍ個の文章ベクトルを算出する。また、単語ベクトル算出部１２Ｂは、単語抽出部１１により抽出されたｎ個の単語をそれぞれ所定のルールに従ってｑ次元にベクトル化することにより、ｑ個の軸成分から成るｎ個の単語ベクトルを算出する。
【００２４】
本実施形態では、一例として、以下のようにして文章ベクトルおよび単語ベクトルを算出する。今、ｍ個の文章とｎ個の単語とから成る集合Ｓ＝＜ｄ∈Ｄ，ｗ∈Ｗ＞を考える。ここで、各文章ｄｉ（ｉ＝１，２，・・・，ｍ）および各単語ｗｊ（ｊ＝１，２，・・・，ｎ）に対してそれぞれ文章ベクトルｄｉ→および単語ベクトルｗｊ→（以下では、記号“→”はベクトルであることを指すものとする）を関連付ける。そして、任意の単語ｗｊと任意の文章ｄｉに対して、次の式(1)に示す確率Ｐ（ｗｊ｜ｄｉ）を計算する。
【００２５】
【数１】
2019194808.tif 000003
【００２６】
なお、この確率Ｐ（ｗｊ｜ｄｉ）は、例えば、文章や文書をパラグラフ・ベクトルにより評価することについて記述した論文「“Distributed Representations of Sentences and Documents”by Quoc Le and Tomas Mikolov, Google Inc, Proceedings of the 31st International Conference on Machine Learning Held in Bejing, China on 22-24 June 2014」に開示されている確率ｐに倣って算出することが可能な値である。この論文には、例えば、“the”、“cat”、“sat”という３つの単語があるときに、４つ目の単語として“on”を予測するとあり、その予測確率ｐの算出式が掲載されている。当該論文に記載されている確率ｐ（wt｜wt-k,・・・,wt+k）は、複数の単語wt-k,・・・,wt+kから別の１つの単語wtを予測したときの正解確率である。
【００２７】
これに対し、本実施形態で用いる式(1)に示される確率Ｐ（ｗｊ｜ｄｉ）は、ｍ個の文章のうち一の文章ｄｉから、ｎ個の単語のうち一の単語ｗｊが予想される正解確率を表している。１つの文章ｄｉから１つの単語ｗｊを予測するというのは、具体的には、ある文章ｄｉが出現したときに、その中に単語ｗｊが含まれる可能性を予測するということである。
【００２８】
式(1)では、ｅを底とし、単語ベクトルｗ→と文章ベクトルｄ→との内積値を指数とする指数関数値を用いる。そして、予測対象とする文章ｄｉと単語ｗｊとの組み合わせから計算される指数関数値と、文章ｄｉとｎ個の単語ｗｋ（ｋ＝１，２，・・・，ｎ）との各組み合わせから計算されるｎ個の指数関数値の合計値との比率を、一の文章ｄｉから一の単語ｗｊが予想される正解確率として計算している。
【００２９】
ここで、単語ベクトルｗｊ→と文章ベクトルｄｉ→との内積値は、単語ベクトルｗｊ→を文章ベクトルｄｉ→の方向に投影した場合のスカラ値、つまり、単語ベクトルｗｊ→が有している文章ベクトルｄｉ→の方向の成分値とも言える。これは、単語ｗｊが文章ｄｉに寄与している程度を表していると考えることができる。したがって、このような内積を利用して計算される指数関数値を用いて、ｎ個の単語ｗｋ（ｋ＝１，２，・・・，ｎ）について計算される指数関数値の合計に対する、１つの単語ｗｊについて計算される指数関数値の比率を求めることは、１つの文章ｄｉからｎ個の単語のうち１つの単語ｗｊが予想される正解確率を求めることに相当する。
【００３０】
なお、式(1)は、ｄｉとｗｊについて対称なので、ｎ個の単語のうち一の単語ｗｊから、ｍ個の文章のうち一の文章ｄｉが予想される確率Ｐ（ｄｉ｜ｗｊ）を計算してもよい。１つの単語ｗｊから１つの文章ｄｉを予測するというのは、ある単語ｗｊが出現したときに、それが文章ｄｉの中に含まれる可能性を予測するということである。この場合、文章ベクトルｄｉ→と単語ベクトルｗｊ→との内積値は、文章ベクトルｄｉ→を単語ベクトルｗｊ→の方向に投影した場合のスカラ値、つまり、文章ベクトルｄｉ→が有している単語ベクトルｗｊ→の方向の成分値とも言える。これは、文章ｄｉが単語ｗｊに寄与している程度を表していると考えることができる。
【００３１】
なお、ここでは、単語ベクトルｗ→と文章ベクトルｄ→との内積値を指数とする指数関数値を用いる計算例を示したが、指数関数値を用いることを必須とするものではない。単語ベクトルｗ→と文章ベクトルｄ→との内積値を利用した計算式であればよく、例えば、内積値そのものの比率により確率を求めるようにしてもよい。
【００３２】
次に、ベクトル算出部１２は、次の式(2)に示すように、上記式(1)により算出される確率Ｐ（ｗｊ｜ｄｉ）を全ての集合Ｓについて合計した値Ｌを最大化するような文章ベクトルｄｉ→および単語ベクトルｗｊ→を算出する。すなわち、文章ベクトル算出部１２Ａおよび単語ベクトル算出部１２Ｂは、上記式(1)により算出される確率Ｐ（ｗｊ｜ｄｉ）を、ｍ個の文章とｎ個の単語との全ての組み合わせについて算出し、それらを合計した値を目標変数Ｌとして、当該目標変数Ｌを最大化する文章ベクトルｄｉ→および単語ベクトルｗｊ→を算出する。
【００３３】
【数２】
2019194808.tif 000004
【００３４】
ｍ個の文章とｎ個の単語との全ての組み合わせについて算出した確率Ｐ（ｗｊ｜ｄｉ）の合計値Ｌを最大化するというのは、ある文章ｄｉ（ｉ＝１，２，・・・，ｍ）からある単語ｗｊ（ｊ＝１，２，・・・，ｎ）が予想される正解確率を最大化するということである。つまり、ベクトル算出部１２は、この正解確率が最大化するような文章ベクトルｄｉ→および単語ベクトルｗｊ→を算出するものと言える。
【００３５】
ここで、本実施形態では、上述したように、ベクトル算出部１２は、ｍ個の文章ｄｉをそれぞれｑ次元にベクトル化することにより、ｑ個の軸成分から成るｍ個の文章ベクトルｄｉ→を算出するとともに、ｎ個の単語をそれぞれｑ次元にベクトル化することにより、ｑ個の軸成分から成るｎ個の単語ベクトルｗｊ→を算出する。これは、ｑ個の軸方向を可変として、上述の目標変数Ｌが最大化するような文章ベクトルｄｉ→および単語ベクトルｗｊ→を算出することに相当する。
【００３６】
指標値算出部１３は、ベクトル算出部１２により算出されたｍ個の文章ベクトルｄｉ→とｎ個の単語ベクトルｗｊ→との内積をそれぞれとることにより、ｍ個の文章ｄｉおよびｎ個の単語ｗｊ間の関係性を反映したｍ×ｎ個の類似性指標値を算出する。本実施形態では、指標値算出部１３は、次の式(3)に示すように、ｍ個の文章ベクトルｄｉ→の各ｑ個の軸成分（ｄ11〜ｄmq）を各要素とする文章行列Ｄと、ｎ個の単語ベクトルｗｊ→の各ｑ個の軸成分（ｗ11〜ｗnq）を各要素とする単語行列Ｗとの積をとることにより、ｍ×ｎ個の類似性指標値を各要素とする指標値行列ＤＷを算出する。ここで、Ｗｔは単語行列の転置行列である。
【００３７】
【数３】
2019194808.tif 000005
【００３８】
このようにして算出された指標値行列ＤＷの各要素は、どの単語がどの文章に対してどの程度寄与しているのかを表したものと言える。例えば、１行２列の要素ｄｗ12は、単語ｗ2が文章ｄ1に対してどの程度寄与しているのかを表した値である。これにより、指標値行列ＤＷの各行は文章の類似性を評価するものとして用いることが可能であり、各列は単語の類似性を評価するものとして用いることが可能である。
【００３９】
分類モデル生成部１４は、指標値算出部１３により算出されたｍ×ｎ個の類似性指標値を用いて、１つの文章ｄｉ（ｉ＝１，２，・・・，ｍ）についてｎ個の類似性指標値ｄｗｊ（ｊ＝１，２，・・・，ｎ）から成る文章指標値群をもとに、ｍ個の文章ｄｉを複数の事象に分類するための分類モデルを生成する。例えば、第１〜第３の３つの事象に分類する分類モデルを生成する場合、分類モデル生成部１４は、第１の事象に該当することが既知である文章をもとに算出される文章指標値群については「第１の事象」に分類され、第２の事象に該当することが既知である文章をもとに算出される文章指標値群については「第２の事象」に分類され、第３の事象に該当することが既知である文章をもとに算出される文章指標値群については「第３の事象」に分類されるような分類モデルを生成する。そして、分類モデル生成部１４は、生成した分類モデルを分類モデル記憶部３０に記憶させる。
【００４０】
ここで、文章指標値群とは、例えば１つ目の文章ｄ１の場合、指標値行列ＤＷの１行目に含まれるｎ個の類似性指標値ｄｗ11〜ｄｗ1nがこれに該当する。同様に、２つ目の文章ｄ2の場合、指標値行列ＤＷの２行目に含まれるｎ個の類似性指標値ｄｗ21〜ｄｗ2nがこれに該当する。以下、ｍ個目の文章ｄmに関する文章指標値群（ｎ個の類似性指標値ｄｗm1〜ｄｗmn）まで同様である。
【００４１】
分類モデル生成部１４は、例えば、各文章ｄｉの文章指標値群についてそれぞれ特徴量を算出し、当該算出した特徴量の値に応じて、マルコフ連鎖モンテカルロ法による複数群分離の最適化を行うことにより、各文章ｄｉを複数の事象に分類するための分類モデルを生成する。ここで、分類モデル生成部１４が生成する分類モデルは、文章指標値群を入力として、予測したい複数の事象のうち何れかを解として出力する学習モデルである。あるいは、予測したい複数の事象のそれぞれに該当する可能性を確率として出力する学習モデルとしてもよい。学習モデルの形態は任意である。
【００４２】
例えば、分類モデル生成部１４が生成する分類モデルの形態は、回帰モデル（線形回帰、ロジスティック回帰、サポートベクターマシーンなどをベースとする学習モデル）、木モデル（決定木、回帰木、ランダムフォレスト、勾配ブースティング木などをベースとする学習モデル）、ニューラルネットワークモデル（パーセプトロン、畳み込みニューラルネットワーク、再起型ニューラルネットワーク、残差ネットワーク、ＲＢＦネットワーク、確率的ニューラルネットワーク、スパイキングニューラルネットワーク、複素ニューラルネットワークなどをベースとする学習モデル）、ベイズモデル（ベイズ推論などをベースとする学習モデル）、クラスタリングモデル（ｋ近傍法、階層型クラスタリング、非階層型クラスタリング、トピックモデルなどをベースとする学習モデル）などのうち何れかとすることが可能である。なお、ここに挙げた分類モデルは一例に過ぎず、これに限定されるものではない。
【００４３】
予測用データ入力部２０は、予測対象とする１つ以上の文章に関する文章データを予測用データとして入力する。予測用データ入力部２０が入力する文章データは、複数の事象のうちどれに該当するかが未知の文章に関する文章データである。予測用データ入力部２０が入力する文章データは、学習用データ入力部１０が入力する文章データと同様、予測したい複数の事象に関連する文章が記述されたデータであってもよいし、予測したい複数の事象とはいっけん無関係と思われる文章が記述されたデータであってもよい。
【００４４】
予測用データ入力部２０が入力する文章データの数（文章の数）ｍ’は、学習用データ入力部１０が入力する文章の数（ｍ個）と必ずしも同数でなくてもよい。予測用データ入力部２０が入力する文章データは、１つであってもよいし、複数であってもよい。ただし、予測用データ入力部２０が入力する文章についても類似性指標値を算出する。類似性指標値は、どの単語がどの文章に対してどの程度寄与しているのか、どの文章がどの単語に対してどの程度寄与しているのかを表したものであるため、予測用データ入力部２０が入力する文章についても複数とするのが好ましい。
【００４５】
事象予測部２１は、予測用データ入力部２０により入力された予測用データに対して、類似性指標値算出部１００の単語抽出部１１、ベクトル算出部１２および指標値算出部１３の処理を実行することによって得られる類似性指標値を、分類モデル生成部１４により生成された分類モデル（分類モデル記憶部３０に記憶された分類モデル）に適用することにより、予測対象データから複数の事象の何れかを予測する。
【００４６】
例えば、予測用データ入力部２０によりｍ’個の文章データが予測用データとして入力された場合、事象予測部２１がそのｍ’個の文章データについて類似性指標値算出部１００の処理を実行することにより、ｍ’個の文章指標値群を得る。事象予測部２１は、類似性指標値算出部１００により算出されたｍ’個の文章指標値群を１つずつ分類モデルに入力データとして与えることにより、ｍ’個の文章のそれぞれについて複数の事象のどれに該当するかを予測する。
【００４７】
ここで、単語抽出部１１は、ｍ個の学習用データから抽出したｎ個の単語と同じ単語をｍ’個の予測用データから抽出するのが好ましい。予測用データから抽出されるｎ個の単語から成る文章指標値群が、学習用データから抽出されたｎ個の単語から成る文章指標値群と同じ単語を要素とするものとなるので、分類モデル記憶部３０に記憶された分類モデルに対する適合度が高くなるからである。ただし、学習時と同じｎ個の単語を予測時にも抽出することを必須とするものではない。学習時とは異なる単語の組み合わせによって予測用の文章指標値群が生成される場合、分類モデルに対する適合度が低くなるものの、適合度が低いということ自体も評価の一要素として、事象に該当する可能性を予測すること自体は可能だからである。
【００４８】
図２は、上記のように構成した本実施形態による事象予測装置の動作例を示すフローチャートである。図２（ａ）は、分類モデルを生成する学習時の動作例を示し、図２（ｂ）は、生成された分類モデルを用いて事象の予測を行う予測時の動作例を示している。
【００４９】
図２（ａ）に示す学習時において、まず、学習用データ入力部１０は、複数の事象のうちどれに該当するかが既知であるｍ個の文章に関する文章データを学習用データとして入力する（ステップＳ１）。単語抽出部１１は、学習用データ入力部１０により入力されたｍ個の文章を解析し、当該ｍ個の文章からｎ個の単語を抽出する（ステップＳ２）。
【００５０】
次いで、ベクトル算出部１２は、学習用データ入力部１０により入力されたｍ個の文章および単語抽出部１１により抽出されたｎ個の単語から、ｍ個の文章ベクトルｄｉ→およびｎ個の単語ベクトルｗｊ→を算出する（ステップＳ３）。そして、指標値算出部１３は、ｍ個の文章ベクトルｄｉ→とｎ個の単語ベクトルｗｊ→との内積をそれぞれとることにより、ｍ個の文章ｄｉおよびｎ個の単語ｗｊ間の関係性を反映したｍ×ｎ個の類似性指標値（ｍ×ｎ個の類似性指標値を各要素とする指標値行列ＤＷ）を算出する（ステップＳ４）。
【００５１】
さらに、分類モデル生成部１４は、指標値算出部１３により算出されたｍ×ｎ個の類似性指標値を用いて、１つの文章ｄｉについてｎ個の類似性指標値ｄｗｊから成る文章指標値群をもとに、ｍ個の文章ｄｉを複数の事象に分類するための分類モデルを生成し、生成した分類モデルを分類モデル記憶部３０に記憶させる（ステップＳ５）。以上により、学習時の動作が終了する。
【００５２】
図２（ｂ）に示す予測時において、まず、予測用データ入力部２０は、複数の事象のうちどれに該当するかが未知の１つ以上の文章に関する文章データを予測用データとして入力する（ステップＳ１１）。事象予測部２１は、予測用データ入力部２０により入力された予測用データを類似性指標値算出部１００に供給し、類似性指標値の算出を指示する。
【００５３】
この指示に応じて、単語抽出部１１は、予測用データ入力部２０により入力されたｍ’個の文章を解析し、当該ｍ’個の文章からｎ個の単語（学習用データから抽出されたものと同じ単語）を抽出する（ステップＳ１２）。なお、ｍ’個の文章の中にｎ個の単語が全て含まれているとは限らない。ｍ’個の文章の中に存在しない単語についてはＮｕｌｌ値となる。
【００５４】
次いで、ベクトル算出部１２は、予測用データ入力部２０により入力されたｍ’個の文章および単語抽出部１１により抽出されたｎ個の単語から、ｍ’個の文章ベクトルｄｉ→およびｎ個の単語ベクトルｗｊ→を算出する（ステップＳ１３）。
【００５５】
そして、指標値算出部１３は、ｍ’個の文章ベクトルｄｉ→とｎ個の単語ベクトルｗｊ→との内積をそれぞれとることにより、ｍ’個の文章ｄｉおよびｎ個の単語ｗｊ間の関係性を反映したｍ’×ｎ個の類似性指標値（ｍ’×ｎ個の類似性指標値を各要素とする指標値行列ＤＷ）を算出する（ステップＳ１４）。指標値算出部１３は、算出したｍ’×ｎ個の類似性指標値を事象予測部２１に供給する。
【００５６】
事象予測部２１は、類似性指標値算出部１００から供給されたｍ’×ｎ個の類似性指標値をもとに、ｍ’個の文章指標値群をそれぞれ分類モデル記憶部３０に記憶された分類モデルに適用することにより、ｍ’個の文章のそれぞれについて複数の事象のどれに該当するかを予測する（ステップＳ１５）。これにより、予測時の動作が終了する。
【００５７】
以上詳しく説明したように、本実施形態では、文章から算出した文章ベクトルと、文章内に含まれる単語から算出した単語ベクトルとの内積を計算することによって、文章および単語間の関係性を反映した類似性指標値を算出し、この類似性指標値を用いて分類モデルを生成しているので、どの単語がどの文章に対してどの程度寄与しているのか、あるいは、どの文章がどの単語に対してどの程度寄与しているのかを表した類似性指標値を用いて分類モデルが生成される。このため、ｍ個の文章とｎ個の単語との寄与度を加味した上で、文章を複数の事象のうち何れかに分類することができるようになる。よって、本実施形態によれば、文章を対象として機械学習によって事象の予測を行う場合において、学習によって生成する分類モデルの精度を上げて、文章から事象を予測する精度を向上させることができる。
【００５８】
なお、上記実施形態では、複数の事象のうちどれに該当するかが既知である文章に関する文章データを学習用データとして用いる教師あり学習を適用した例について説明したが、これに強化学習を組み合わせるようにしてもよい。図３は、強化学習の仕組みを追加した他の実施形態に係る事象予測装置の機能構成例を示すブロック図である。
【００５９】
図３に示すように、他の実施形態に係る事象予測装置は、図１に示した構成に加えて報酬決定部２２を更に備えている。また、他の実施形態に係る事象予測装置は、図１に示した分類モデル生成部１４に代えて分類モデル生成部１４’を備えている。
【００６０】
報酬決定部２２は、事象予測部２１により予測された事象に対する実際の事象に応じて、分類モデル生成部１４’に与える報酬を決定する。例えば、報酬決定部２２は、事象予測部２１により予測された事象が実際の事象と一致している場合にはプラスの報酬を与えるように決定し、一致していない場合は無報酬またはマイナスの報酬を与えるように決定する。予測された事象が実際の事象と一致しているか否かの判定は、種々の方法により実施することが可能である。
【００６１】
例えば、複数の事象としてユーザの趣味趣向を予測する場合には、予測した趣味趣向に合わせた情報をユーザに提示し、その情報に対してユーザがアクションを起こした場合に、予測された事象が実際の事象と一致していると判定することが可能である。具体的な例として、予測した趣味趣向に合わせた商品やサービスの広告情報を、ユーザが閲覧しているウェブページに表示し、その広告情報をクリックして詳細情報を閲覧したり、その広告情報に掲載されている商品やサービスを購入したりするといったアクションをユーザが起こした場合に、予測された事象が実際の事象と一致していると判定する。
【００６２】
また、あるシステムについて特定の障害が発生する可能性を予測する場合には、システムの監視履歴を記録した履歴データに基づいて、実際に特定の障害が発生したか否かを監視し、予測された障害が実際に発生したことが履歴データから検出された場合に、予測された事象が実際の事象と一致していると判定することが可能である。同様に、複数のユーザについて特定の症状が発生する可能性などを予測する場合には、ユーザの診察履歴などの履歴データに基づいて、実際に特定の症状が発症したか否かを監視し、予測された症状が実際に発症したことが履歴データから検出された場合に、予測された事象が実際の事象と一致していると判定することが可能である。
【００６３】
分類モデル生成部１４’は、図１に示した分類モデル生成部１４と同様に、学習用データ入力部１０により入力された学習用データをもとに、分類モデルを生成し、分類モデル記憶部３０に記憶させる。これに加え、分類モデル生成部１４’は、報酬決定部２２により決定された報酬に応じて、分類モデル記憶部３０に記憶された分類モデルを改変する。このように、教師あり学習の仕組みに対して強化学習の仕組みを加えて分類モデルを生成することにより、分類モデルの精度を更に向上させることができる。
【００６４】
その他、上記実施形態は、何れも本発明を実施するにあたっての具体化の一例を示したものに過ぎず、これによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその要旨、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【００６５】
１０  学習用データ入力部
１１  単語抽出部
１２  ベクトル算出部
１２Ａ  文章ベクトル算出部
１２Ｂ  単語ベクトル算出部
１３  指標値算出部
１４，１４’  分類モデル生成部
２０  予測用データ入力部
２１  事象予測部
２２  報酬決定部
３０  分類モデル記憶部
１００  類似性指標値算出部
【図１】
2019194808.tif 000006
【図２】
2019194808.tif 000007
【図３】
2019194808.tif 000008