(57)【要約】【課題】ニューラルネットワークを用いた時系列データの予測モデルを短時間で生成する。【解決手段】予測モデル学習部１２１は、第１及び第２のニューラルネットワーク、及び、第３のニューラルネットワークを含む予測モデルの学習を行う。第１及び第２のニューラルネットワークには、予測対象種別、及び、予測対象種別に影響する可能性がある他の種別の内の少なくとも一方のデータ値の時系列を要素として含む集合が分割して入力される。第３のニューラルネットワークは、第１及び第２のニューラルネットワークの出力の内積を入力として、予測対象時刻における所定種別のデータ値の予測値を出力する。【選択図】図１
2015166962.tif 000002
【特許請求の範囲】
【請求項１】
予測対象種別、及び、前記予測対象種別に影響する可能性がある他の種別の内の少なくとも一方のデータ値の時系列を取得するデータ取得手段と、
前記データ値の時系列を要素として含む集合が分割して入力される第１及び第２のニューラルネットワーク、及び、前記第１及び第２のニューラルネットワークの出力の内積を入力として、予測対象時刻における前記予測対象種別のデータ値の予測値を出力する第３のニューラルネットワーク、を含む予測モデルの学習を行う、予測モデル学習手段と、
を備えた情報処理装置。
【請求項２】
さらに、
入力層、及び、出力層から構成される、前記集合が分割して入力される第４及び第５のニューラルネットワーク、及び、前記第４及び第５のニューラルネットワークの出力の内積を入力として、前記予測対象時刻における前記予定対象種別のデータ値の予測値を出力する第６のニューラルネットワーク、を含む解析モデルの学習を行う、解析モデル学習手段と、
前記第４及び第５のニューラルネットワークを基に、前記集合に含まれる各要素の重みを算出し、出力する、重み解析手段と、
を備えた、請求項１に記載の情報処理装置。
【請求項３】
前記重み解析手段は、前記解析モデルの学習により算出される、前記第４及び第５のニューラルネットワークの各々における、入力層の各要素と出力層の各要素間の重みをもとに、前記集合に含まれる各要素の重みを算出する、
請求項２に記載の情報処理装置。
【請求項４】
前記重み解析手段は、前記解析モデルの学習により算出される、前記第４及び第５のニューラルネットワークの各々における、入力層の各要素と出力層の各要素間の重みをもとに、前記集合に含まれる要素の内の、前記第４のニューラルネットワークに入力される各要素と前記第５のニューラルネットワークに入力される各要素とのペアの重みを算出し、当該ペアの重みをもとに、前記集合に含まれる各要素の重みを算出する、
請求項３に記載の情報処理装置。
【請求項５】
前記集合は、前記予測対象時刻を基準とした所定時刻におけるデータ値を要素として含む、
請求項１乃至４のいずれかに記載の情報処理装置。
【請求項６】
予測対象種別、及び、前記予測対象種別に影響する可能性がある他の種別の内の少なくとも一方のデータ値の時系列を取得し、
前記データ値の時系列を要素として含む集合が分割して入力される第１及び第２のニューラルネットワーク、及び、前記第１及び第２のニューラルネットワークの出力の内積を入力として、前記予測対象時刻における前記予定対象種別のデータ値の予測値を出力する第３のニューラルネットワーク、を含む予測モデルの学習を行う、
学習方法。
【請求項７】
さらに、
入力層、及び、出力層から構成される、前記集合が分割して入力される第４及び第５のニューラルネットワーク、及び、前記第４及び第５のニューラルネットワークの出力の内積を入力として、前記予測対象時刻における前記予定対象種別のデータ値の予測値を出力する第６のニューラルネットワーク、を含む解析モデルの学習を行い、
前記第４及び第５のニューラルネットワークを基に、前記集合に含まれる各要素の重みを算出し、出力する、
を備えた、請求項６に記載の学習方法。
【請求項８】
前記集合に含まれる各要素の重みを算出する場合、前記解析モデルの学習により算出される、前記第４及び第５のニューラルネットワークの各々における、入力層の各要素と出力層の各要素間の重みをもとに、前記集合に含まれる各要素の重みを算出する、
請求項７に記載の学習方法。
【請求項９】
コンピュータに、
予測対象種別、及び、前記予測対象種別に影響する可能性がある他の種別の内の少なくとも一方のデータ値の時系列を取得し、
前記データ値の時系列を要素として含む集合が分割して入力される第１及び第２のニューラルネットワーク、及び、前記第１及び第２のニューラルネットワークの出力の内積を入力として、前記予測対象時刻における前記予定対象種別のデータ値の予測値を出力する第３のニューラルネットワーク、を含む予測モデルの学習を行う、
処理を実行させるプログラム。
【請求項１０】
さらに、
入力層、及び、出力層から構成される、前記集合が分割して入力される第４及び第５のニューラルネットワーク、及び、前記第４及び第５のニューラルネットワークの出力の内積を入力として、前記予測対象時刻における前記予定対象種別のデータ値の予測値を出力する第６のニューラルネットワーク、を含む解析モデルの学習を行い、
前記第４及び第５のニューラルネットワークを基に、前記集合に含まれる各要素の重みを算出し、出力する、
処理を実行させる請求項９に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、学習方法、及び、プログラムに関し、特に、時系列データの予測を行う情報処理装置、学習方法、及び、プログラムに関する。
【背景技術】
【０００２】
ＩＴ（Information Technology）の進化、普及に伴い、多くの情報が電子データとして蓄積されつつある。また、近年、安価に大量の計算機リソースを利用できるようになり、大量のデータを活用する環境が整ってきた。このような状況の中で、蓄積された情報を分析することで意思決定に活用することが求められている。例えば、商品や電力の需要予測、気象予測など、広範囲の分野で、時系列データを用いた予測（時系列予測）が行われている。時系列予測には、重回帰分析、ニューラルネットワークなど様々な手法があるが、階層型ニューラルネットワークはノイズ除去に優れ、周期性を持つデータの予測に使用されることが多い。
【０００３】
このような階層型ニューラルネットワークを用いて時系列予測を行う方法が、例えば、特許文献１に開示されている。
【０００４】
なお、関連技術として、非特許文献１には、教師ありの機械学習アルゴリズムの一手法である、ＳＳＩ（Supervised Semantic Indexing）が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−１０９１５０号公報
【非特許文献】
【０００６】
【非特許文献１】Bing Bai, et al, "Supervised Semantic Indexing", Conference: International Conference on Information and Knowledge Management - CIKM, pp.761-765, 2009
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ニューラルネットワークを用いた時系列データの予測においては、予測対象毎に、入力パラメータを適切に選択する必要がある。入力パラメータとしては、予測対象のデータの実測値をそのまま使うだけでなく、それを加工した値を用いることもできる。例えば、実測値から算出した差分や、平均、標準偏差、あるいは、日時情報をもとにフラグ化された曜日、休日等も、入力パラメータとして用いることができる。また、対象地域の気象データ等、予測対象に影響を与えるデータも入力パラメータとして用いることができる。
【０００８】
このように、予測を行うための入力パラメータは無数に考えられる。このため、ニューラルネットワークの予測精度を向上させるためには、ユーザは、学習と予測を繰り返し、その結果を考察しながら、膨大な数のパラメータの中から、入力として用いるパラメータの選択を行うといった、試行錯誤を重ねる必要がある。したがって、最適な予測モデルを得るまでには非常に多くの時間を要する。
【０００９】
本発明の目的は、上述した課題を解決し、ニューラルネットワークを用いた時系列データの予測モデルを短時間で生成できる、情報処理装置、学習方法、及び、プログラムを提供することである。
【課題を解決するための手段】
【００１０】
本発明の情報処理装置は、予測対象種別、及び、前記予測対象種別に影響する可能性がある他の種別の内の少なくとも一方のデータ値の時系列を取得するデータ取得手段と、前記データ値の時系列を要素として含む集合が分割して入力される第１及び第２のニューラルネットワーク、及び、前記第１及び第２のニューラルネットワークの出力の内積を入力として、予測対象時刻における前記予測対象種別のデータ値の予測値を出力する第３のニューラルネットワーク、を含む予測モデルの学習を行う、予測モデル学習手段と、を備える。
【００１１】
本発明の学習方法は、予測対象種別、及び、前記予測対象種別に影響する可能性がある他の種別の内の少なくとも一方のデータ値の時系列を取得し、前記データ値の時系列を要素として含む集合が分割して入力される第１及び第２のニューラルネットワーク、及び、前記第１及び第２のニューラルネットワークの出力の内積を入力として、前記予測対象時刻における前記予定対象種別のデータ値の予測値を出力する第３のニューラルネットワーク、を含む予測モデルの学習を行う。
【００１２】
本発明のプログラムは、コンピュータに、予測対象種別、及び、前記予測対象種別に影響する可能性がある他の種別の内の少なくとも一方のデータ値の時系列を取得し、前記データ値の時系列を要素として含む集合が分割して入力される第１及び第２のニューラルネットワーク、及び、前記第１及び第２のニューラルネットワークの出力の内積を入力として、前記予測対象時刻における前記予定対象種別のデータ値の予測値を出力する第３のニューラルネットワーク、を含む予測モデルの学習を行う、処理を実行させる。
【発明の効果】
【００１３】
本発明の効果は、ニューラルネットワークを用いた時系列データの予測モデルを短時間で生成できることである。
【図面の簡単な説明】
【００１４】
【図１】本発明の第１の実施の形態の特徴的な構成を示すブロック図である。
【図２】本発明の第１の実施の形態における、学習装置１００の構成を示すブロック図である。
【図３】本発明の第１の実施の形態における、予測モデルの例を示す図である。
【図４】本発明の第１の実施の形態における、学習用データのデータセットの例を示す図である。
【図５】本発明の第１の実施の形態における、学習用データと予測用データの例を示す図である
【図６】本発明の第１の実施の形態における、学習処理を示すフローチャートである。
【図７】本発明の第１の実施の形態における、予測処理を示すフローチャートである。
【図８】本発明の第２の実施の形態における、学習装置１００の構成を示すブロック図である。
【図９】本発明の第２の実施の形態における、解析モデルの例を示す図である。
【図１０】本発明の第２の実施の形態における、学習処理を示すフローチャートである。
【図１１】本発明の第２の実施の形態における、解析処理を示すフローチャートである。
【図１２】本発明の第２の実施の形態における、重みの算出方法を示す図である。
【図１３】本発明の第２の実施の形態における、各要素ペアの重みの算出例を示す図である。
【図１４】本発明の第２の実施の形態における、各要素の重みの算出例を示す図である。
【発明を実施するための形態】
【００１５】
（第１の実施の形態）
本発明の第１の実施の形態について説明する。
【００１６】
はじめに、本発明の第１の実施の形態における予測モデルについて説明する。
【００１７】
本発明の第１の実施の形態では、予測モデルとして、非特許文献１に記載されているＳＳＩを用いる。ＳＳＩは、文書やＷｅｂページ等のテキスト集合間の類似度の算出のために考えられた手法であり、２つの入力データ群から最適な出力を学習する機械学習アルゴリズムである。本発明の第１の実施の形態では、ＳＳＩの内部の学習モデルに階層型ニューラルネットワークを適用して、ディープラーニングを行う。
【００１８】
図３は、本発明の第１の実施の形態における、予測モデルの例を示す図である。
【００１９】
本発明の第１の実施の形態における予測モデルは、図３に示すように３つのニューラルネットワーク（Ｘネットワーク、Ｙネットワーク、及び、Ｚネットワーク）により構成される。これらの３つのニューラルネットワークの各々は、入力層、１以上の中間層、及び、出力層により構成される、３層以上の階層ニューラルネットワークである。なお、これらのニューラルネットワークは、中間層を省いた、２層のニューラルネットワークでもよい。
【００２０】
Ｘネットワーク、Ｙネットワークには、予測モデルの入力として、Ｘベクトル、Ｙベクトルが、それぞれ入力される。また、Ｚネットワークには、Ｘネットワークの出力ベクトルとＹネットワークの出力ベクトルの内積（コサイン類似度）が入力される。Ｚネットワークは、予測モデルの出力（output）である、予測値を出力する。
【００２１】
予測モデルの入力であるＸベクトルとＹベクトルの要素は、ＸベクトルとＹベクトルとの要素の間で相関を有するように設定されることが望ましい。
【００２２】
本発明の第１の実施の形態では、予測の対象とする種別（予測対象種別）のデータ値、及び、予測対象種別に影響を与える可能性がある他の種別の内の少なくとも一方のデータ値の時系列を用いて、予測対象種別のデータ値を予測する。
【００２３】
予測モデルのＸベクトルとＹベクトルには、予測対象種別、及び、他の種別の内の少なくとも一方のデータ値の時系列を要素として含む集合が分割して設定される。ここで、集合には、予測対象時刻を基準とした所定の時刻におけるデータ値が、要素として設定される。そして、Ｚネットワークの出力として、予測の対象とする時刻（予測対象時刻）における、予測対象種別のデータ値の予測値が出力される。
【００２４】
例えば、予測対象種別が消費電力、予測対象時刻が１時間後の場合、すなわち、１時間後の消費電力の値を予測する場合を考える。ここで、予測対象種別に影響を与える可能性がある他の種別として、休日フラグ（平日か休日かを示すフラグ）を用いると仮定する。この場合、予測モデルのＸベクトルとＹベクトルには、例えば、現在以前の時刻における電力の実測値と、１時間後以前の時刻における休日フラグの値と、の集合が分割して設定される。例えば、Ｘベクトルの要素には、電力の過去の実測値（１時間前の実測値、２時間前の実測値、…、Ｎ時間前の実測値）が設定される。また、Ｙベクトルの要素には、電力の現在の実測値と、予測対象時刻における休日フラグの値が設定される。なお、他の種別として、予測対象時刻以前や以降の各時刻における天気や気温等、休日フラグ以外の種別が設定されてもよい。
【００２５】
また、他の種別のデータ値として、予測対象種別の実測値の１時間前の実測値との差分や、任意の範囲の実測値の移動平均、標準偏差、最小値、最大値、中央値等が用いられてもよい。また、これらを組み合わせた値が用いられてもよい。
【００２６】
なお、Ｘベクトル及びＹベクトルの各要素の値には、０〜１の範囲で正規化された値が用いられる。
【００２７】
次に、本発明の第１の実施の形態の構成を説明する。
【００２８】
図２は、本発明の第１の実施の形態における、学習装置１００の構成を示すブロック図である。学習装置１００は、本発明の情報処理装置の一実施形態である。図２を参照すると、本発明の第１の実施の形態における学習装置１００は、処理受付部１１０、学習部１２０、予測部１３０、及び、予測モデル記憶部１４０を含む。
【００２９】
処理受付部１１０は、ユーザから学習処理、予測処理の要求を受け付け、結果をユーザへ返却する。処理受付部１１０は、データ取得部１１１を含む。データ取得部１１１は、ユーザから、学習用データ、及び、予測用データを取得する。データ取得部１１１は、学習用データ、及び、予測用データを、他の装置や、記憶部（図示せず）から取得してもよい。
【００３０】
図４は、本発明の第１の実施の形態における、学習用データのデータセットの例を示す図である。
【００３１】
学習用データは、予測モデルの入力であるＸベクトルとＹベクトル、及び、予測値の正解値（target）の組（データセット）を、学習期間分含むデータである。
【００３２】
図４は、上述の消費電力予測における学習用データのデータセットの例である。図４の例では、Ｘベクトルとして、消費電力の過去の実測値、Ｙベクトルとして、消費電力の現在の実測値と予測対象時刻の休日フラグ、及び、正解値（target）として、消費電力の予測対象時刻の実測値が設定されている。
【００３３】
予測用データは、予測モデルの入力であるＸベクトルとＹベクトルの組（データセット）を、学習期間とは異なる、予測期間分含むデータである。なお、予測用データのデータセットも、予測値の正解値を含んでいてもよい。この場合、正解値は、予測した値との誤差率の算出のために用いられる。
【００３４】
図５は、本発明の第１の実施の形態における、学習用データと予測用データの例を示す図である。
【００３５】
図５の例では、学習期間「2013/02/01 00:00〜2013/02/21 23:00」、予測期間「2013/02/22 00:00〜2013/02/28 23:00」について、１時間毎のデータセットが用いられている。
【００３６】
なお、データ取得部１１１は、予測対象種別のデータ値や、他の種別のデータ値の時系列をもとに、図５のような形式の学習データ、及び、予測データを生成してもよい。
【００３７】
学習部１２０は、予測モデル学習部１２１を含む。予測モデル学習部１２１は、学習用データを基に、予測モデルの学習（生成、及び、最適化）を行う。
【００３８】
予測部１３０は、予測用データと予測モデルを用いて、予測対象時刻における、予測対象種別のデータ値の予測を行う。
【００３９】
予測モデル記憶部１４０は、予測モデル学習部１２１により生成された予測モデルを記憶する。
【００４０】
なお、学習装置１００は、ＣＰＵ（Central Processing Unit）とプログラムを記憶した記憶媒体を含み、プログラムに基づく制御によって動作するコンピュータであってもよい。この場合、学習装置１００のＣＰＵが、処理受付部１１０、学習部１２０、及び、予測部１３０の機能を実現するためのコンピュータプログラムを実行する。また、学習装置１００の記憶媒体は、予測モデル記憶部１４０の情報を記憶する。
【００４１】
次に、本発明の第１の実施の形態における学習装置１００の動作について説明する。学習装置１００の動作は、学習処理、及び、予測処理に分かれる。
【００４２】
はじめに、本発明の第１の実施の形態における、学習処理を説明する。
【００４３】
図６は、本発明の第１の実施の形態における、学習処理を示すフローチャートである。
【００４４】
はじめに、学習部１２０は、処理受付部１１０を介して、ユーザから学習処理の要求を受け付ける。学習部１２０は、データ取得部１１１から、学習用データを取得する。
【００４５】
学習部１２０の予測モデル学習部１２１は、初期予測モデルを生成する（ステップＳ１０１）。初期予測モデルにおける、各ニューラルネットワーク（Ｘネットワーク、Ｙネットワーク、Ｚネットワーク）内の重みは、例えば、ランダムに設定される。なお、初期予測モデルの重みには、所定の初期値が設定されてもよい。
【００４６】
予測モデル学習部１２１は、学習用データから、ランダムにデータセット（Ｘベクトル、Ｙベクトル、及び、正解値（target））を抽出する（ステップＳ１０２）。
【００４７】
予測モデル学習部１２１は、抽出したデータセットのＸベクトル、Ｙベクトルを予測モデルに入力して（ステップＳ１０３）、出力値（output）を算出する（ステップＳ１０４）。
【００４８】
予測モデル学習部１２１は、出力値（output）と正解値（target）の誤差を算出する（ステップＳ１０５）。
【００４９】
予測モデル学習部１２１は、算出された誤差を基に、各ニューラルネットワーク（Ｘネットワーク、Ｙネットワーク、Ｚネットワーク）の重みを修正する（ステップＳ１０６）。ここで、予測モデル学習部１２１は、図３のように、Ｚネットワーク内の誤差伝搬（バックプロパゲーション）により、Ｚネットワークの重みを修正する。そして、予測モデル学習部１２１は、ＺネットワークからＸネットワーク、及び、Ｙネットワークへの誤差伝搬を行う。そして、予測モデル学習部１２１は、Ｘネットワーク、Ｙネットワーク内の誤差伝搬により、Ｘネットワーク、Ｙネットワークの各々の重みを修正する。
【００５０】
予測モデル学習部１２１は、誤差率が収束するまで、ステップＳ１０３からの処理を繰り返す（ステップＳ１０７）。
【００５１】
誤差率が収束した場合（ステップＳ１０７／Ｙ）、予測モデル学習部１２１は、学習（生成）した予測モデルを、予測モデル記憶部１４０に保存する（ステップＳ１０８）。
【００５２】
学習部１２０は、処理受付部１１０を介して、ユーザに処理結果（予測モデルの学習完了）を返却する（ステップＳ１０９）。
【００５３】
次に、本発明の第１の実施の形態における、予測処理を説明する。予測処理は、学習処理により予測モデルが生成された後に行われる。
【００５４】
図７は、本発明の第１の実施の形態における、予測処理を示すフローチャートである。
【００５５】
はじめに、予測部１３０は、処理受付部１１０を介して、ユーザから予測処理の要求を受け付ける。予測部１３０は、データ取得部１１１から、予測用データを取得する。
【００５６】
予測部１３０は、予測用データから、データセット（Ｘベクトル、Ｙベクトル）を抽出して、予測モデルに入力し（ステップＳ２０１）、出力値（output）を算出する（ステップＳ２０２）。
【００５７】
学習部１２０は、算出した出力値（output）を予測結果として、処理受付部１１０を介して、ユーザに返却する（ステップＳ２０３）。なお、学習部１２０は、予測結果を記憶部（図示せず）や他の装置に出力してもよい。
【００５８】
以上により、本発明の第１の実施の形態の動作が完了する。
【００５９】
次に、本発明の第１の実施の形態の特徴的な構成を説明する。図１は、本発明の第１の実施の形態の特徴的な構成を示すブロック図である。
【００６０】
図１を参照すると、学習装置１００（情報処理装置）は、データ取得部１１１、及び、予測モデル学習部１２１を含む。
【００６１】
データ取得部１１１は、予測対象種別、及び、予測対象種別に影響する可能性がある他の種別の内の少なくとも一方のデータ値の時系列を取得する。
【００６２】
予測モデル学習部１２１は、第１及び第２のニューラルネットワーク（Ｘ、Ｙネットワーク）、及び、第３のニューラルネットワーク（Ｚネットワーク）を含む予測モデルの学習を行う。第１及び第２のニューラルネットワークには、上述のデータ値の時系列を要素として含む集合が分割して入力される。第３のニューラルネットワークは、第１及び第２のニューラルネットワークの出力の内積を入力として、予測対象時刻における所定種別のデータ値の予測値を出力する。
【００６３】
次に、本発明の第１の実施の形態の効果を説明する。
【００６４】
本発明の第１の実施の形態によれば、時系列データの予測モデルを短時間で生成できる。その理由は、予測モデル学習部１２１が、時系列データの予測モデルとして、ＳＳＩにニューラルネットワークを適用した予測モデルの学習を行うためである。
【００６５】
ＳＳＩにニューラルネットワークを適用した予測モデルでは、各ネットワークで学習が並列して実行されるため、学習処理が高速に行われる。このため、入力される要素（パラメータ）数が多くても学習時間が短い。また、Ｘ及びＹネットワークの２つのネットワークで学習が行われるため、サンプルデータが少なくても、高い精度の予測モデルが得られる。したがって、入力される要素（パラメータ）の吟味を行わずに、多数の要素（パラメータ）を含む学習データを用いて学習しても、通常のニューラルネットワークを用いた場合に比べて、短時間で高い精度の予測モデルが得られる。
【００６６】
（第２の実施の形態）
次に、本発明の第２の実施の形態について説明する。
【００６７】
本発明の第２の実施の形態においては、解析モデルを用いて、ＸベクトルとＹベクトルの各要素の重みを算出する点において、本発明の第１の実施の形態と異なる。
【００６８】
はじめに、本発明の第２の実施の形態における予測モデルと解析モデルについて説明する。
【００６９】
本発明の第２の実施の形態における予測モデルは、本発明の第１の実施の形態の予測モデル（図３）と同様に、３つのニューラルネットワーク（Ｘネットワーク、Ｙネットワーク、Ｚネットワーク）により構成される。ここで、少なくとも、Ｘネットワーク、及び、Ｙネットワークは、３層以上の階層ニューラルネットワークである。
【００７０】
図９は、本発明の第２の実施の形態における、解析モデルの例を示す図である。
【００７１】
本発明の第２の実施の形態における解析モデルは、予測モデルと同様に、３つのニューラルネットワーク（Ｘネットワーク、Ｙネットワーク、Ｚネットワーク）により構成される。しかしながら、予測モデルとは異なり、解析モデルにおけるＸネットワーク、及び、Ｙネットワークは、中間層を省いた、２層のニューラルネットワークである。
【００７２】
解析モデルのＸベクトルとＹベクトルには、予測モデルと同じデータ値の集合が、それぞれ設定される。また、Ｚネットワークの出力として、予測モデルと同様に、予測対象時刻における、予測対象種別のデータ値の予測値が出力される。
【００７３】
次に、本発明の第２の実施の形態の構成を説明する。
【００７４】
図８は、本発明の第２の実施の形態における、学習装置１００の構成を示すブロック図である。図８を参照すると、本発明の第２の実施の形態における学習装置１００は、本発明の第１の実施の形態の構成に加えて、重み解析部１５０、及び、解析モデル記憶部１６０を含む。また、学習部１２０は、予測モデル学習部１２１に加えて、解析モデル学習部１２２を含む。
【００７５】
解析モデル学習部１２２は、学習用データを基に、解析モデルの学習（生成、及び、最適化）を行う。
【００７６】
重み解析部１５０は、解析モデルに入力されるＸベクトルとＹベクトルの各要素の重みを算出する。
【００７７】
解析モデル記憶部１６０は、解析モデル学習部１２２により生成された解析モデルを記憶する。
【００７８】
次に、本発明の第２の実施の形態における学習装置１００の動作について説明する。学習装置１００の動作は、学習処理、予測処理、及び、解析処理に分かれる。
【００７９】
はじめに、本発明の第２の実施の形態における、学習処理を説明する。
【００８０】
図１０は、本発明の第２の実施の形態における、学習処理を示すフローチャートである。
【００８１】
はじめに、学習部１２０は、処理受付部１１０を介して、ユーザから学習処理の要求を受け付ける。学習部１２０は、データ取得部１１１から、学習用データを取得する。
【００８２】
学習部１２０の予測モデル学習部１２１は、本発明の第１の実施の形態の学習処理（ステップＳ１０１〜Ｓ１０８）と同様に、学習用データをもとに予測モデルを生成し、予測モデル記憶部１４０に保存する（ステップＳ３０１〜Ｓ３０８）。
【００８３】
解析モデル学習部１２２も、本発明の第１の実施の形態の学習処理（ステップＳ１０１〜Ｓ１０８）と同様に、学習用データをもとに上述の解析モデルを生成し、解析モデル記憶部１６０に保存する（ステップＳ３１１〜Ｓ３１８）。
【００８４】
学習部１２０は、処理受付部１１０を介して、ユーザに処理結果（予測モデル、及び、解析モデルの学習完了）を返却する（ステップＳ３２１）。
【００８５】
次に本発明の第２の実施の形態における、予測処理を説明する。
【００８６】
本発明の第２の実施の形態における予測処理は、本発明の第１の実施の形態における予測処理（ステップＳ２０１〜Ｓ２０３）と同様となる。
【００８７】
次に本発明の第２の実施の形態における、解析処理を説明する。解析処理は、学習処理により解析モデルが生成された後に行われる。
【００８８】
図１１は、本発明の第２の実施の形態における、解析処理を示すフローチャートである。
【００８９】
はじめに、重み解析部１５０は、処理受付部１１０を介して、ユーザから重み解析の要求を受け付ける。
【００９０】
重み解析部１５０は、解析モデル記憶部１６０から解析モデルを取得する（ステップＳ４０１）。
【００９１】
重み解析部１５０は、解析モデルを用いて、ＸベクトルとＹベクトルとの間の各要素ペアについて、重みを算出する（ステップＳ４０２）。
【００９２】
図１２は、本発明の第２の実施の形態における、重みの算出方法を示す図である。
【００９３】
図１２の例では、Ｘベクトルは、３次元ベクトルＸ＝（ｘ１、ｘ２、ｘ３）、Ｙベクトルは、２次元ベクトルＹ＝（ｙ１、ｙ２）である。また、Ｘネットワークの出力（Ｐベクトル）は、４次元ベクトルＰ＝（ｐ１、ｐ２、ｐ３、ｐ４）、Ｙネットワークの出力（Ｑベクトル）も４次元ベクトルＱ＝（ｑ１、ｑ２、ｑ３、ｑ４）である。
【００９４】
また、Ｗ１、Ｗ２、Ｗ３はＰベクトルに対する要素ｘ１、ｘ２、ｘ３の重みベクトルＷ１＝（ｗ１１、ｗ１２、ｗ１３、ｗ１４）、Ｗ２＝（ｗ２１、ｗ２２、ｗ２３、ｗ２４）、Ｗ３＝（ｗ３１、ｗ３２、ｗ３３、ｗ３４）である。Ｖ１、Ｖ２はＱベクトルに対する要素ｙ１、ｙ２の重みベクトルＶ１＝（ｖ１１、ｖ２１、ｖ３１、ｖ４１）、Ｖ２＝（ｖ１２、ｖ２２、ｖ３２、ｖ４２）である。
【００９５】
Ｚネットワークへの入力は、ＰベクトルとＱベクトルの内積として算出される。ここで、ＰベクトルとＱベクトルの内積は、数１式のように行列変換できる。
【００９６】
【数１】
2015166962.tif 000003
【００９７】
したがって、要素ｘ１とｙ１のペアの重みｄ１１は、Ｗ１ベクトルとＶ１ベクトルとの内積として算出できる。
【００９８】
すなわち、Ｘ＝（ｘ１、ｘ２、…、ｘｍ）、Ｙ＝（ｙ１、ｙ２、…、ｙｎ）（ｍ、ｎは、それぞれＸ、Ｙベクトルの次元数）とすると、Ｘベクトルの要素ｘｉとＹベクトルの要素ｙｊのペアの重みｄｉｊは、数２式のように算出される。
【００９９】
【数２】
2015166962.tif 000004
【０１００】
ここで、Ｗｉ＝（ｗｉ１、ｗｉ２、…、ｗｉｋ）、Ｖｊ＝（ｖ１ｊ、ｖ２ｊ、…、ｖｋｊ）（ｋはＰ、Ｑベクトルの次元数）である。これをｍ×ｎ回分繰り返すことにより、全要素ペアの重みが算出される。
【０１０１】
重み解析部１５０は、ステップＳ４０２で算出された各要素ペアの重みをもとに、Ｘベクトルの各要素の重みを算出する（ステップＳ４０３）。
【０１０２】
Ｘベクトルの要素ｘｉの重みｄｉは、数３式のように算出される。
【０１０３】
【数３】
2015166962.tif 000005
【０１０４】
これをｍ回分繰り返すことにより、Ｘベクトルの全要素の重みが算出される。
【０１０５】
同様に、重み解析部１５０は、ステップＳ４０２で算出された各要素ペアの重みをもとに、Ｙベクトルの各要素の重みを算出する（ステップＳ４０４）。
【０１０６】
Ｙベクトルの要素ｙｊの、Ｚネットワークへの入力に対する重みｄｊは、数４式のように計算される。
【０１０７】
【数４】
2015166962.tif 000006
【０１０８】
これをｎ回分繰り返すことにより、Ｙベクトルの全要素の重みが算出される。
【０１０９】
重み解析部１５０は、ステップＳ４０３、Ｓ４０４で算出された各要素の重みを算出結果として、処理受付部１１０を介して、ユーザに返却する（ステップＳ４０５）。なお、重み解析部１５０は、各要素の重みを、記憶部（図示せず）や他の装置に出力してもよい。
【０１１０】
本発明の第２の実施の形態における解析モデルは、ＳＳＩに従った予測モデルのＸネットワーク、Ｙネットワークにおける中間層を省いたモデルである。一般的に多く用いられている３層ニューラルネットワークでは、中間層を省くと回帰分析と同等になる。しかしながら、ＳＳＩでは、複数の階層ニューラルネットワークを多段に組み合わせているため、Ｘネットワーク、Ｙネットワークにおける中間層を省いても、階層ニューラルネットワークは維持される。また、階層ニューラルネットワークでは、層が増えると１層の寄与は小さくなる。このため、解析モデルのように、予測モデルから層を１つ減らしたモデルであっても、予測モデルの特性を著しく損なわない。
【０１１１】
したがって、解析モデルにおけるＸ、Ｙベクトルの各要素の重みは、予測モデルにおけるＸ、Ｙベクトルの各要素の重みとは同一でないものの、予測モデルにおける重みの傾向をある程度近似していると考えられる。
【０１１２】
ユーザは、解析モデルにおける各要素の重みをもとに、予測モデルにおける各要素の重み（予測値への影響度）を推定できる。
【０１１３】
図１３は、本発明の第２の実施の形態における、各要素ペアの重みの算出例を示す図である。図１３の重みは、図４の学習用データに対して算出されている。また、図１４は、本発明の第２の実施の形態における、各要素の重みの算出例を示す図である。図１４の重みは、図１３の各要素ペアの重みをもとに算出されている。
【０１１４】
図１４の例では、重みが大きい、要素ＰＷＲ０、Ｈ１、ＰＷＲ−１３が、予測値に対する影響が大きいことを示す。また、要素ＰＷＲ−２１、ＰＷＲ−３は、重みが０に近く、予測値に対する影響がほとんど無いことを示す。
【０１１５】
ユーザは、予測モデルの予測精度が高い場合、解析モデルにより算出された重みが大きい（重要な）要素を学習データに残し、重みが小さい（重要でない）要素を学習データから削除することができる。また、逆に、予測モデルによる予測精度が低い場合、重みが大きい（予測値に悪影響を与えている可能性がある）要素を学習データから削除することができる。
【０１１６】
このように、解析モデルにより算出された重みをもとに、予測値への影響が大きい要素を選択し、学習用データに反映して再学習することで、予測モデルの精度を向上させることができる。
【０１１７】
以上により、本発明の第２の実施の形態の動作が完了する。
【０１１８】
なお、本発明の第２の実施の形態においては、予測モデルと解析モデルの学習において、それぞれ、データセットをランダムに抽出している（ステップＳ３０２、Ｓ３１２）。しかしながら、これに限らず、データセットの抽出処理を共通化し、予測モデルと解析モデルの学習に同一のデータセットを使用してもよい。
【０１１９】
また、本発明の第２の実施の形態においては、予測モデルと解析モデルを同時に学習している。しかしながら、これに限らず、解析モデルの学習による各要素の重みの算出と要素の選択を繰り返し、解析モデルによる予測精度がある程度確保できた時点で、選択された要素を用いて、予測モデルを生成してもよい。
【０１２０】
また、本発明の第２の実施の形態においては、ユーザが、解析モデルにより算出された各要素の重みをもとに、学習データの要素を選択している。しかしながら、これに限らず、重み解析部１５０が、解析モデルにより算出された各要素の重みをもとに、学習データの要素を選択し、予測モデル、及び、解析モデルの再学習を、学習部１２０に指示をしてもよい。
【０１２１】
また、要素を選択する代わりに、解析モデルにより算出された各要素ペアの重みをもとに、学習データの要素ペアを選択してもよい。
【０１２２】
次に、本発明の第２の実施の形態の効果を説明する。
【０１２３】
通常の階層型ニューラルネットワークは、構成素子の非線形性のため、内部構成がブラックボックスであり、入力される各要素（パラメータ）の出力値への影響度（重み）を知ることができない。このため、入力要素を選択する基準となる指標が得られない。
【０１２４】
本発明の第２の実施の形態によれば、予測モデルに入力される各要素の、出力値への影響度（重み）を提供できる。その理由は、解析モデル学習部１２２が、予測モデルのＸ、Ｙネットワークから中間層を省いた解析モデルの学習を行い、重み解析部１５０が、解析モデルのＸ、Ｙネットワークをもとに、各要素の重みを算出するためである。これにより、重みをもとに、予測モデルに入力する要素の選択を行い、予測モデルによる予測精度をさらに向上させることができる。
【０１２５】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【０１２６】
１００    学習装置
１１０    処理受付部
１１１    データ取得部
１２０    学習部
１２１    予測モデル学習部
１２２    解析モデル学習部
１３０    予測部
１４０    予測モデル記憶部
１５０    重み解析部
１６０    解析モデル記憶部
【図１】
2015166962.tif 000007
【図２】
2015166962.tif 000008
【図３】
2015166962.tif 000009
【図４】
2015166962.tif 000010
【図５】
2015166962.tif 000011
【図６】
2015166962.tif 000012
【図７】
2015166962.tif 000013
【図８】
2015166962.tif 000014
【図９】
2015166962.tif 000015
【図１０】
2015166962.tif 000016
【図１１】
2015166962.tif 000017
【図１２】
2015166962.tif 000018
【図１３】
2015166962.tif 000019
【図１４】
2015166962.tif 000020