(57)【要約】【課題】分析対象についての説明の容易化を高精度かつ効率的に実現すること。【解決手段】データ分析装置は、入力層と、出力層と、その間において前段の層からのデータと第１学習パラメータとを第１活性化関数に与えて計算して後段の層に計算結果を出力する２層以上の中間層と、により構成される第１ニューラルネットワークを用い、各中間層からの出力データと第２学習パラメータとに基づいて、各出力データを同一サイズの次元数に変換させて、変換後の各出力データを出力する変換部と、変換後の出力データと、入力層に与えられた第１特徴量空間の第１入力データと、に基づいて、第１特徴量空間の第１入力データを第２特徴量空間に再配置する再配置部と、再配置結果と第３学習パラメータとに基づいて、第１特徴量空間の第１入力データに対する予測データを算出する予測データ算出部と、変換後の各出力データと第３学習パラメータとに基づいて、各中間層における第１入力データの第１重要度を算出する重要度算出部と、を有する。【選択図】図４
2019079305.tif 000002
【特許請求の範囲】
【請求項１】
入力層と、出力層と、前記入力層と前記出力層との間において前段の層からのデータと第１学習パラメータとを第１活性化関数に与えて計算して後段の層に計算結果を出力する２層以上の中間層と、により構成される第１ニューラルネットワークを用いたデータ分析装置であって、
前記各中間層からの出力データと第２学習パラメータとに基づいて、前記各出力データを同一サイズの次元数に変換させて、変換後の各出力データを出力する変換部と、
前記変換部からの変換後の出力データと、前記入力層に与えられた第１特徴量空間の第１入力データと、に基づいて、前記第１特徴量空間の第１入力データを第２特徴量空間に再配置する再配置部と、
前記変換後の各出力データと第３学習パラメータとに基づいて、前記各中間層における前記第１入力データの第１重要度を算出する重要度算出部と、
を有することを特徴とするデータ分析装置。
【請求項２】
請求項１に記載のデータ分析装置であって、
前記再配置部による再配置結果と前記第３学習パラメータとに基づいて、前記第１特徴量空間の第１入力データに対する予測データを算出する予測データ算出部を有することを特徴とするデータ分析装置。
【請求項３】
請求項１に記載のデータ分析装置であって、
前記第１入力データと前記第１重要度とに基づいて、前記第１入力データを構成する要素ごとの第２重要度を算出し、前記第２重要度に基づいて、前記第１入力データから一部の要素を選択して第２入力データを生成する選択部を有し、
前記再配置部は、前記変換後の出力データと、前記選択部からの第２入力データと、に基づいて、前記第２入力データを第２特徴量空間に再配置する、
ことを特徴とするデータ分析装置。
【請求項４】
請求項２に記載のデータ分析装置であって、
前記第１特徴量空間の第１入力データと前記予測データに対する正解データとを含む訓練データが与えられた場合に、前記予測データと前記正解データとを用いて、前記第１学習パラメータ、前記第２学習パラメータ、および前記第３学習パラメータを調整する学習部を有することを特徴とするデータ分析装置。
【請求項５】
請求項２に記載のデータ分析装置であって、
前記各中間層からの出力データと第４学習パラメータとに基づいて、前記各中間層の重みを設定する設定部と
前記再配置結果と、前記設定部によって設定された重みと、を統合する統合部と、を有し、
前記予測データ算出部は、前記統合部による統合結果と前記第３学習パラメータとに基づいて、前記予測データを算出し、
前記重要度算出部は、前記設定部によって設定された重みと、前記変換後の各出力データと、前記第３学習パラメータと、に基づいて、前記第１重要度を算出する、
ことを特徴とするデータ分析装置。
【請求項６】
請求項５に記載のデータ分析装置であって、
前記各中間層からの出力データと第５学習パラメータとに基づいて、前記各出力データの次元数を縮約させて、縮約後の各出力データを出力する縮約部を有し、
前記設定部は、前記縮約部からの縮約後の各出力データと前記第４学習パラメータとに基づいて、前記各中間層の重みを設定する、
ことを特徴とするデータ分析装置。
【請求項７】
入力層と、出力層と、前記入力層と前記出力層との間において前段の層からのデータと第１学習パラメータとを第１活性化関数に与えて計算して後段の層に計算結果を出力する２層以上の中間層と、により構成される第１ニューラルネットワークを用いたデータ分析装置によるデータ分析方法であって、
前記データ分析装置は、
前記各中間層からの出力データと第２学習パラメータとに基づいて、前記各出力データを同一サイズの次元数に変換させて、変換後の各出力データを出力する変換処理と、
前記変換処理からの変換後の出力データと、前記入力層に与えられた第１特徴量空間の第１入力データと、に基づいて、前記第１特徴量空間の第１入力データを第２特徴量空間に再配置する再配置処理と、
前記変換後の各出力データと第３学習パラメータとに基づいて、前記各中間層における前記第１入力データの第１重要度を算出する重要度算出処理と、
を実行することを特徴とするデータ分析方法。
【請求項８】
入力層と、出力層と、前記入力層と前記出力層との間において前段の層からのデータと第１学習パラメータとを第１活性化関数に与えて計算して後段の層に計算結果を出力する２層以上の中間層と、により構成される第１ニューラルネットワークを用いたデータ分析をプロセッサに実行させるためのデータ分析プログラムであって、
前記プロセッサに、
前記各中間層からの出力データと第２学習パラメータとに基づいて、前記各出力データを同一サイズの次元数に変換させて、変換後の各出力データを出力する変換処理と、
前記変換処理からの変換後の出力データと、前記入力層に与えられた第１特徴量空間の第１入力データと、に基づいて、前記第１特徴量空間の第１入力データを第２特徴量空間に再配置する再配置処理と、
前記変換後の各出力データと第３学習パラメータとに基づいて、前記各中間層における前記第１入力データの第１重要度を算出する重要度算出処理と、
を実行させることを特徴とするデータ分析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを分析するデータ分析装置、データ分析方法、およびデータ分析プログラムに関する。
【背景技術】
【０００２】
入力データから出力データを予測する手法として、パーセプトロンと呼ばれる手法がある。パーセプトロンは、入力となる特徴量ベクトルと、重みベクトルの線形結合の演算結果により予測値を出力する。ニューラルネットワークは、別名、マルチパーセプトロンとも呼ばれ、複数のパーセプトロンを多層的に重ねることで、線形分離不可能問題を解く能力をもたせた技術であり、１９８０年代に登場した。２０１２年頃から、ドロップアウト等の新しい技術を導入したニューラルネットワークはｄｅｅｐ  ｌｅａｒｎｉｎｇと呼ばれている。
【０００３】
機械学習分野では、特徴量ベクトルから得られた予測値と実際の値（真値）の誤差が最小となるように、学習パラメータ（パーセプトロンにおける重みベクトル等）を計算することを学習と呼ぶ。学習のプロセスが完了すると、学習に用いなかったデータ（以降、テストデータと呼ぶ）から新しい予測値を計算することができる。パーセプトロンでは、重みベクトルの各要素値の大きさが、予測に寄与した因子の重要度として用いられている。
【０００４】
一方、ｄｅｅｐ  ｌｅａｒｎｉｎｇを含むニューラルネットワークにおいては、特徴量ベクトルの各要素はパーセプトロンを通過するたびに、他の要素と重み付き積和演算が実施されることから、各要素単体での重要度を知ることは原理的に困難である。
【０００５】
下記非特許文献１の手法は、特徴量の重要度を算出する機能を持たないｄｅｅｐ  ｌｅａｒｎｉｎｇなどの機械学習手法の識別結果を説明できるように、新たに線形回帰を学習させる手法である。また、ロジスティック回帰はパーセプトロンと等価な機械学習モデルであり、あらゆる分野で最も広く用いられている。たとえば、下記非特許文献２の１１９ページに示されるロジスティック回帰は、データサンプル全体について特徴量の重要度を算出する機能を持つ。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】Ribeiro, Marco Tulio, Sameer Singh, and Carlos Guestrin. "Why should I trust you ?: Explaining the predictions of any classifier." Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. ACM, 2016.
【非特許文献２】Friedman J, Trevor H, Robert T. The elements of statistical learning. second edition. New York: Springer series in statistics, 2001.
【発明の概要】
【発明が解決しようとする課題】
【０００７】
非特許文献１の手法は、線形回帰で後付け的に説明を試みているにすぎず、ｄｅｅｐ  ｌｅａｒｎｉｎｇが予測する際に利用している特徴量の重要度を完全に算出できる数学的な保証はない。また、完全に線形回帰がｄｅｅｐ  ｌｅａｒｎｉｎｇと同一の予測精度を達成できるならば、もはや、最初のｄｅｅｐ  ｌｅａｒｎｉｎｇ自体が必要ではなくなり、手法の構成概念には矛盾がある。また、ロジスティック回帰は、データサンプル個々についての特徴量の重要度を算出する機能を持たない。 
【０００８】
本発明は、上記に鑑みてなされたものであって、分析対象についての説明の容易化を高精度かつ効率的に実現することを目的とする。
【課題を解決するための手段】
【０００９】
本願において開示される発明の一側面となるデータ分析装置は、入力層と、出力層と、前記入力層と前記出力層との間において前段の層からのデータと第１学習パラメータとを第１活性化関数に与えて計算して後段の層に計算結果を出力する２層以上の中間層と、により構成される第１ニューラルネットワークを用いたデータ分析装置であって、前記各中間層からの出力データと第２学習パラメータとに基づいて、前記各出力データを同一サイズの次元数に変換させて、変換後の各出力データを出力する変換部と、前記変換部からの変換後の出力データと、前記入力層に与えられた第１特徴量空間の第１入力データと、に基づいて、前記第１特徴量空間の第１入力データを第２特徴量空間に再配置する再配置部と、前記変換後の各出力データと第３学習パラメータとに基づいて、前記各中間層における前記第１入力データの第１重要度を算出する重要度算出部と、を有する特徴とする。
【発明の効果】
【００１０】
本発明の代表的な実施の形態によれば、分析対象についての説明の容易化を高精度かつ効率的に実現することができる。前述した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【００１１】
【図１】図１は、特徴量ベクトルの再配置例を示す説明図である。
【図２】図２は、データ分析システムのシステム構成例を示すブロック図である。
【図３】図３は、実施例１にかかる第１ニューラルネットワークの構造例を示す説明図である。
【図４】図４は、データ分析装置の機能的構成例を示すブロック図である。
【図５】図５は、実施例１にかかるデータ分析装置によるデータ分析処理手順例を示すフローチャートである。
【図６】図６は、実施例２にかかる第２ニューラルネットワークの構造例を示す説明図である。
【図７】図７は、実施例２にかかるデータ分析装置によるデータ分析処理手順例を示すフローチャートである。
【図８】図８は、特徴量ベクトルＦｅａｔｕｒｅｓと正解データＴａｒｇｅｔとを示す説明図である。
【図９】図９は、実験結果を示す説明図である。
【発明を実施するための形態】
【実施例１】
【００１２】
＜特徴量ベクトルの再配置例＞
ＡＩ（Ａｒｔｉｆｉｃｉａｌ  Ｉｎｔｅｌｌｉｇｅｎｃｅ）は、線形分離不可能問題を解く能力を持つが、ＡＩが、どうしてそのような判断をしたかが不明である。特に、ｄｅｅｐ  ｌｅａｒｎｉｎｇなどの機械学習手法は、予測精度は高いが説明能力が低い。たとえば、ある患者に対して「風邪をひきやすい」という診断結果をＡＩが出力した場合、医師は、ＡＩがなぜそのような結果を得たかを答えることができない。もし、ＡＩがその原因まで判断できれば、医師は、患者に対して適切な治療をおこなうことがきる。
【００１３】
図１は、特徴量ベクトルの再配置例を示す説明図である。（Ａ）特徴量空間ＳＰ１には、複数の特徴量ベクトルｘｎ（ｎ＝１，２，…，Ｎ。Ｎは画像の枚数）が存在する。複数の特徴量ベクトルｘｎは、たとえば、非線形の予測モデルＰＭ１により正解ラベルＬａ，Ｌｂに識別される。（Ｂ）特徴量空間ＳＰ２には、複数の特徴量ベクトルｘｎが存在する。複数の特徴量ベクトルｘｎは、たとえば、線形の予測モデルＰＭ２により正解ラベルＬａ，Ｌｂに識別される。
【００１４】
（Ａ）ｄｅｅｐ  ｌｅａｒｎｉｎｇなどの機械学習手法は、識別結果である予測モデルＰＭ１を説明するため、新たに線形回帰を学習する。具体的には、たとえば、この機械学習手法は、予測モデルＰＭ１を求めた後に局所的に直線近似するという後付け的な処理を実行する。しかしながら、このような後付け的な処理では、直線近似された予測モデルＰＭ１の局所部分が、特徴量ベクトルｘｎを正しく説明できるかが不明である。また、何より、直線近似というロジスティック回帰を実行するため、都合２回の機械学習を実行する必要がある。
【００１５】
（Ｂ）の予測モデルＰＭ２は線形であるため、その傾きを参照すれば、特徴量ベクトルｘｎが特徴量空間ＳＰ２内のどのパラメータで重みづけされているがわかり、特徴量ベクトルｘｎを正しく説明することができる。実施例１では、複数の特徴量ベクトルｘｎについて、（Ａ）のように非線形な予測モデルＰＭ１を求めることなく、特徴量空間ＳＰ１の複数の特徴量ベクトルｘｎを、他の特徴量空間ＳＰ２に再配置する。これにより、線形な予測モデルＰＭ２が得られるため、特徴量ベクトルｘｎが特徴量空間ＳＰ２内のどのパラメータで重みづけされているがわかり、その重要度に応じて特徴量ベクトルｘｎを正しく説明することができる。
【００１６】
すなわち、ユーザは特徴量ベクトルｘｎのあるサンプルごとに（例えば、患者ごとに）、特徴量ｘｎに内包されるどの因子（特徴）が予測結果に寄与しているかが分かるため、どうしてそのような予測結果になったのかという説明がしやすくなる。したがって、機械学習における説明能力の向上を図ることができる。上記の例でいえば、ある患者に対して「風邪をひきやすい」という診断結果をＡＩがなぜ出力したか（たとえば、痩せているなど）、が分かることになる。また、（Ａ）のように機械学習を２回も実行する必要がないため、機械学習の効率化も図ることができる。したがって、上記のような説明を迅速に提供することができる。
【００１７】
＜システム構成例＞
図２は、データ分析システムのシステム構成例を示すブロック図である。図２では、サーバ−クライアント型のデータ分析システム２を例に挙げて説明するが、スタンドアロン型でもよい。（Ａ）は、データ分析システム２のハードウェア構成例を示すブロック図であり、（Ｂ）は、データ分析システム２の機能的構成例を示すブロック図である。（Ａ）および（Ｂ）において同一構成には同一符号を付す。
【００１８】
データ分析システム２は、クライアント端末２００とサーバであるデータ分析装置２２０とがネットワーク２１０で通信可能に接続される構成である。
【００１９】
（Ａ）において、クライアント端末２００は、補助記憶装置であるＨＤＤ（ｈａｒｄ  ｄｉｓｋ  ｄｒｉｖｅ）２０１、主記憶装置であるメモリ２０２、プロセッサ２０３、キーボードやマウスである入力装置２０４、モニタ２０５を有する。データ分析装置２２０は、補助記憶装置であるＨＤＤ２２１、主記憶装置であるメモリ２２２、プロセッサ２２３、キーボードやマウスである入力装置２２４、モニタ２２５を有する。なお、主記憶装置、補助記憶装置、および、図示しない可搬型の記憶媒体を総称して、記憶デバイスと称す。記憶デバイスは、第１ニューラルネットワーク３００およびこれらの学習パラメータを記憶する。
【００２０】
（Ｂ）において、クライアント端末２００は、クライアントデータベース（ＤＢ）２５１を有する。クライアントＤＢ２５１は、ＨＤＤ２０１やメモリ２０２などの記憶デバイスに格納される。クライアントＤＢ２５１には、テストデータ集合２５２と、予測結果２５３と、が格納される。テストデータ集合２５２は、テストデータの集合である。予測結果２５３は、予測部２６２からネットワーク２１０経由で得られたデータである。なお、サーバ−クライアント型の場合、クライアント端末２００は１台以上存在する。
【００２１】
データ分析装置２２０は、学習部２６１と、予測部２６２と、サーバデータベース（ＤＢ）２６３と、を有する。学習部２６１は、図１および図２に示した処理を実行し、学習パラメータ２６５を出力する機能部である。
【００２２】
予測部２６２は、学習パラメータ２６５を用いて、第１ニューラルネットワーク３００を構築し、第１ニューラルネットワーク３００にテストデータが与えられることで、予測処理を実行し、予測結果２５３をクライアント端末２００に出力する機能部である。学習部２６１および予測部２６２は、ＨＤＤ２２１、メモリ２２２などの記憶デバイスに記憶されたプログラムをプロセッサ２２３に実行させることによりその機能を実現する。
【００２３】
サーバＤＢ２６３は、訓練データ集合２６４と、学習パラメータ２６５と、を格納する。訓練データ集合２６４は、特徴量ベクトルの一例である画像ｘｎと、正解ラベルｔｎと、を含む。学習パラメータ２６５は、学習部２６１からの出力データであり、後述する行列ＷｌＤ，行列ＷｌＲ，行列ＷｌＨ，行列ＷＡ、重みベクトルｗｏを含む。なお、学習パラメータが設定されたニューラルネットワークを予測モデルと称す。
【００２４】
なお、データ分析装置２２０は複数台で構成されてもよい。たとえば、負荷分散のため、データ分析装置２２０が複数存在してもよい。また、データ分析装置２２０は、機能ごとに複数台で構成されてもよい。たとえば、学習部２６１およびサーバＤＢ２６３を含む第１のサーバと、予測部２６２およびサーバＤＢ２６３を含む第２のサーバとで構成されてもよい。また、また、学習部２６１および予測部２６２を含む第１のデータ分析装置と、サーバＤＢ２６３を含む第２のデータ分析装置とで構成されてもよい。また、学習部２６１を含む第１のサーバと、予測部２６２を含む第２のデータ分析装置と、サーバＤＢ２６３を含む第３のデータ分析装置とで構成されてもよい。
【００２５】
＜ニューラルネットワークの構造例＞
図３は、実施例１にかかる第１ニューラルネットワークの構造例を示す説明図である。第１ニューラルネットワーク３００は、データユニット群ＤＵと、レポーティングユニット群ＲＵと、ハーモナイジングユニット群ＨＵと、リアロケーションユニットＲＡＵと、ユニファイユニットＵＵと、デシジョンユニットＤＣＵと、インポータンスユニットＩＵと、を有する。
【００２６】
データユニット群ＤＵは、複数のデータユニットＤＵｌ（ｌは、階層番号であり、１≦ｌ≦Ｌ。Ｌは最下層の階層番号であり、図１では、Ｌ＝４）を直列に接続した構成である。最上段であるｌ＝１のデータユニットＤＵ１は、第１ニューラルネットワーク３００の入力層３０１であり、ｌ≦２のデータユニットＤＵｌは、第１ニューラルネットワーク３００の中間層（隠れ層ともいう）に相当する。データユニットＤＵｌは、前段のデータユニットＤＵ（ｌ−１）からの出力データを入力して、自データユニットＤＵｌの学習パラメータを用いて計算して出力データを出力するパーセプトロンである。
【００２７】
ただし、データユニットＤＵ１は、学習部２６１による学習時に訓練データを保持する。ここで、訓練データは、たとえば、特徴量ベクトルｘｎの一例である画像ｘｎとその真値となる正解ラベルｔｎとの組み合わせ｛ｘｎ，ｔｎ｝により構成されるサンプルデータである（ｎ＝１，２，…，Ｎ。Ｎは画像の枚数）。画像ｘｎは、２次元のマトリックス構造を持つデータであり、以降、ラスタ走査したｄ（ｄ≧１を満たす整数）次元のベクトルとして取り扱う。説明の容易さのために、「ｘ」と表記した場合は、行列形式の画像ｘｎをラスタ走査した１次元ベクトルとする。
【００２８】
正解ラベルｔｎは、画像ｘｎの種類数Ｋに対して、ｏｎｅｈｏｔ表現で種類（たとえば、犬や猫などの動物）を示すＫ次元のベクトルである。ｏｎｅｈｏｔ表現では、ベクトルのある要素が画像ｘｎの種類に対応しており、ただ１つの要素だけに１．０が格納され、他の要素は全て０．０である。１．０の要素に対応する種類（たとえば、犬）が正解となる種類である。なお、Ｘ線、ＣＴ、ＭＲＩ、超音波等の医療用画像ｘｎを入力とした場合、ラベルｔｎは、疾病の種類や患者の予後（良いｏｒ悪い）を表す真値である。
【００２９】
画像ｘｎ∈Ｒｄ（Ｒｄはｄ次元の実数）を、ｄ次元の実数Ｒｄからなる特徴量ベクトルとする。データユニットＤＵ（ｌ＋１）を示す関数ｈｌ＋１Ｄは、下記式（１）で表現される。
【００３０】
【数１】
2019079305.tif 000003
【００３１】
式（１）中、添え字ｌ（１≦ｌ≦Ｌを満たす整数。）は、階層番号を示す（以下の式も同様）。Ｌは１以上の整数であり、最深の階層番号を示す。右辺のｆＤｌは活性化関数である。活性化関数は、たとえば、シグモイド関数、双曲線正接関数（ｔａｎｈ関数）、ＲｅＬＵ（Ｒｅｃｔｉｆｉｅｄ  Ｌｉｎｅａｒ  Ｕｎｉｔ）関数など、様々な活性化関数を用いてよい。行列ＷｌＤは、データユニットＤＵｌの学習パラメータである。右辺のベクトルｈｌＤは、データユニットＤＵｌに入力される入力ベクトル、すなわち、前段のデータユニットＤＵｌからの出力ベクトルである。なお、層数ｌ＝１である場合のデータユニットＤＵ１からの出力ベクトルｈ１Ｄは、ｈ１Ｄ＝ｘｎとなる。
【００３２】
なお、データユニットＤＵ１は、予測部２６２におる予測時にテストデータとして、特徴量ベクトルである画像ｘｎを保持する。
【００３３】
レポーティングユニットＲＵｌ（２≦ｌ≦Ｌ）は、同一階層のデータユニットＤＵｌからの出力ベクトルｈｌＤを入力し、当該出力ベクトルｈｌＤの次元数を縮約させる。レポーティングユニットＲＵｌを示す関数ｈｌＲは、下記式（２）で表現される。
【００３４】
【数２】
2019079305.tif 000004
【００３５】
式（２）中、行列ＷｌＲは、レポーティングユニットＲＵｌの学習パラメータである。 式（２）により、データユニットＤＵｌからのｄ次元の出力ベクトルｈｌＤは、ｍ次元の出力ベクトルｈｌＲに縮約される。また、σは、シグモイド関数である。
【００３６】
ハーモナイジングユニットＨＵｌ（２≦ｌ≦Ｌ）は、中間層のデータユニットＤＵｌとリアロケーションユニットＲＡＵとの間に、中間層のデータユニットＤＵｌごとに設けられる。ハーモナイジングユニットＨＵｌは、中間層のデータユニットＤＵｌからの各出力データの次元数を同一のサイズに変換する。したがって、リアロケーションユニットＲＡＵには、ハーモナイジングユニットＨＵｌで同一の次元数に揃えられた出力データが入力される。
【００３７】
すなわち、ハーモナイジングユニットＨＵｌは、同一階層のデータユニットＤＵｌからの出力ベクトルｈｌＤを入力し、出力ベクトルｈｌＤの次元数を同一の次元数に変換する。ハーモナイジングユニットＨＵｌを示す関数ｈｌＨは、下記式（３）で表現される。
【００３８】
【数３】
2019079305.tif 000005
【００３９】
式（３）中、行列ＷｌＨは、ハーモナイジングユニットＨＵｌの学習パラメータである。これにより、データユニットＤＵｌからのｄ次元の出力ベクトルｈｌＤは、ｍ次元の出力ベクトルｈｌＨに変換される。ｍは、次元数を決定するハイパーパラメータである。ｄおよびｍは、レポーティングユニットＲＵｌのｄおよびｍと異なる値でもよい。また、ｆＨは、活性化関数である。
【００４０】
アテンションユニットＡＵは、各レポーティングユニットＲＵｌからの出力ベクトルｈｌＲを用いて、各データユニットＤＵｌの重みαを計算する。アテンションユニットＡＵを示す関数αは、下記式（４）で表現される。
【００４１】
【数４】
2019079305.tif 000006
【００４２】
式（４）中、行列ＷＡは、アテンションユニットＡＵの学習パラメータである。活性化関数の１つであるｓｏｆｔｍａｘ関数では、層数Ｌ（下記式（５）の例ではＬ＝４）に等しい次元のベクトルｈＲが計算される。下記式（５）に示すように、式（４）の右辺のベクトルｈＲは、ｈｌＲを垂直方向にスタックしたベクトルである。
【００４３】
【数５】
2019079305.tif 000007
【００４４】
したがって、行列ＷＡは、Ｌ行Ｍ列（Ｍは、ベクトルｈＲの要素数）の行列となる。アテンションユニットＡＵにｓｏｆｔｍａｘ関数を採用することにより、層数ＬのベクトルｈＲの各要素（全要素の和は１）は、対応するデータユニットＤＵｌの重みをあらわすことになる。
【００４５】
リアロケーションユニットＲＡＵは、ある特徴量空間の特徴量ベクトル（画像ｘｎ）を他の特徴量空間に再配置する。具体的には、たとえば、図１に示したように、特徴量空間ＳＰ１上での特徴量ベクトル群により得られる予測モデルは非線形となり得るため、リアロケーションユニットＲＡＵは、特徴量空間ＳＰ２において線形な予測モデルが得られるように、特徴量ベクトル群を特徴量空間ＳＰ２に移し替える。リアロケーションユニットＲＡＵを示す関数ｈｌＴは、下記式（６）で表現される。
【００４６】
【数６】
2019079305.tif 000008
【００４７】
関数ｆＴは、ベクトル同士のアダマール積や、要素加算などを用いることができる。本実施例では、アダマール積とする（下記式（７）を参照）。式（７）では、ハーモナイジングユニットＨＵｌからの出力ベクトルｈｌＨと特徴量ベクトルｘｎとのアダマール積となる。
【００４８】
【数７】
2019079305.tif 000009
【００４９】
ユニファイユニットＵＵは、リアロケーションユニットＲＡＵからの出力ベクトルｈｌＴと、アテンションユニットＡＵからの出力ベクトルαとを統合する。すなわち、ユニファイユニットＵＵは、リアロケーションユニットＲＡＵからの出力ベクトルｈｌＴを、アテンションユニットＡＵからの出力ベクトルαで重み付けする。ユニファイユニットＵＵを示す関数ｈＵは、下記式（８）で表現される。
【００５０】
【数８】
2019079305.tif 000010
【００５１】
式（８）中、右辺のα［ｋ］は、式（４）の出力ベクトルαのｋ次元目の要素（重み）を示す。
【００５２】
デシジョンユニットＤＣＵは、予測値ｙｎを決定し、出力層３０３に出力する。具体的には、たとえば、デシジョンユニットＤＣＵは、ユニファイユニットＵＵからの出力ベクトルｈＵに、学習パラメータの１つである重みベクトルｗｏで重み付けして、シグモイド関数σに与えることにより、予測値ｙｎを得る。デシジョンユニットＤＣＵを示す関数ｙｎは、下記式（９）で表現される。式（９）中、ｗｏｔのｔは、転置を意味する。
【００５３】
【数９】
2019079305.tif 000011
【００５４】
インポータンスユニットＩＵは、ニューラルネットワークの各層における特徴量の重要度を示す重要度ベクトルｓｌｎを算出し、出力層３０３に出力する。インポータンスユニットＩＵを示す関数ｓｌｎは、下記式（１０）で表現される。
【００５５】
【数１０】
2019079305.tif 000012
【００５６】
式（１０）中、右辺のα［ｌ］は、式（４）の出力ベクトルαのｌ階層目の要素（重み）を示す。関数ｆＴは、式（６）と同様、ベクトル同士のアダマール積や、要素加算などを用いることができる。実施例１では、アダマール積とする。式（１０）では、重要度ベクトルｓｌｎは、重みベクトルｗｏとハーモナイジングユニットＨＵｌからの出力ベクトルｈｌＨとのアダマール積となる。重要度ベクトルｓｌｎは、ｎ番目の特徴量ベクトル（画像）ｘｎの階層ｌにおける重要度である。
【００５７】
＜データ分析装置２２０の機能的構成例＞
図４は、データ分析装置２２０の機能的構成例を示すブロック図である。データ分析装置２２０は、入力層３０１と、中間層３０２と、出力層３０３と、変換部４０１と、再配置部４０２と、予測データ算出部４０３と、重要度算出部４０４と、設定部４０５と、統合部４０６と、縮約部４０７と、選択部４０８と、を有する。これらは、学習部２６１および予測部２６２の内部構成例である。なお、選択部４０８は、後述する実施例２の構成要素であるため、実施例２後述する。
【００５８】
変換部４０１は、式（３）に示したように、各中間層ＤＵｌ（ｌ≧２）からの出力ベクトルｈｌＤと行列ＷｌＨとに基づいて、出力ベクトルｈｌＤの次元数ｄを縮約させて、変換後の出力ベクトルｈｌＨを出力する。変換部４０１は、上述したハーモナイジングユニット群ＨＵである。
【００５９】
再配置部４０２は、式（６）、（７）に示したように、変換部４０１からの変換後の出力ベクトルｈｌＨと、入力層３０１に与えられた特徴量空間ＳＰ１の特徴量ベクトルｘｎと、に基づいて、特徴量空間ＳＰ１の特徴量ベクトルｘｎを第２特徴量空間ＳＰ２に再配置する。再配置部４０２は、上述したリアロケーションユニットＲＡＵである。
【００６０】
予測データ算出部４０３は、式（９）に示したように、再配置部４０２による再配置結果ｈＴｌと重みベクトルｗｏとに基づいて、特徴量空間ＳＰ１の特徴量ベクトルｘｎに対する予測ベクトルｙｎを算出する。予測データ算出部４０３は、上述したデシジョンユニットＤＣＵである。
【００６１】
重要度算出部４０４は、式（１０）に示したように、変換後の出力ベクトルｈｌＨと重みベクトルｗｏとに基づいて、中間層３０２における階層ｌにおける特徴量ベクトルｘｎの重要度ベクトルｓｌｎを算出する。重要度算出部４０４は、上述したインポータンスユニットＩＵである。
【００６２】
たとえば、動物を表示する画像ｘｎについて、ある階層ｌａの出力ベクトルｈｌａＤが顔の輪郭が猫にふさわしいか否かを示す特徴量であり、ある階層ｌｂ（≠ｌａ）の出力ベクトルｈｌｂＤが耳の形状が猫にふさわしいか否かを示す特徴量である場合、対応する重要度ベクトルｓｌａｎ、ｓｌｂｎを参照することにより、データ分析装置２２０が、当該画像ｘｎが顔のどの特徴を考慮してその動物を猫であると判別したかを、ユーザは説明することができる。たとえば、重要度ベクトルｓｌａｎは低いが重要度ベクトルｓｌｂｎが高い場合、データ分析装置２２０が、当該画像ｘｎが耳の形状を考慮してその動物を猫であると判別していると、ユーザは説明することができる。
【００６３】
設定部４０５は、式（４）、（５）に示したように、中間層３０２からの出力ベクトルｈｌＤと行列ＷＡとに基づいて、中間層３０２の重みαを設定する。設定部４０５は、上述したアテンションユニットＡＵである。
【００６４】
統合部４０６は、式（８）に示したように、再配置結果ｈＴｌと、設定部４０５によって設定された重みαと、を統合する。統合部４０６は、上述したユニファイユニットＵＵである。この場合、予測データ算出部４０３は、統合部４０６による統合結果ｈｕと重みベクトルｗｏとに基づいて、予測ベクトルｙｎを算出する。また、重要度算出部４０４は、設定部４０５によって設定された重みαと、変換後の出力ベクトルｈｌＨと、重みベクトルｗｏと、に基づいて、重要度ベクトルｓｎｌを算出する。
【００６５】
縮約部４０７は、式（２）に示したように、中間層３０２からの出力ベクトルｈｌＤと行列ＷｌＲとに基づいて、出力ベクトルｈｌＤの次元数ｄを縮約させて、縮約後の出力ベクトルｈｌＲを出力する。縮約部４０７は、上述したレポーティングユニット群ＲＵである。この場合、設定部４０５は、縮約部４０７からの縮約後の出力ベクトルｈｌＲと行列ＷＡとに基づいて、中間層３０２の重みαを設定する。
【００６６】
学習部２６１は、特徴量空間ＳＰ１の特徴量ベクトルｘｎと予測ベクトルｙｎに対する正解ラベルｔｎとを含む訓練データが与えられた場合に、予測ベクトルｙｎと正解ラベルｔｎとを用いて、第１学習パラメータである行列ＷｌＤ、第２学習パラメータである行列ＷｌＨ、第３学習パラメータである重みベクトルｗｏ、第４学習パラメータである行列ＷＡ、および、第５学習パラメータである行列ＷｌＲを、たとえば、正解ラベルｔｎと予測値ｙｎとのクロスエントロピーが最小化するように、最適化する。
【００６７】
予測部２６２は、最適化された学習パラメータ２６５を第１ニューラルネットワーク３００に設定し、かつ、入力層３０１にテストデータとして特徴量ベクトルｘ´ｎを与えることにより、採取的に予測データ算出部４０３に予測ベクトルｙ´ｎを算出させる。
【００６８】
＜データ分析処理手順例＞
図５は、実施例１にかかるデータ分析装置２２０によるデータ分析処理手順例を示すフローチャートである。図５のうち、ステップＳ５０１〜Ｓ５０２が学習部２６１による学習処理であり、ステップＳ５０３〜Ｓ５０７が予測部２６２による予測処理である。まず、データ分析装置２２０は、訓練データ集合２６４を読み込む（ステップＳ５０１）。
【００６９】
データ分析装置２２０は、第１ニューラルネットワーク３００に、訓練データ｛ｘｎ，ｔｎ｝を与えることにより学習をおこない、学習パラメータ２６５（行列ＷｌＤ，行列ＷｌＲ，行列ＷｌＨ，行列ＷＡ、重みベクトルｗｏ）を生成する（ステップＳ５０２）。学習（ステップＳ５０２）では、たとえば、学習部２６１が、統計的勾配法により、正解ラベルｔｎと予測値ｙｎとのクロスエントロピーが最小化するように、学習パラメータ２６５を最適化する。データ分析装置２２０は、生成した学習パラメータ２６５をサーバＤＢ２６３に保存する。
【００７０】
つぎに、データ分析装置２２０は、テストデータ集合２５２を読み込み（ステップＳ５０３）、各テストデータの画像ｘ´ｎを、学習パラメータ２６５が反映されたニューラルネットワークに与えて、式（９）により、予測値ｙｎ´を算出し（ステップＳ５０４）、式（１０）により、画像ｘ´ｎごとに、重要度ベクトルｓｌｎを計算する（ステップＳ５０５）。
【００７１】
そして、データ分析装置２２０は、予測値ｙｎ´の集合である予測結果２５３と重要度ベクトルｓｌｎとを保存し（ステップＳ５０６）、予測結果２５３をクライアント端末２００に出力する（ステップＳ５０７）。クライアント端末２００は、予測結果２５３をモニタ２０５に表示する。
【００７２】
このように、実施例１によれば、サンプルデータである特徴量ベクトルｘｎの事前再配置により、ニューラルネットワークを多層化しても各特徴量の重要度を算出可能となり、サンプル（特徴量ベクトルｘｎ）ごとに、説明の容易化を高精度かつ効率的に実現することができる。また、サンプル（特徴量ベクトルｘｎ）の事前再配置により、線形な予測モデルが得られるため、学習時および予測時において、高精度かつ低負荷で予測値を算出することができる。
【実施例２】
【００７３】
実施例２について説明する。実施例２は、実施例１よりもさらに重要度の解釈性を高める例であり、実施例１で得られた重要度ベクトルｓｌｎを用いる。なお、実施例１と同一構成には同一符号を付し、その説明を省略する。
【００７４】
＜ニューラルネットワークの構造例＞
図６は、実施例２にかかる第２ニューラルネットワークの構造例を示す説明図である。第２ニューラルネットワーク６００は、データユニット群ＤＵと、レポーティングユニット群ＲＵと、セレクションユニットＳＵと、ハーモナイジングユニット群ＨＵａと、リアロケーションユニットＲＡＵａと、ユニファイユニットＵＵａと、デシジョンユニットＤＣＵａと、インポータンスユニットＩＵａと、を有する。
【００７５】
セレクションユニットＳＵは、重要度ベクトルｓｌｎについて、平均重要度ｓａｖ∈Ｒｄを計算する。セレクションユニットＳＵを示す関数ｓａｖは、下記式（１１）で表現される。
【００７６】
【数１１】
2019079305.tif 000013
【００７７】
平均重要度ｓａｖの各要素は、階層およびサンプル数についての特徴量の平均重要度を示し、データ分析装置は、当該要素の平均重要度の絶対値が上位ｖ個（ｖは１以上の任意の整数）の特徴量を特徴量ベクトルｘｎから選択し、ｖ次元の新しい特徴量ベクトルｚｎ∈Ｒｄを生成する。
【００７８】
ハーモナイジングユニットＨＵａｌ（２≦ｌ≦Ｌ）は、中間層のデータユニットＤＵｌとリアロケーションユニットＲＡＵとの間に、中間層のデータユニットＤＵｌごとに設けられる。ハーモナイジングユニットＨＵａｌは、中間層のデータユニットＤＵｌからの出力データの次元数を揃える変換を実施する。したがって、リアロケーションユニットＲＡＵには、ハーモナイジングユニットＨＵａｌで、同一サイズの次元数のデータが入力される。
【００７９】
ハーモナイジングユニットＨＵａｌは、同一階層のデータユニットＤＵｌからの出力ベクトルｈｌＤを入力し、出力ベクトルｈｌＤの次元数を同一サイズの次元数に変換する。ハーモナイジングユニットＨＵａｌを示す関数ｈｌＨは、下記式（１２）で表現される。
【００８０】
【数１２】
2019079305.tif 000014
【００８１】
式（１２）中、行列ＷｌＨは、ハーモナイジングユニットＨＵａｌの学習パラメータ２６５である。これにより、データユニットＤＵｌからのｄ次元の出力ベクトルｈｌＤは、ｖ次元の出力ベクトルｈｌＨに変換される。また、ｆＨは、活性化関数である。
【００８２】
リアロケーションユニットＲＡＵａは、ある特徴量空間の特徴量ベクトル（画像ｘｎ）を他の特徴量空間に再配置する。具体的には、たとえば、図１に示したように、特徴量空間ＳＰ１上での特徴量ベクトル群により得られた予測モデルが非線形である場合、リアロケーションユニットＲＡＵは、特徴量空間ＳＰ２において線形な予測モデルが得られるように、特徴量ベクトル群を特徴量空間ＳＰ２に移し替える。リアロケーションユニットＲＡＵａを示す関数ｈ´ｌＴは、下記式（１３）で表現される。
【００８３】
【数１３】
2019079305.tif 000015
【００８４】
関数ｆＴは、ベクトル同士のアダマール積や、要素加算などを用いることができる。本実施例では、アダマール積とする（下記式（１４）を参照）。式（１４）では、ハーモナイジングユニットＨＵａｌからの出力ベクトルｈｌＨとセレクションユニットＳＵからの新しい特徴量ベクトルｚｎとのアダマール積となる。
【００８５】
【数１４】
2019079305.tif 000016
【００８６】
ユニファイユニットＵＵａは、リアロケーションユニットＲＡＵａからの出力ベクトルｈ´ｌＴと、アテンションユニットＡＵからの出力ベクトルαとを統合する。すなわち、ユニファイユニットＵＵａは、リアロケーションユニットＲＡＵａからの出力ベクトルｈ´ｌＴを、アテンションユニットＡＵからの出力ベクトルαで重み付けする。ユニファイユニットＵＵａを示す関数ｈ´Ｕは、下記式（１５）で表現される。
【００８７】
【数１５】
2019079305.tif 000017
【００８８】
式（１５）中、右辺のα［ｋ］は、式（４）の出力ベクトルαのｋ次元目の要素（重み）を示す。
【００８９】
デシジョンユニットＤＣＵａは、予測値ｙｎを決定する。具体的には、たとえば、デシジョンユニットＤＣＵは、ユニファイユニットＵＵからの出力ベクトルｈＵに、学習パラメータ２６５の１つである重みベクトルｗ´ｏで重み付けして、シグモイド関数σに与えることにより、予測値ｙａｎを得る。デシジョンユニットＤＣＵを示す関数ｙａｎは、下記式（１６）で表現される。式（１６）中、ｗ´ｏｔのｔは、転置を意味する。
【００９０】
【数１６】
2019079305.tif 000018
【００９１】
インポータンスユニットＩＵａは、第２ニューラルネットワーク６００の各層における特徴量の重要度を示す重要度ベクトルｓ´ｌｎを算出する。インポータンスユニットＩＵを示す関数ｓ´ｌｎは、下記式（１７）で表現される。
【００９２】
【数１７】
2019079305.tif 000019
【００９３】
式（１７）中、右辺のα［ｌ］は、式（４）の出力ベクトルαのｌ階層目の要素（重み）を示す。関数ｆＴは、式（１３）と同様、ベクトル同士のアダマール積や、要素加算などを用いることができる。実施例２では、アダマール積とする。式（１７）では、重みベクトルｗ´ｏとハーモナイジングユニットＨＵａｌからの出力ベクトルｈｌＨとのアダマール積となる。
【００９４】
＜データ分析装置の機能的構成例＞
つぎに、実施例２にかかるデータ分析装置２２０の機能的構成例について図４を用いて説明する。実施例１と同一構成については、説明を省略する。実施例２では、あらたに選択部４０８が追加されている。選択部４０８は、特徴量ベクトルｘｎと重要度ベクトルｓｎｌとに基づいて、特徴量ベクトルｘｎを構成する要素ごとの重要度ベクトルｓａｖを算出し、重要度ベクトルｓａｖに基づいて、特徴量ベクトルｘｎから一部の要素を選択して特徴量ベクトルｚｎを生成する。選択部４０８は、上述したセレクションユニットＳＵである。
【００９５】
この場合、変換部４０１は、式（１２）を適用し、再配置部４０２は、式（１３）、（１４）に示したように、式（１２）が適用された変換後の出力データ出力ベクトルｈｌＨと、選択部４０８からの特徴量ベクトルｚｎと、に基づいて、特徴量ベクトルｚｎを第２特徴量空間ＳＰ２に再配置する。また、統合部４０６は、式（１５）を適用し、予測データ算出部４０３は、式（１６）を適用し、重要度算出部４０４は、式（１７）を適用する。
【００９６】
＜データ分析処理手順例＞
図７は、実施例２にかかるデータ分析装置２２０によるデータ分析処理手順例を示すフローチャートである。図７のうち、ステップＳ７０１〜Ｓ７０２が学習部２６１による学習処理であり、ステップＳ７０３〜Ｓ７０７が予測部２６２による予測処理である。まず、データ分析装置２２０は、訓練データ集合２６４および特徴量の重要度を読み込む（ステップＳ７０１）。
【００９７】
データ分析装置２２０は、第２ニューラルネットワーク６００に、訓練データ｛ｘｎ，ｔｎ｝を与えることにより学習をおこない、学習パラメータ２６５（行列ＷｌＤ，行列ＷｌＲ，行列Ｗ´ｌＨ，行列ＷＡ、重みベクトルｗ´ｏ）を生成する（ステップＳ７０２）。学習（ステップＳ７０２）では、たとえば、学習部２６１が、統計的勾配法により、正解ラベルｔｎと予測値ｙａｎとのクロスエントロピーが最小化するように、学習パラメータ２６５を最適化する。データ分析装置２２０は、生成した学習パラメータ２６５をサーバＤＢ２６３に保存する。
【００９８】
つぎに、データ分析装置２２０は、テストデータ集合２５２を読み込み（ステップＳ７０３）、各テストデータの画像ｘ´ｎを、学習パラメータ２６５が反映されたニューラルネットワークに与えて、式（１６）により、予測値ｙａ´ｎを算出し（ステップＳ７０４）、式（１７）により、画像ｚ´ｎごとに、重要度ベクトルｓ´ｌｎを計算する（ステップＳ７０５）。
【００９９】
そして、データ分析装置２２０は、予測値ｙａ´ｎの集合である予測結果２５３と重要度ベクトルｓ´ｌｎとを保存し（ステップＳ７０６）、予測結果２５３をクライアント端末２００に出力する（ステップＳ７０７）。クライアント端末２００は、予測結果２５３をモニタ２０５に表示する。
【０１００】
このように、実施例２によれば、サンプルデータである特徴量ベクトルｘｎを重要度が高い要素のサンプルデータである特徴量ベクトルｚｎに厳選することにより、厳選された特徴量ベクトルｚｎの階層ｌについての重要度ｓｌｎ、ｓ´ｌｎを得ることができ、実施例１よりもさらに重要度ｓｌｎ、ｓ´ｌｎの解釈性を高めることができる。また、実施例１と同様、サンプル（特徴量ベクトルｚｎ）の事前再配置により、線形な予測モデルが得られるため、学習時および予測時において、高精度かつ低負荷で予測値を算出することができる。
【実施例３】
【０１０１】
実施例３について説明する。実施例３では、データ分析装置２２０が、画像データ以外の情報及び回帰に分類される手法を扱えることを示すために、ボストンの住宅価格を予測した場合の例を示す。以下に示す非特許文献３で用いられたデータにより性能検証を実施した。
【０１０２】
＜非特許文献３＞
Used in Belsley, Kuh & Welsch, 'Regression diagnostics ...', Wiley,1980.   N.B. Various transformations are used in the table on pages 244-261.
【０１０３】
図８は、特徴量ベクトルＦｅａｔｕｒｅｓと正解データＴａｒｇｅｔとを示す説明図である。実験では、１０−ｆｏｌｄ  ｃｒｏｓｓ  ｖａｌｉｄａｔｉｏｎを用いて、Ａ．（１）〜（４）の４因子（ＣＲＩＭ、ＺＮ、ＩＮＤＵＳ、ＣＨＡＳ）のみの場合で実施例１を適用し、Ｂ.（１）〜（１３）の１３因子すべてを用いた場合で実施例１を適用し、Ｃ．実施例２の特徴量ベクトルｚｎが（１）〜（４）の４因子（ＣＲＩＭ、ＺＮ、ＩＮＤＵＳ、ＣＨＡＳ）であり、実施例１の特徴量ベクトルｘｎが（１）〜（１３）の１３因子の場合で実施例２を適用し、決定係数ｒ２（ｒ２＝０．０〜１．０）の尺度で評価した。回帰問題のため、デシジョンユニットＤＣＵ，ＤＣＵａの計算方法をそれぞれ下記式（１８）、（１９）に変更する。
【０１０４】
【数１８】
2019079305.tif 000020
【０１０５】
式（１８）、（１９）では、単に、シグモイド関数が除去されたのみであることに留意する。学習部２６１は、統計的勾配法により正解ラベルｔｎと、予測値ｙｎ、ｙ´ｎとの自乗誤差が最小化するように、上述した学習パラメータ２６５を最適化する。
【０１０６】
図９は、実験結果を示す説明図である。ＢおよびＣの結果は、決定係数ｒ２が０．８を超えたことから、実施例１および実施例２は、それぞれ強い相関で予測することができた。特に、実施例２は、決定係数ｒ２がｒ２＝０．８７３と最も良い結果を得た。
【０１０７】
なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。例えば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加、削除、または置換をしてもよい。
【０１０８】
以上説明したように、上述した実施例によれば、データ分析装置２２０は、変換部４０１と、再配置部４０２と、重要度算出部４０４と、を有する。したがって、特徴量ベクトル（ｘｎ、ｘ´ｎ）の事前再配置により、線形な予測モデルが得られるため、学習時および予測時において、高精度かつ低負荷で予測値を算出することができる。また、特徴量ベクトル（ｘｎ、ｘ´ｎ）にどのような特徴があるかを、重要度算出部４０４からの階層ｌごとの重要度により把握することができる。これにより、分析対象としてニューラルネットワークに与えられた特徴ベクトル（ｘｎ、ｘ´ｎ）についての説明の容易化を高精度かつ効率的に実現することができる。
【０１０９】
また、データ分析装置２２０は、予測データ算出部４０３を有するため、特徴ベクトル（ｘｎ、ｘ´ｎ）に対し、分析対象としてニューラルネットワークからの予測結果（ｙｎ、ｙ´ｎ）が得られた理由についての説明の容易化を高精度かつ効率的に実現ができる。
【０１１０】
また、データ分析装置２２０は、設定部４０５と統合部４０６とを有することにより、予測データ算出部４０３は、再配置結果に基づく予測結果を高精度に算出することができる。
【０１１１】
また、データ分析装置２２０は、縮約部４０７を有することにより、次元縮約によりデータ分析の効率化を図ることができる。
【０１１２】
また、データ分析装置２２０は、学習パラメータ２６５の学習により、高精度な予測モデルを構築することができる。
【０１１３】
また、データ分析装置２２０は、選択部４０８を有することにより、特徴量ベクトルｘｎを重要度が高い要素の特徴量ベクトルｚｎに厳選することができ、重要度ｓｌｎ、ｓ´ｌｎの解釈性を高めることができる。
【０１１４】
また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサがそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウェアで実現してもよい。
【０１１５】
各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶装置、又は、ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）カード、ＳＤカード、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）の記録媒体に格納することができる。
【０１１６】
また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。
【符号の説明】
【０１１７】
２  データ分析システム
２００  クライアント端末
２２０  データ分析装置
２５２  テストデータ集合
２５３  予測結果
２６１  学習部
２６２  予測部
２６４  訓練データ集合
２６５  学習パラメータ
３００  第１ニューラルネットワーク
３０１  入力層
３０２  中間層
３０３  出力層
４０１  変換部
４０２  再配置部
４０３  予測データ算出部
４０４  重要度算出部
４０５  設定部
４０６  統合部
４０７  縮約部
４０８  選択部
６００  第２ニューラルネットワーク
ＡＵ  アテンションユニット
ＤＣＵ  デシジョンユニット
ＤＵ  データユニット群
ＨＵ  ハーモナイジングユニット群
ＲＡＵ  リアロケーションユニット
ＲＵ  リポーティングユニット群
【図１】
2019079305.tif 000021
【図２】
2019079305.tif 000022
【図３】
2019079305.tif 000023
【図４】
2019079305.tif 000024
【図５】
2019079305.tif 000025
【図６】
2019079305.tif 000026
【図７】
2019079305.tif 000027
【図８】
2019079305.tif 000028
【図９】
2019079305.tif 000029