(57)【要約】【課題】予測に寄与することが非自明な特徴量から重要な特徴量を抽出すること。【解決手段】データ分析装置は、特徴量の集合から、予測に寄与することが自明である第１特徴量群と第１特徴量群以外の第２特徴量群とを選定する選定処理と、特徴量の集合を予測モデルに入力した場合に出力される予測結果と特徴量に対応する正解データとの差に関する損失関数において、予測モデルを構成する重みパラメータ集合のうち、第１特徴量群に対応する第１重みパラメータ群に関する第１正則化係数を損失関数が大きくなるように操作し、第２特徴量群に対応する第２重みパラメータ群に関する第２正則化係数を損失関数が小さくなるように操作する操作処理と、操作処理によって第１正則化係数および第２正則化係数が操作された結果、損失関数が最小となるように、予測モデルの重みパラメータ集合を学習する学習処理と、を実行する。【選択図】図１
2020194414.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.
【非特許文献２】Harrison, D. and Rubinfeld, D.L. (1978) Hedonic prices and the demand for clean air. J. Environ. Economics and Management 5, 81-102.
【発明の概要】
【発明が解決しようとする課題】
【０００７】
機械学習は、病気に罹患する確率や機械が故障する確率を予測する以外に、高い精度の予測結果が得られる条件下において、病気に罹患する確率や機械が故障する確率の予測に寄与した特徴量を特定する技術として使用されることもある。
【０００８】
たとえば、ヘルスケア情報の解析において、疾病Ｘの患者とそれ以外の人の血液検査のデータを用いて、患者か否かの予測を行い、予測に寄与した特徴量を重要特徴量として抽出し、患者の治療方針や生活指導の確立に活かされてきた。
【０００９】
特許文献１やパーセプトロンのように、線形結合の演算により予測を行う手法では、重みベクトルの各要素値の大きさを用いた重要特徴量の特定手法により、予測に寄与する特徴量が抽出される。また、非線形結合の演算により予測を行う手法では、決定木を用いた手法のひとつであるｒａｎｄｏｍ  ｆｏｒｅｓｔにおけるｏｕｔ−ｏｆ−ｂａｇ誤り率を用いた重要特徴量の特定手法により、予測に寄与する特徴量が抽出される。
【００１０】
特許文献２のように、線形分離不可能問題を解く能力をもつｄｅｅｐ  ｌｅａｒｎｉｎｇなどにおいても、重要特徴量を抽出する能力を持った手法が開発されている。これらの手法の開発により、新しい効果的な治療方針や生活指導が確立されてきた。
【００１１】
たとえば、特定の特徴量と真値がほぼ等価である場合、特定の特徴量のみで精度の高い予測が可能である。加えて、特定の特徴量以外の他の特徴量も真値の予測に寄与している場合などにおいては、相対的に特定の特徴量以外の他の特徴量における重要度が低下し、予測に寄与した特徴量として、当該他の特徴量を抽出できない可能性が考えられる。特に、特定の特徴量は、すでにこれまでの解析等により、疾病Ｘと関係があると自明の特徴量であると推定される。
【００１２】
また、特定の特徴量のうち予測に寄与する特徴量として自明な特徴量（以下、単に、「自明な特徴量」）以外の特徴量（以下、「非自明な特徴量」）が、予測に寄与することを明らかとするためには、非自明な特徴量のみを用いた予測を行う必要がある。この場合、自明な特徴量は使用されないため、予測精度が低下することが想像される。
【００１３】
本発明の目的は、予測に寄与することが非自明な特徴量を重要な特徴量として抽出することを可能にする、データ分析装置、データ分析方法、およびデータ分析プログラムを提供することにある。
【課題を解決するための手段】
【００１４】
本発明の一側面となるデータ分析装置は、プログラムを実行するプロセッサと、前記プログラムを記憶する記憶デバイスと、を有するデータ分析装置であって、前記プロセッサが、特徴量の集合から、予測に寄与することが自明である第１特徴量群と、前記第１特徴量群以外の第２特徴量群と、を選定する選定処理と、前記特徴量の集合を予測モデルに入力した場合に出力される予測結果と前記特徴量に対応する正解データとの差に関する損失関数において、前記予測モデルを構成する重みパラメータ集合のうち、前記第１特徴量群に対応する第１重みパラメータ群に関する第１正則化係数を前記損失関数が大きくなるように操作し、前記第２特徴量群に対応する第２重みパラメータ群に関する第２正則化係数を前記損失関数が小さくなるように操作する操作処理と、前記操作処理によって前記第１正則化係数および前記第２正則化係数が操作された結果、前記損失関数が最小となるように、前記予測モデルの重みパラメータ集合を学習する学習処理と、を実行することを特徴とする。
【発明の効果】
【００１５】
本発明の代表的な実施の形態によれば、予測に寄与することが非自明な特徴量のうち予測に寄与する特徴量を重要な特徴量として抽出することができる。前述した以外の課題、構成および効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【００１６】
【図１】図１は、自明な特徴量と非自明な特徴量とを示す説明図１である。
【図２】図２は、自明な特徴量と非自明な特徴量とを示す説明図２である。
【図３】図３は、実施例１のデータ分析装置のハードウェア構成例を示すブロック図である。
【図４】図４は、実施例１のデータ分析装置の機能的構成の一例を示すブロック図である。
【図５】図５は、実施例１にかかるデータ分析装置によるデータ分析処理手順例を示すフローチャートである。
【図６】図６は、表示画面の表示例１を示す説明図である。
【図７】図７は、表示画面の表示例２を示す説明図である。
【図８】図８は、特徴量ベクトルＦｅａｔｕｒｅｓと正解データＴａｒｇｅｔとを示す説明図である。
【図９】図９は、実験結果を示す説明図である。
【図１０】図１０は、実施例４にかかるデータ分析装置における画面表示の一例である。
【図１１】図１１は、特徴量ベクトルの再配置例を示す説明図である。
【図１２】図１２は、実施例５にかかるニューラルネットワークの構造例を示す説明図である。
【図１３】図１３は、実施例５のかかるデータ分析装置の機能的構成例を示すブロック図である。
【発明を実施するための形態】
【実施例１】
【００１７】
まず、実施例１のデータ分析装置を説明する。実施例１のデータ分析装置は、自明な特徴量と非自明な特徴量とを選択し、学習プロセスにおいて非自明な特徴量の予測に対する寄与度をあげ、自明な特徴量の寄与度を抑圧した予測結果の表示を行う。
【００１８】
＜自明な特徴量と非自明な特徴量＞
図１は、自明な特徴量と非自明な特徴量とを示す説明図１である。図１では、高校生の卒業可否を予測するロジスティック回帰の例を示す。図１において、特徴量ｘ１，ｎは年齢、特徴量ｘ２，ｎは出席日数、特徴量ｘ３，ｎは身長、予測値ｙｎは卒業可否を示す。ｎはｎ番目（ｎは１以上の整数）の高校生を示す。特徴量ｘ１，ｎ〜ｘ３，ｎのうち、特徴量ｘ１，ｎを、予測値ｙｎの真値とほぼ等価な特定の特徴量とする。
【００１９】
（Ａ）は、特徴量ｘ１，ｎ〜ｘ３，ｎを用いて予測値ｙｎを予測するロジスティック回帰式を示す。σはシグモイド関数、ｗ１〜ｗ３は予測値ｙｎの予測に対する寄与度（重みパラメータともいう）、ＡＵＣは予測精度（０．００≦ＡＵＣ≦１．００）を示す。ＡＵＣの値が大きいほど予測精度が高いことを示す。特定の特徴量ｘ１，ｎは、高校生の卒業可否の真値とほぼ等価であるため、自明な特徴量となる。
【００２０】
ＡＵＣ（Ａｒｅａ  ｕｎｄｅｒ  ａｎ  ＲＯＣ  ｃｕｒｖｅ）は、ＲＯＣ曲線の横軸と縦軸に囲まれた部分の面積であり、ＡＵＣが１に近いほど精度のよいモデルであることを意味する。ＲＯＣ（Ｒｅｃｅｉｖｅｒ  Ｏｐｅｒａｔｉｎｇ  Ｃｈａｒａｃｔｅｒｉｓｔｉｃ  Ｃｕｒｖｅ）は、偽陽性率を横軸に、真陽性率を縦軸としてプロットしたものである。つまり、ＡＵＣが１に近いことは、偽陽性率の値が小さい時点で、高い真陽性率を達成していることを指すため、偏りが少なく精度の良いモデルであると評価可能である。ここで、偽陽性率は、偽陽性のサンプル数を偽陽性と真陰性のサンプル数の和で除算した率であり、真陽性率は真陽性のサンプル数を真陽性と偽陰性のサンプル数の和で除算した率である。
【００２１】
実施例１では、たとえば、予測値ｙｎが検査結果（陽性）で、正解ラベルｔｎが疾患有りの場合、そのサンプル（特徴量ｘｎ）は真陽性である。また、予測値ｙｎが検査結果（陽性）で、正解ラベルｔｎが疾患無しの場合、そのサンプル（特徴量ｘｎ）は偽陽性である。また、予測値ｙｎが検査結果（陰性）で、正解ラベルｔｎが疾患有りの場合、そのサンプル（特徴量ｘｎ）は偽陰性である。また、予測値ｙｎが検査結果（陰性）で、正解ラベルｔｎが疾患無しの場合、そのサンプル（特徴量ｘｎ）は真陰性である。
【００２２】
特徴量ｘ１，ｎの予測値ｙｎの予測への寄与度ｗ１が高い場合、他の特徴量ｘ２，ｎの寄与度ｗ２および特徴量ｘ３，ｎの寄与度ｗ３が相対的に低くなる。そのため、実際には予測に寄与する他の特徴量が含まれるにも関わらず、当該他の特徴量を予測に寄与した特徴量として抽出できない。
【００２３】
（Ｂ）は、特徴量ｘ１，ｎ〜ｘ３，ｎのうち、自明な特徴量ｘ１，ｎを除外して、予測値ｙｎを予測するロジスティック回帰式を示す。この場合、（Ａ）では特徴量ｘ２，ｎの寄与度ｗ２の値は低かった（ｗ２＝０．１５）が、自明な特徴量ｘ１，ｎを除外したことにより、（Ｂ）での特徴量ｘ２，ｎの寄与度ｗ２の値は上昇する（ｗ２＝０．９５）。このように、特定の特徴量ｘ２，ｎも予測に寄与するため、非自明な特徴量であるが予測に寄与する特徴量となる。
【００２４】
したがって、本実施例のデータ分析装置は、予測値ｙｎの真値とほぼ等価である自明な特徴量を抑圧するように損失関数のパラメータを操作するとともに、非自明な特徴量が上昇するように損失関数のパラメータを操作し、かつ、予測値ｙｎの予測精度が低下しないように維持する。
【００２５】
図２は、自明な特徴量と非自明な特徴量とを示す説明図２である。図２では、大学生の卒業可否を予測するロジスティック回帰の例を示す。図２において、特徴量ｘ１，ｎは出席日数、特徴量ｘ２，ｎはテストの点数、特徴量ｘ３，ｎは身長、予測値ｙｎは卒業可否を示す。ｎはｎ番目（ｎは１以上の整数）の大学生を示す。特徴量ｘ１，ｎ〜特徴量ｘ３，ｎのうち、特徴量ｘ１，ｎを、真値との等価性は低いものの予測値ｙｎの予測に寄与することが既知である特定の特徴量とする。
【００２６】
（Ａ）は、特徴量ｘ１，ｎ〜特徴量ｘ３，ｎを用いて予測値ｙｎを予測するロジスティック回帰式を示す。特定の特徴量ｘ１，ｎは、出席日数であるため、出席日数が多いと真面目な学生であり、優秀な学生であると評価されるものとする。特定の特徴量ｘ１，ｎは、予測値ｙｎの予測に寄与することが既知であるため、自明な特徴量となる。
【００２７】
特徴量ｘ１，ｎの予測値ｙｎの予測への寄与度ｗ１が著しく高い場合、他の特徴量ｘ２，ｎの寄与度ｗ２および特徴量ｘ３，ｎの寄与度ｗ３が相対的に低くなる。そのため、実際には予測に寄与する他の特徴量が含まれるにも関わらず、当該他の特徴量を予測に寄与した特徴量として抽出できない。
【００２８】
（Ｂ）は、特徴量ｘ１，ｎ〜ｘ３，ｎのうち、自明な特徴量ｘ１，ｎを除外して、予測値ｙｎを予測するロジスティック回帰式を示す。この場合、（Ａ）では特徴量ｘ２，ｎの寄与度ｗ２の値は低かった（ｗ２＝０．３５）が、機械学習により、（Ｂ）での特徴量ｘ２，ｎの寄与度ｗ２の値は上昇する（ｗ２＝０．９５）。このように、特定の特徴量ｘ２，ｎは予測に寄与する非自明な特徴量となる。
【００２９】
したがって、本実施例のデータ分析装置は、予測値ｙｎの予測に寄与することが既知である自明な特徴量の重みを低下させるように損失関数のパラメータを操作するとともに、非自明な特徴量の重みを増加させるように損失関数のパラメータを操作し、かつ、予測値ｙｎの予測精度が低下しないように維持する。
【００３０】
＜データ分析装置のハードウェア構成例＞
図３は、実施例１のデータ分析装置のハードウェア構成例を示すブロック図である。データ分析装置３００は、プロセッサ３０１と、記憶デバイス３０２と、入力デバイス３０３と、出力デバイス３０４と、通信インターフェース（通信ＩＦ）３０５と、を有する。プロセッサ３０１、記憶デバイス３０２、入力デバイス３０３、出力デバイス３０４、および通信ＩＦ３０５は、バス３０６により接続される。プロセッサ３０１は、データ分析装置３００を制御する。記憶デバイス３０２は、プロセッサ３０１の作業エリアとなる。また、記憶デバイス３０２は、各種プログラムやデータを記憶する非一時的なまたは一時的な記録媒体である。記憶デバイス３０２としては、たとえば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、フラッシュメモリがある。入力デバイス３０３は、データを入力する。入力デバイス３０３としては、たとえば、キーボード、マウス、タッチパネル、テンキー、スキャナがある。出力デバイス３０４は、データを出力する。出力デバイス３０４としては、たとえば、ディスプレイ、プリンタがある。通信ＩＦ３０５は、ネットワークと接続し、データを送受信する。
【００３１】
＜データ分析装置３００の機能的構成例＞
図４は、実施例１のデータ分析装置３００の機能的構成の一例を示すブロック図である。データ分析装置３００は、データ格納部４０１と、モデル格納部４０２と、結果格納部４０３と、選定部４１１と、学習部４１２と、操作部４１３と、予測部４１４と、重要度算出部４１５と、出力部４１６と、を有する。データ格納部４０１、モデル格納部４０２、および結果格納部４０３は、具体的には、たとえば、図３に示した記憶デバイス３０２により実現される。また、選定部４１１、学習部４１２、操作部４１３、予測部４１４、重要度算出部４１５、および出力部４１６は、具体的には、たとえば、図３に示した記憶デバイス３０２に記憶されたプログラムをプロセッサ３０１に実行させることにより実現される。
【００３２】
データ格納部４０１は、学習部４１２における学習プロセスで用いる訓練データと、予測部４１４における予測プロセスで用いるテストデータと、を格納する。
【００３３】
訓練データは、たとえば、特徴量ｘd,nとその真値となる正解ラベルｔｎとの組み合わせ｛ｘd,n，ｔｎ｝により構成されるサンプルデータである（ｄ＝１，２，…，Ｄ、ｎ＝１，２，…，Ｎ。Ｄは特徴量の種類（次元）数、Ｎはサンプルの数）。特徴量ｘd,nは、たとえば、患者の検査データや画像データである。
【００３４】
テストデータは、訓練データとは異なる特徴量ｘd,nである。予測値ｙｎが得られたテストデータとしての特徴量ｘd,nとその真値となる正解ラベルｔｎとの組み合わせは、訓練データとして扱われる。
【００３５】
モデル格納部４０２は、学習部４１２からの出力データを格納する。出力データは、寄与度を示す特徴量ｘd,nの重みベクトルｗnを含む。
【００３６】
結果格納部４０３は、予測部４１４における予測処理で算出された予測値ｙｎおよび学習パラメータである重みパラメータｗn、重要度算出部４１５によって抽出された予測に寄与した重要な特徴量を格納する。
【００３７】
選定部４１１は、訓練データである特徴量ｘd,nの集合から、自明な特徴量と非自明な特徴量とを選定する。選定部４１１は、開発者または技術者によるこれまでの知見の積み重ねや文献などにおいて学術的に重要であると示されている特徴量を、自明な特徴量として選定してもよい。
【００３８】
また、選定部４１１は、特徴量ｘd,nの集合のうち、自明な特徴量として選定されなかった残余の特徴量ｘd,nを、非自明な特徴量とする。たとえば、図１および図２では、特徴量ｘ１，ｎが自明な特徴量として選定され、特徴量ｘ２，ｎ，ｘ３，ｎが非自明な特徴量として選定される。
【００３９】
学習部４１２は、下記式（１）に対し、入力となる特徴量ｘd,nから得られた予測値ｙｎと、正解ラベルｔｎと、の誤差が最小となるように、ハイパーパラメータおよび重みパラメータｗnを更新する。
【００４０】
【数１】
2020194414.tif 000003
【００４１】
上記式（１）は、予測値ｙｎの算出において線形結合の演算を用いる機械学習手法の一つであるロジスティック回帰の予測式の一例である。予測値ｙｎは、特徴量ｘd,nと重みパラメータｗn∈ＲＤ（Ｄは１以上の整数。）とに基づいて算出される。ｗｔは重みパラメータｗnを要素とする重みベクトルであり、重みベクトルｗｔのｔは、転置を意味する。σは、シグモイド関数などの活性化関数である。ｘｎは、特徴量ｘd,nを要素とする特徴量ベクトルである。
【００４２】
学習部４１２は、上記式（１）を用いて、入力となる特徴量ベクトルｘnから得られた予測値ｙｎと実際の値（真値）である正解ラベルｔｎとの誤差が最小となるように学習パラメータ（重みベクトルｗｔ）を計算する損失関数Ｌ（ｗｎ）を設定する。具体的には、たとえば、学習部４１２は、選定部４１１によって選定された自明な特徴量ｘｋ，ｎの重みパラメータｗｋ，ｎと、選定部４１１によって選定された非自明な特徴量ｘｈ，ｎの重みパラメータｗｈ，ｎと、を寄与度操作項ＲＰ（ｗｔｎ）に設定する。
【００４３】
損失関数Ｌ（ｗｎ）は、下記式（２）および式（３）に示すように、誤差関数Ｅ（ｗｎ）と寄与度操作項ＲＰ（ｗｎ）との和で表される。
【００４４】
【数２】
2020194414.tif 000004
【００４５】
ｗｎは、ｎ番目のサンプルである特徴量ベクトルｘｎの各特徴量ｘ１，ｎ〜ｘＤ，ｎに対応する重みパラメータｗ１〜ｗＤを要素とする重みベクトルである。誤差関数Ｅ（ｗｎ）は、たとえば、予測値ｙｎと正解ラベルｔｎとの二乗和誤差でもよく、また、交差エントロピー誤差でもよい。
【００４６】
また、上記式（３）は、寄与度操作項ＲＰ（ｗｎ）である。寄与度操作項ＲＰ（ｗｎ）内のハイパーパラメータは、操作部４１３によって設定される。式（３）において、λ（０．０≦λ≦１．０）は損失係数である。λが大きいほど、損失関数Ｌ（ｗｎ）の値が大きくなる。ｐはノルムの次元を示す。
【００４７】
また、機械学習手法によって、重みベクトルｗnが各特徴量ｘd,nに存在する場合の予測式は、たとえば、下記式（４）に表現される。
【００４８】
【数３】
2020194414.tif 000005
【００４９】
また、損失関数Ｌ（ｗｔｎ）は、下記式（５）および式（６）に示すように、誤差関数Ｅ（ｗｔｎ）と寄与度操作項ＲＰ（ｗｔｎ）との和で表される。
【００５０】
【数４】
2020194414.tif 000006
【００５１】
また、上記式（６）の寄与度操作項ＲＰ（ｗｔｎ）は、ノルムの次元ｐ＝１として、下記式（７）の寄与度操作項Ｒ１（ｗｎ）に置き換えてもよい。
【００５２】
【数５】
2020194414.tif 000007
【００５３】
式（７）の寄与度操作項Ｒ１（ｗｎ）において、λは上述した損失係数、μは自明な特徴量ｘｋ，ｎの重みパラメータｗｋ，ｎに関する第１正則化係数、νは非自明な特徴量ｘｈ，ｎの重みパラメータｗｈ，ｎに関する第２正則化係数である。第１正則化係数μと第２正則化係数νとの関係は、たとえば、μ＋ν＝１．０である。λ，μ，およびνは、ハイパーパラメータである。また、ｋは自明な特徴量ｘｋ，ｎを示す番号、Ｔは自明な特徴量ｘｋ，ｎの数、ｈは非自明な特徴量を示す番号、Ｕは非自明な特徴量の数を示す。
【００５４】
学習部４１２において、寄与度操作項Ｒ１（ｗｎ）を誤差関数Ｅ（ｗｎｔ）に加算することで、自明な特徴量ｘｋ，ｎの重みパラメータｗｋ，ｎが大きくなることを防ぎ、スパースなモデルを得る効果がある。
【００５５】
また、上記式（６）の寄与度操作項ＲＰ（ｗｔｎ）は、ノルムの次元ｐ＝２として、下記式（８）の寄与度操作項Ｒ２（ｗｎ）に置き換えてもよい。
【００５６】
【数６】
2020194414.tif 000008
【００５７】
学習部４１２において、寄与度操作項Ｒ２（ｗｎ）を誤差関数Ｅ（ｗｎ）に加算することで、自明な特徴量ｘｋ，ｎの重みパラメータｗｋ，ｎが大きくなることを防ぎ、過学習を抑えてなめらかな予測モデルを得る効果がある。
【００５８】
また、上記式（６）の寄与度操作項ＲＰ（ｗｔｎ）は、下記式（９）の寄与度操作項Ｒels（ｗｎ）に置き換えてもよい。
【００５９】
【数７】
2020194414.tif 000009
【００６０】
上記式（９）は、各重みベクトルｗｎのＬ１ノルムとＬ２ノルムとを線形結合したｅｌａｓｔｉｃ  ｎｅｔの式であり、式（７）と式（８）を線形結合した寄与度操作項である。式（９）中、α（０．０≦α≦１．０）はエラスティック係数である。エラスティック係数αもハイパーパラメータである。
【００６１】
寄与度操作項Ｒels（ｗｎ）を誤差関数Ｅ（ｗｎ）に加算することで、自明な特徴量ｘｋ，ｎの重みパラメータｗｋ，ｎが大きくなることを防ぎ、式（７）に示すようなスパースなモデルを得る効果と、式（８）に示すような過学習を抑えてなめらかなモデルを得る効果を得ることができる。
【００６２】
操作部４１３は、非自明な特徴量の予測に対する寄与度を増加させ、自明な特徴量の寄与度を低下させる寄与度操作項のハイパーパラメータを操作する。操作部４１３は、上述したハイパーパラメータである損失係数λ、自明な特徴量ｘｋ，ｎの重みパラメータｗｋ，ｎに関する第１正則化係数μ、非自明な特徴量ｘｈ，ｎの重みパラメータｗｈ，ｎに関する第２正則化係数ν、エラスティック係数αを操作する。第１正則化係数μ，第２正則化係数νを、０．０〜１．０までの値としたため、自明な特徴量ｘｋ，ｎの重みパラメータｗｋ，ｎの抑圧度合いの制御がわかりやすくなる。
【００６３】
また、操作部４１３は、第１正則化係数μと第２正則化係数νとの和が、たとえば、１．０となるように操作する。操作部４１３は、第１正則化係数μが第２正則化係数νよりも大きくなるように操作する。自明な特徴量ｘｋ，ｎの重みパラメータｗｋ，ｎに関する第１正則化係数μは０．５より大きいことを条件としてもよい。
【００６４】
これにより、第１正則化係数μを第２正則化係数νよりも大きくすると、寄与度操作項ＲＰ（ｗｔｎ）内で第１正則化項μがかかる項の値が大きくなる。このため、損失関数Ｌ（ｗｔｎ）を小さくするために第１重みパラメータ群の値を第２重みパラメータ群より小さくする方向に学習が行われることにより、寄与度操作項ＲＰ（ｗｔｎ）を用いない場合に比べて、自明な特徴量ｘｋ，ｎの重みパラメータｗｋ，ｎを抑圧することが可能となる。また、第１正則化係数μの値の範囲を、たとえば、０．７以上としてもよい。
【００６５】
また、Ｌ１ノルム、Ｌ２ノルム、ｅｌａｓｔｉｃ  ｎｅｔの例を示したが、ノルムの次元ｐをｐ＝０．５などとしてもよい。
【００６６】
予測部４１４は、式（１）や式（２）に重みベクトルｗnが適用された予測モデルにテストデータの特徴量ｘd,nを与えて予測処理を実行し、予測値ｙｎを結果格納部４０３と出力部４１６に出力する。
【００６７】
また、予測部４１４は、上述した予測値ｙｎに対するＡＵＣを算出する。ＡＵＣがしきい値以下の場合、予測が失敗したことを意味する。この場合、操作部４１３は、各ハイパーパラメータを再操作し、学習部４１２は、重みベクトルｗｎを再学習してもよい。
【００６８】
重要度算出部４１５は、モデル格納部４０２に格納された重みベクトルｗnを用いて、特徴量ｘd,nを予測に寄与した順に並べ、予測に寄与した順に重要な特徴量とみなす計算を行う。予測に寄与した順とは、たとえば、重みベクトルｗnのノルムの大きい順である。重要度算出部４１５は、重みベクトルｗnのノルムを算出する。
【００６９】
重要度算出部４１５は、予測に寄与した順に、特徴量ｘd,nに重要度を付与する。重要度はノルムに比例し、ノルムが大きいほど大きな値となる。重要度算出部４１５は、自明な特徴量の重みベクトルｗnのノルムに０．０以上１．０未満の値を重み付けしてもよい。また、重要度算出部４１５は、特徴量ｘd,nを予測に寄与した順に並べる際に、自明な特徴量を除外してもよい。
【００７０】
また、重要度算出部４１５は、ノルムそのものを重要度として付与してもよい。重要度の計算には、使用した機械学習手法に応じて、重みベクトルｗnを用いず、ｏｕｔ−ｏｆ−ｂａｇ誤り率などを用いてもよい。
【００７１】
これにより、選定部４１１は、重要度算出部４１５によって算出された重要度を参照して、自明な特徴量と非自明な特徴量とをさらに選定してもよい。
【００７２】
なお、データ分析装置３００は複数台で構成されてもよい。たとえば、負荷分散のため、データ分析装置３００が複数存在してもよい。また、データ分析装置３００は、１以上の機能を含む複数台で構成されてもよい。
【００７３】
＜データ分析処理手順例＞
図５は、実施例１にかかるデータ分析装置３００によるデータ分析処理手順例を示すフローチャートである。データ分析装置３００は、選定部４１１によってデータ格納部から訓練データ集合を読み込む（ステップＳ５０１）、つぎに、データ分析装置３００は、選定部４１１によって、訓練データ集合を自明な特徴量と非自明な特徴量とを選定する（ステップＳ５０２）。
【００７４】
そして、データ分析装置３００は、式（２）または式（５）の損失関数Ｌを用いて、訓練データ集合の特徴量ｘｄ，ｎを与えたことによって得られる予測値ｙｎと正解ラベルｔｎとの誤差が最小となるような重みパラメータｗｎを生成する（ステップＳ５０３）。ステップＳ５０１〜Ｓ５０３が学習プロセスである。
【００７５】
データ分析装置３００は、予測部４１４によってデータ格納部４０１からテストデータ集合を読み込む（ステップＳ５０４）。データ分析装置３００は、式（１）または式（４）の予測式に重みパラメータｗｎが設定された予測モデルに、テストデータ集合の特徴量ｘｄ，ｎを与えることにより、予測値ｙｎを算出する（ステップＳ５０５）。
【００７６】
データ分析装置３００は、重要度算出部４１５によって特徴量の重要度を抽出する（ステップＳ５０６）。そして、つぎに、データ分析装置３００は、予測値ｙｎと重要度との組み合わせを結果格納部４０３に保存する（ステップＳ５０７）。そして、データ分析装置３００は、出力部４１６により予測値ｙｎと重要度との組み合わせを出力する（ステップＳ５０８）。
【００７７】
そして、データ分析装置３００は、操作部４１３によって、ハイパーパラメータである損失係数λ、自明な特徴量ｘｋ，ｎの重みパラメータｗｋ，ｎに関する第１正則化係数μ、非自明な特徴量ｘｈ，ｎの重みパラメータｗｈ，ｎに関する第２正則化係数ν、エラスティック係数αを操作する（ステップＳ５０９）。
【００７８】
＜表示画面例＞
図６は、表示画面の表示例１を示す説明図である。表示画面６００は、データ分析装置３００の出力デバイス３０４の一例であるディスプレイ、または、出力部４１６からの出力先のコンピュータのディスプレイに表示される。
【００７９】
表示画面６００は、Ｉｍｐｏｒｔ  ｆｉｌｅボタン６０１と、ｆｅａｔｕｒｅ  ｓｅｌｅｃｔボタン６０２と、ｔｒａｉｎボタン６０３と、ｐｒｅｄｉｃｔボタン６０４と、ｓａｖｅボタン６０５と、ｆｉｌｅ  ｎａｍｅ欄６０６と、選択画面６１０と、を含む。
【００８０】
データ分析装置３００は、ユーザ操作によるＩｍｐｏｒｔ  ｆｉｌｅボタン６０１の押下が検出されると、ユーザ操作で学習部４１２にて使用する訓練データや、予測部４１４にて使用するテストデータ、決定した最適なモデル、予測結果や重要度等を選択する。選択したデータの名前は、Ｉｍｐｏｒｔ  ｆｉｌｅ  ｎａｍｅ欄６０６に表示される。その後、ユーザ操作によるｆｅａｔｕｒｅ  ｓｅｌｅｃｔボタン６０２が押下されると、選定部４１１による特徴量の選択画面６１０が表示される。
【００８１】
ユーザは、自明な特徴量としたい特徴量を、たとえば、チェックボックス６１１にチェックを付ける。選定部４１１は、チェックされた特徴量を自明な特徴量に選定する。特徴量の選定が終了し、学習を開始する際には、ユーザは、ｔｒａｉｎボタン６０３を押下する。これにより、学習部４１２は、学習プロセスを開始する。その後、ユーザは、テストデータを選択し、ｐｒｅｄｉｃｔボタン６０４を押下する。これにより、ことで、予測部４１４は、予測プロセスを開始する。
【００８２】
図７は、表示画面の表示例２を示す説明図である。表示画面６００は、予測プロセス終了後、予測値ｙｎおよび重要度、自明な特徴量ｘｋ，ｎの重みパラメータｗｋ，ｎの抑圧効果を表示する。精度表示エリア７１１に、予測値ｙｎが表示される。また、抑圧効果表示エリア７１２に、通常の予測における各特徴量ｘｄ，ｎの重みパラメータｗｄ，ｎと、操作部４１３により自明な特徴量ｘｋ，ｎの重みパラメータｗｋ，ｎが抑圧された結果と、が並んで表示される。
【００８３】
図７では、通常の予測と抑圧された結果を比較して表示しているが、抑圧された結果のみであってもよい。また、自明な特徴量ｘｋ，ｎの重みパラメータｗｋ，ｎとして表示する値は、実際の重みパラメータｗｋ，ｎの値でも良いし、各サンプルｎにおいて正規化した値でもよいし、各サンプルｎにおいて正規化し、その後、全サンプル１〜Ｎや全クロスバリデーションにより合算した平均値としてもよい。
【００８４】
これらの分析結果を保存したい場合、ユーザはｓａｖｅボタン６０５を押下する。これにより、保存したいメモリ空間を指定可能な画面が表示される。ユーザがメモリ空間を指定し、実行ボタンを押下すると、指定したメモリ空間に解析結果が保存される。保存した先のメモリ空間は、Ｅｘｐｏｒｔ  ｆｉｌｅ ｎａｍｅ欄７０１などに表示される。
【００８５】
このように、実施例１によれば、予測根拠を説明可能な機械学習において、自明な特徴量と非自明な特徴量に異なるペナルティを与える損失関数を用いることにより、自明な特徴量ｘｋ，ｎの予測への寄与度（重みパラメータｗｋ，ｎ）を抑圧し、その他の非自明な特徴量ｘｈ，ｎを積極的に用いた予測を実現できる。これにより、予測に寄与する学術的な知見等においては、未だ発見されていないような未知の特徴量を抽出することを可能とすることができる。
【実施例２】
【００８６】
実施例２について説明する。実施例１では、特徴量群を、自明な特徴量のグループと非自明な特徴量のグループという２つのグループに選定した。実施例２は、実施例１よりもさらに、自明な特徴量、非自明な特徴量、予測に寄与しないことが自明な特徴量のように、寄与度を操作する特徴量のグループ数を増加させた例である。なお、実施例１と同一構成には同一符号を付し、その説明を省略する場合がある。
【００８７】
選定部４１１は、訓練データである特徴量ｘd,nの集合から、（予測に寄与することが）自明な特徴量と非自明な特徴量と予測に寄与しないことが自明な特徴量とを選定する。選定部４１１は、開発者または技術者によるこれまでの知見の積み重ねや文献などにおいて学術的に重要であると示されている特徴量を、自明な特徴量として選定してもよい。
【００８８】
また、選定部４１１は、開発者または技術者によるこれまでの知見の積み重ねや文献などにおいて学術的に重要でないと示されている特徴量を、予測に寄与しない自明な特徴量として選定してもよい。また、選定部４１１は、特徴量ｘd,nの集合のうち、自明な特徴量および予測に寄与しない自明な特徴量として選定されなかった残余の特徴量ｘd,nを、非自明な特徴としてもよい。たとえば、図１および図２では、特徴量ｘ１，ｎが自明な特徴量として選定され、特徴量ｘ２，ｎ，ｘ３，ｎが非自明な特徴量として選定され、特徴量ｘ３，ｎが予測に寄与しない自明な特徴量として選定される。
【００８９】
操作部４１３は、非自明な特徴量の予測に対する寄与度を増加させ、自明な特徴量および予測に寄与しないことが自明な特徴量の寄与度を低下させる寄与度操作項のハイパーパラメータを操作する。寄与度操作項ＲＰ（ｗｔｎ）は、ノルムの次元ｐ＝１として、下記式（１０）の寄与度操作項Ｒ１（ｗｎ）に置き換える。
【００９０】
【数８】
2020194414.tif 000010
【００９１】
上記式（１０）は、Ｌ１ノルムの寄与度操作項Ｒ１（ｗｎ）の一例である。τは予測に寄与しないことが自明な特徴量ｘｌ，ｎの重みパラメータｗｌ，ｎに関する第３正則化係数である。τもハイパーパラメータである。ｌは予測に寄与しないことが自明な特徴量を示す番号、Ｖは非自明な特徴量の数を示す。上記式（１０）の寄与度操作項Ｒ１（ｗｎ）は、上記式（６）に示すように、学習部４１２において誤差関数Ｅ（ｗｎｔ）に加算される。これにより、学習部４１２は、損失関数Ｌ（ｗｎｔ）を算出し、重みパラメータｗｋ，ｎ，ｗｈ，ｎ，ｗｌ，ｎを更新する。
【００９２】
このようにして、自明な特徴量ｘｋ，ｎの重みパラメータｗｋ，ｎおよび予測に寄与しないことが自明な特徴量ｘｌ，ｎの重みパラメータｗｌ，ｎが大きくなることを防ぎ、スパースなモデルを得る効果がある。
【００９３】
また、上記式（６）の寄与度操作項ＲＰ（ｗｔｎ）は、ノルムの次元ｐ＝２として、下記式（１１）の寄与度操作項Ｒ２（ｗｎ）に置き換えてもよい。
【００９４】
【数９】
2020194414.tif 000011
【００９５】
学習部４１２において、寄与度操作項Ｒ２（ｗｎ）を誤差関数Ｅ（ｗｎ）に加算することで、自明な特徴量ｘｋ，ｎの重みパラメータｗｋ，ｎおよび予測に寄与しないことが自明な特徴量ｘｌ，ｎの重みパラメータｗｌ，ｎが大きくなることを防ぎ、過学習を抑えてなめらかな予測モデルを得る効果がある。
【００９６】
また、上記式（６）の寄与度操作項ＲＰ（ｗｔｎ）は、下記式（１２）の寄与度操作項Ｒels（ｗｎ）に置き換えてもよい。
【００９７】
【数１０】
2020194414.tif 000012
【００９８】
上記式（１２）は、各重みベクトルｗｎのＬ１ノルムとＬ２ノルムとを線形結合したｅｌａｓｔｉｃ  ｎｅｔの式であり、式（１０）と式（１１）を線形結合した寄与度操作項である。式（１２）中、α（０．０≦α≦１．０）はエラスティック係数である。エラスティック係数αもハイパーパラメータである。
【００９９】
寄与度操作項Ｒels（ｗｎ）を誤差関数Ｅ（ｗｎ）に加算することで、自明な特徴量ｘｋ，ｎの重みパラメータｗｋ，ｎおよび予測に寄与しないことが自明な特徴量ｘｌ，ｎの重みパラメータｗｌ，ｎが大きくなることを防ぎ、式（１０）に示すようなスパースなモデルを得る効果と、式（１１）に示すような過学習を抑えてなめらかなモデルを得る効果を得ることができる。
【０１００】
また、操作部４１３は、第１正則化係数μと第２正則化係数νと第３正則化係数τの和が、たとえば、１．０となるように操作する。操作部４１３は、第１正則化係数μ，第３正則化係数τが第２正則化係数νよりも大きくなるように操作する。第１正則化係数μ，τの一方は０．５より大きいことを条件としてもよい。
【０１０１】
これにより、自明な特徴量ｘｋ，ｎの重みパラメータｗｋ，ｎおよび予測に寄与しないことが自明な特徴量ｘｌ，ｎの重みパラメータｗｌ，ｎが大きくなると、第１正則化係数μ，第３正則化係数τの正則化項が増加することとなり、寄与度操作項ＲＰ（ｗｔｎ）を用いない場合に比べて、自明な特徴量ｘｋ，ｎの重みパラメータｗｋ，ｎおよび予測に寄与しないことが自明な特徴量ｘｌ，ｎの重みパラメータｗｌ，ｎを抑圧し、非自明な特徴量ｘh，ｎの重みパラメータｗh，ｎの値を増大させることが可能となる。また、第１正則化係数μ，第３正則化係数τの一方の値の範囲を、たとえば、０．７以上としてもよい。
【０１０２】
また、選定部４１１は、自明な特徴量として指定する特徴量を網羅的に変更し、実施例１を実施した結果に基づいて、自明な特徴量を選定してもよい。具体的には、たとえば、選定部４１１は自明な特徴量を１つのみ選定し、実施例１を実施し予測精度（ＡＵＣや決定係数ｒ２など）および重要度を得る。
【０１０３】
続いて、データ分析装置３００は、１つのみ選定する特徴量を変更し、全特徴量の数だけ実施例１を実施する。さらに、データ分析装置３００は、指定する特徴量を２つとして、同様に全特徴量の組み合わせにて実施例１を実施し、指定する特徴量をさらに増加させ、自明な特徴量として選定できる全パターンにおいて実施する。その後、予測精度がしきい値以上となった場合に、選定部４１１は、自明な特徴量として選定した特徴量および特徴量の組み合わせを列挙し、その中から、自明な特徴量を選定する。
【０１０４】
列挙された特徴量は、正確な予測を実現するために重要な特徴量であると解釈可能である。この際、データ分析装置３００は、列挙された特徴量および特徴量の組み合わせに出現する回数が多い特徴量から順に自明な特徴量としてもよい。これにより、選定部４１１は、自明な特徴量および非自明な特徴量を動的に選定することが可能となる。
【０１０５】
また、データ分析装置３００が自明な特徴量として選定できる全パターンにおいて実施例１を実施した結果、選定部４１１は、得られた重要度を参照し、自明な特徴量として指定したにも関わらず、重要度が高い特徴量を自明な特徴量として選定してもよい。予測への寄与度を抑圧しているにもかかわらず、重要度が高い特徴量とは、正確な予測を実現するために重要な特徴量であると解釈可能である。この際、データ分析装置３００は、自明な特徴量として指定したにも関わらず、重要度がしきい値以上であった特徴量として列挙された特徴量および特徴量の組み合わせに出現する回数が多い特徴量から順に自明な特徴量としてもよい。これにより、選定部４１１は、自明な特徴量および非自明な特徴量を動的に選定することが可能となる。
【０１０６】
このように、実施例２によれば、予測根拠を説明可能な機械学習において、自明な特徴量と非自明な特徴量と予測に寄与しないことが自明な特徴量に異なるペナルティを与える損失関数Ｌ（ｗｎｔ）を用いることにより、自明な特徴量および予測に寄与しないことが自明な特徴量の予測への寄与度を抑圧し、非自明な特徴量を積極的に用いた予測を実現できる。これにより、予測に寄与するものの学術的な知見等においては、未だ発見されていないような未知の特徴量を抽出することを可能とすることができる。
【実施例３】
【０１０７】
実施例３について説明する。実施例３は、選定部４１１における自明な特徴量と非自明な特徴量の選定方法に関する例である。なお、実施例１および実施例２と同一構成には同一符号を付し、その説明を省略する場合がある。
【０１０８】
実施例１および実施例２では、選定部４１１にて、自明な特徴量の選定において、既に文献などにおいて学術的に重要であると示されている特徴量や、開発者や技術者がこれまでの知見の積み重ねの中から指定するなどとした。実施例３では、選定部４１１が、実際に予測に寄与した度合いから自明な特徴量を選定する。予測に寄与した度合いに基づいて選定する方法を示すために、ボストンの住宅価格を予測した場合の例として、上記非特許文献２で用いられたデータにより性能検証を実施した。
【０１０９】
図８は、特徴量ベクトルＦｅａｔｕｒｅｓと正解データＴａｒｇｅｔとを示す説明図である。実験では、まず、１０−ｆｏｌｄ  ｃｒｏｓｓ  ｖａｌｉｄａｔｉｏｎを用いて、（１）〜（１３）の１３個の特徴量すべてを用いた場合で予測を適用し、予測に寄与した特徴量のうち、重要度が上位２０％にあたる２個の特徴量を自明な特徴量として選択し、実施例１を適用した。
【０１１０】
図９は、実験結果を示す説明図である。操作部４１３による操作を行わなかった場合のデータ分析装置３００による予測結果がＮｏｒｍａｌのグラフであり、操作部４１３による操作を行った場合のデータ分析装置３００による予測結果がＳｕｐｐｒｅｓｓｉｏｎのグラフである。Ｎｏｒｍａｌにおける決定係数ｒ２（＝０．７５）が０．７を超えていることから、データ分析装置３００は、正確な予測に寄与した寄与度について重要度を算出する。
【０１１１】
選定部４１１は、重みベクトルｗnの大きさを各特徴量間で比較して、総じて上位２個である特徴量（６）および特徴量（１３）を自明な特徴量に選定する。操作部４１３は、式（７）を用いて、自明な特徴量ｘｋ，ｎの重みパラメータｗｋ，ｎに関する第１正則化係数μを０．５以上に操作する。学習部４１２は、学習プロセスにおいて学習パラメータ（重みベクトルｗn）を生成する。選定部４１１は、再度、重みベクトルｗnの大きさを各特徴量間で比較する。
【０１１２】
決定係数ｒ２（＝０．８２）が０．７を超えていることから、第１正則化係数μの操作後においても強い予測精度で予測されていることがわかる。Ｎｏｒｍａｌな予測における重みベクトルｗnの大きさと、Ｓｕｐｐｒｅｓｓｉｏｎな予測における重みベクトルｗnの大きさを比較すると、特徴量（６）および特徴量（１３）の重みベクトルｗnを抑圧できており、Ｎｏｒｍａｌな予測において値が小さかった重みベクトルｗnの大きさを増加させることができている。
【０１１３】
なお、実施例３において、予測に寄与した特徴量のうち重要度の上位２０％を自明な特徴量としたが、５０％などとしてもよいし、予め数を決めておいてもよい。また、実施例３では、予測に寄与した度合いに基づいて選定する方法を示したが、選定部４１１は、予測結果に基づいて選定してもよい。選定部４１１は、予測結果が、たとえば決定係数ｒ２やＡＵＣが０．８以下となるまで自明な特徴量を選定してもよい。
【０１１４】
このように、実施例３によれば、予測根拠を説明可能な機械学習において、自明な特徴量と非自明な特徴量に異なるペナルティを与える損失関数を用いることにより、自明な特徴量ｘｋ，ｎの予測への寄与度（重みパラメータｗｋ，ｎ）を抑圧し、その他の非自明な特徴量ｘｈ，ｎを積極的に用いた予測を実現できる。これにより、予測に寄与する学術的な知見等においては、未だ発見されていないような未知の特徴量を抽出することを可能とすることができる。
【実施例４】
【０１１５】
実施例４について説明する。実施例４は、操作部４１３における自明な特徴量の第１正則化係数μと非自明な特徴量の第２正則化係数νの決定方法に関する例である。なお、実施例１と同一構成には同一符号を付し、その説明を省略する場合がある。
【０１１６】
実施例１では、操作部４１３にて、自明な特徴量の正則化項と非自明な特徴量の正則化項を決定する際に、各第１正則化係数μ，νの値の範囲を、自明な特徴量の第１正則化係数μと非自明な特徴量の第２正則化係数νの和が１となるようにし、自明な特徴量の第１正則化係数μは０．５より大きいことを条件とした。実施例４では、上記条件のもと、指定した値の範囲の中で、学習部４１２において予測精度が最高となる学習パラメータを生成する例を示す。
【０１１７】
図１０は、実施例４にかかるデータ分析装置３００における画面表示の一例である。第１正則化係数μ，第２正則化係数νの決定においては、図１０に示すように、ユーザインタフェースの一例である第１正則化係数μ，第２正則化係数νの値を調整するスライダ１００１により、自明な特徴量の第１正則化係数μと非自明な特徴量の第２正則化係数νの値を調整してもよい。また、その後、図７に示すような重みベクトルｗnの大きさを確認した後、再び自明な特徴量の第１正則化係数μと非自明な特徴量の第２正則化係数νの値を変更してもよい。
【０１１８】
また、値の決定方法として、ユーザは、自明な特徴量の第１正則化係数μを０．９などと固定してもよいし、重みベクトルｗnの抑圧度合いと予測精度を基にして所望のバランスとなる値を選択してもよい。
【０１１９】
このように、実施例４によれば、予測根拠を説明可能な機械学習において、自明な特徴量と非自明な特徴量に異なるペナルティを与える損失関数を用いることにより、自明な特徴量ｘｋ，ｎの予測への寄与度（重みパラメータｗｋ，ｎ）を抑圧し、その他の非自明な特徴量ｘｈ，ｎを積極的に用いた予測を実現できる。これにより、予測に寄与する学術的な知見等においては、未だ発見されていないような未知の特徴量を抽出することを可能とすることができる。
【実施例５】
【０１２０】
実施例５は、実施例１〜４で用いられる重要度の算出例を示す。なお、実施例１〜４と同一構成には同一符号を付し、その説明を省略する場合がある。
【０１２１】
＜特徴量ベクトルの再配置例＞
ＡＩ（Ａｒｔｉｆｉｃｉａｌ  Ｉｎｔｅｌｌｉｇｅｎｃｅ）は、線形分離不可能問題を解く能力を持つが、ＡＩが、どうしてそのような判断をしたかが不明である。特に、ｄｅｅｐ  ｌｅａｒｎｉｎｇなどの機械学習手法は、予測精度は高いが説明能力が低い。たとえば、ある患者に対して「風邪をひきやすい」という診断結果をＡＩが出力した場合、医師は、ＡＩがなぜそのような結果を得たかを答えることができない。もし、ＡＩがその原因まで判断できれば、医師は、患者に対して適切な治療をおこなうことがきる。
【０１２２】
図１１は、特徴量ベクトルの再配置例を示す説明図である。（Ａ）特徴量空間ＳＰ１には、複数の特徴量ベクトルｘｎ（ｎ＝１，２，…，Ｎ。Ｎは画像の枚数）が存在する。複数の特徴量ベクトルｘｎは、たとえば、非線形の予測モデルＰＭ１により正解ラベルＬａ，Ｌｂに識別される。（Ｂ）特徴量空間ＳＰ２には、複数の特徴量ベクトルｘｎが存在する。複数の特徴量ベクトルｘｎは、たとえば、線形の予測モデルＰＭ２により正解ラベルＬａ，Ｌｂに識別される。
【０１２３】
（Ａ）ｄｅｅｐ  ｌｅａｒｎｉｎｇなどの機械学習手法は、識別結果である予測モデルＰＭ１を説明するため、新たに線形回帰を学習する。具体的には、たとえば、この機械学習手法は、予測モデルＰＭ１を求めた後に局所的に直線近似するという後付け的な処理を実行する。しかしながら、このような後付け的な処理では、直線近似された予測モデルＰＭ１の局所部分が、特徴量ベクトルｘｎを正しく説明できるかが不明である。また、何より、直線近似というロジスティック回帰を実行するため、都合２回の機械学習を実行する必要がある。
【０１２４】
（Ｂ）の予測モデルＰＭ２は線形であるため、その傾きを参照すれば、特徴量ベクトルｘｎが特徴量空間ＳＰ２内のどのパラメータで重みづけされていることがわかり、特徴量ベクトルｘｎを正しく説明することができる。実施例１では、複数の特徴量ベクトルｘｎについて、（Ａ）のように非線形な予測モデルＰＭ１を求めることなく、特徴量空間ＳＰ１の複数の特徴量ベクトルｘｎを、他の特徴量空間ＳＰ２に再配置する。これにより、線形な予測モデルＰＭ２が得られるため、特徴量ベクトルｘｎが特徴量空間ＳＰ２内のどのパラメータで重みづけされていることがわかり、その重要度に応じて特徴量ベクトルｘｎを正しく説明することができる。
【０１２５】
すなわち、ユーザは特徴量ベクトルｘｎのあるサンプルごとに（例えば、患者ごとに）、特徴量ｘｎに内包されるどの因子（特徴）が予測結果に寄与しているかが分かるため、どうしてそのような予測結果になったのかという説明がしやすくなる。したがって、機械学習における説明能力の向上を図ることができる。上記の例でいえば、ある患者に対して「風邪をひきやすい」という診断結果をＡＩがなぜ出力したか（たとえば、痩せているなど）、が分かることになる。また、（Ａ）のように機械学習を２回も実行する必要がないため、機械学習の効率化も図ることができる。したがって、上記のような説明を迅速に提供することができる。
【０１２６】
＜ニューラルネットワークの構造例＞
図１２は、実施例５にかかるニューラルネットワークの構造例を示す説明図である。ニューラルネットワーク１２００は、データユニット群ＤＵと、レポーティングユニット群ＲＵと、ハーモナイジングユニット群ＨＵと、リアロケーションユニットＲＡＵと、ユニファイユニットＵＵと、デシジョンユニットＤＣＵと、インポータンスユニットＩＵと、を有する。
【０１２７】
データユニット群ＤＵは、複数のデータユニットＤＵｌ（ｌは、階層番号であり、１≦ｌ≦Ｌ。Ｌは最下層の階層番号であり、図１２では、Ｌ＝４）を直列に接続した構成である。最上段であるｌ＝１のデータユニットＤＵ１は、ニューラルネットワーク１２００の入力層１２０１であり、ｌ≦２のデータユニットＤＵｌは、ニューラルネットワーク１２００の中間層（隠れ層ともいう）に相当する。データユニットＤＵｌは、前段のデータユニットＤＵ（ｌ−１）からの出力データを入力して、自データユニットＤＵｌの学習パラメータを用いて計算して出力データを出力するパーセプトロンである。
【０１２８】
ただし、データユニットＤＵ１は、学習部４１２による学習時に訓練データを保持する。ここで、訓練データは、たとえば、特徴量ベクトルｘｎの一例である画像ｘｎとその真値となる正解ラベルｔｎとの組み合わせ｛ｘｎ，ｔｎ｝により構成されるサンプルデータである（ｎ＝１，２，…，Ｎ。Ｎは画像の枚数）。画像ｘｎは、２次元のマトリックス構造を持つデータであり、以降、ラスタ走査したｄ（ｄ≧１を満たす整数）次元のベクトルとして取り扱う。説明の容易さのために、「ｘ」と表記した場合は、行列形式の画像ｘｎをラスタ走査した１次元ベクトルとする。
【０１２９】
正解ラベルｔｎは、画像ｘｎの種類数Ｋに対して、ｏｎｅｈｏｔ表現で種類（たとえば、犬や猫などの動物）を示すＫ次元のベクトルである。ｏｎｅｈｏｔ表現では、ベクトルのある要素が画像ｘｎの種類に対応しており、ただ１つの要素だけに１．０が格納され、他の要素は全て０．０である。１．０の要素に対応する種類（たとえば、犬）が正解となる種類である。なお、Ｘ線、ＣＴ、ＭＲＩ、超音波等の医療用画像ｘｎを入力とした場合、ラベルｔｎは、疾病の種類や患者の予後（良いｏｒ悪い）を表す真値である。
【０１３０】
画像ｘｎ∈Ｒｄ（Ｒｄはｄ次元の実数）を、ｄ次元の実数Ｒｄからなる特徴量ベクトルとする。データユニットＤＵ（ｌ＋１）を示す関数ｈｌ＋１Ｄは、下記式（１３）で表現される。
【０１３１】
【数１１】
2020194414.tif 000013
【０１３２】
式（１３）中、添え字ｌ（１≦ｌ≦Ｌを満たす整数。）は、階層番号を示す（以下の式も同様）。Ｌは１以上の整数であり、最深の階層番号を示す。右辺のｆＤｌは活性化関数である。活性化関数は、たとえば、シグモイド関数、双曲線正接関数（ｔａｎｈ関数）、ＲｅＬＵ（Ｒｅｃｔｉｆｉｅｄ  Ｌｉｎｅａｒ  Ｕｎｉｔ）関数など、様々な活性化関数を用いてよい。行列ＷｌＤは、データユニットＤＵｌの学習パラメータである。右辺のベクトルｈｌＤは、データユニットＤＵｌに入力される入力ベクトル、すなわち、前段のデータユニットＤＵｌからの出力ベクトルである。なお、層数ｌ＝１である場合のデータユニットＤＵ１からの出力ベクトルｈ１Ｄは、ｈ１Ｄ＝ｘｎとなる。
【０１３３】
なお、データユニットＤＵ１は、予測部４１４におる予測時にテストデータとして、特徴量ベクトルである画像ｘｎを保持する。
【０１３４】
レポーティングユニットＲＵｌ（２≦ｌ≦Ｌ）は、同一階層のデータユニットＤＵｌからの出力ベクトルｈｌＤを入力し、当該出力ベクトルｈｌＤの次元数を縮約させる。レポーティングユニットＲＵｌを示す関数ｈｌＲは、下記式（１４）で表現される。
【０１３５】
【数１２】
2020194414.tif 000014
【０１３６】
式（１４）中、行列ＷｌＲは、レポーティングユニットＲＵｌの学習パラメータである。 式（１４）により、データユニットＤＵｌからのｄ次元の出力ベクトルｈｌＤは、ｍ次元の出力ベクトルｈｌＲに縮約される。また、σは、シグモイド関数である。
【０１３７】
ハーモナイジングユニットＨＵｌ（２≦ｌ≦Ｌ）は、中間層のデータユニットＤＵｌとリアロケーションユニットＲＡＵとの間に、中間層のデータユニットＤＵｌごとに設けられる。ハーモナイジングユニットＨＵｌは、中間層のデータユニットＤＵｌからの各出力データの次元数を同一のサイズに変換する。したがって、リアロケーションユニットＲＡＵには、ハーモナイジングユニットＨＵｌで同一の次元数に揃えられた出力データが入力される。
【０１３８】
すなわち、ハーモナイジングユニットＨＵｌは、同一階層のデータユニットＤＵｌからの出力ベクトルｈｌＤを入力し、出力ベクトルｈｌＤの次元数を同一の次元数に変換する。ハーモナイジングユニットＨＵｌを示す関数ｈｌＨは、下記式（１５）で表現される。
【０１３９】
【数１３】
2020194414.tif 000015
【０１４０】
式（１５）中、行列ＷｌＨは、ハーモナイジングユニットＨＵｌの学習パラメータである。これにより、データユニットＤＵｌからのｄ次元の出力ベクトルｈｌＤは、ｍ次元の出力ベクトルｈｌＨに変換される。ｍは、次元数を決定するハイパーパラメータである。ｄおよびｍは、レポーティングユニットＲＵｌのｄおよびｍと異なる値でもよい。また、ｆＨは、活性化関数である。
【０１４１】
アテンションユニットＡＵは、各レポーティングユニットＲＵｌからの出力ベクトルｈｌＲを用いて、各データユニットＤＵｌの重みαを計算する。アテンションユニットＡＵを示す関数αは、下記式（１６）で表現される。
【０１４２】
【数１４】
2020194414.tif 000016
【０１４３】
式（１６）中、行列ＷＡは、アテンションユニットＡＵの学習パラメータである。活性化関数の１つであるｓｏｆｔｍａｘ関数では、層数Ｌ（下記式（１７）の例ではＬ＝４）に等しい次元のベクトルｈＲが計算される。下記式（１７）に示すように、式（１６）の右辺のベクトルｈＲは、ｈｌＲを垂直方向にスタックしたベクトルである。
【０１４４】
【数１５】
2020194414.tif 000017
【０１４５】
したがって、行列ＷＡは、Ｌ行Ｍ列（Ｍは、ベクトルｈＲの要素数）の行列となる。アテンションユニットＡＵにｓｏｆｔｍａｘ関数を採用することにより、層数ＬのベクトルｈＲの各要素（全要素の和は１）は、対応するデータユニットＤＵｌの重みをあらわすことになる。
【０１４６】
リアロケーションユニットＲＡＵは、ある特徴量空間の特徴量ベクトル（画像ｘｎ）を他の特徴量空間に再配置する。具体的には、たとえば、図１１に示したように、特徴量空間ＳＰ１上での特徴量ベクトル群により得られる予測モデルは非線形となり得るため、リアロケーションユニットＲＡＵは、特徴量空間ＳＰ２において線形な予測モデルが得られるように、特徴量ベクトル群を特徴量空間ＳＰ２に移し替える。リアロケーションユニットＲＡＵを示す関数ｈｌＴは、下記式（１８）で表現される。
【０１４７】
【数１６】
2020194414.tif 000018
【０１４８】
関数ｆＴは、ベクトル同士のアダマール積や、要素加算などを用いることができる。本実施例では、アダマール積とする（下記式（１９）を参照）。式（１９）では、ハーモナイジングユニットＨＵｌからの出力ベクトルｈｌＨと特徴量ベクトルｘｎとのアダマール積となる。
【０１４９】
【数１７】
2020194414.tif 000019
【０１５０】
ユニファイユニットＵＵは、リアロケーションユニットＲＡＵからの出力ベクトルｈｌＴと、アテンションユニットＡＵからの出力ベクトルαとを統合する。すなわち、ユニファイユニットＵＵは、リアロケーションユニットＲＡＵからの出力ベクトルｈｌＴを、アテンションユニットＡＵからの出力ベクトルαで重み付けする。ユニファイユニットＵＵを示す関数ｈＵは、下記式（２０）で表現される。
【０１５１】
【数１８】
2020194414.tif 000020
【０１５２】
式（２０）中、右辺のα［ｋ］は、式（１６）の出力ベクトルαのｋ次元目の要素（重み）を示す。
【０１５３】
デシジョンユニットＤＣＵは、予測値ｙｎを決定し、出力層１２０３に出力する。具体的には、たとえば、デシジョンユニットＤＣＵは、ユニファイユニットＵＵからの出力ベクトルｈＵに、学習パラメータの１つである重みベクトルｗｏで重み付けして、シグモイド関数σに与えることにより、予測値ｙｎを得る。デシジョンユニットＤＣＵを示す関数ｙｎは、下記式（２１）で表現される。式（２１）中、ｗｏｔのｔは、転置を意味する。
【０１５４】
【数１９】
2020194414.tif 000021
【０１５５】
インポータンスユニットＩＵは、ニューラルネットワークの各層における特徴量の重要度を示す重要度ベクトルｓｌｎを算出し、出力層１２０３に出力する。インポータンスユニットＩＵを示す関数ｓｌｎは、下記式（２２）で表現される。
【０１５６】
【数２０】
2020194414.tif 000022
【０１５７】
式（２２）中、右辺のα［ｌ］は、式（１２）の出力ベクトルαのｌ階層目の要素（重み）を示す。関数ｆＴは、式（１８）と同様、ベクトル同士のアダマール積や、要素加算などを用いることができる。実施例１では、アダマール積とする。式（２２）では、重要度ベクトルｓｌｎは、重みベクトルｗｏとハーモナイジングユニットＨＵｌからの出力ベクトルｈｌＨとのアダマール積となる。重要度ベクトルｓｌｎは、ｎ番目の特徴量ベクトル（画像）ｘｎの階層ｌにおける重要度である。
【０１５８】
＜データ分析装置３００の機能的構成例＞
図１３は、実施例５のかかるデータ分析装置３００の機能的構成例を示すブロック図である。データ分析装置３００は、入力層１２０１と、中間層１２０２と、出力層１２０３と、変換部１３０１と、再配置部１３０２と、予測データ算出部１３０３と、重要度算出部１３０４と、設定部１３０５と、統合部１３０６と、縮約部１３０７と、を有する。これらは、学習部４１２および予測部４１４の内部構成例である。
【０１５９】
変換部１３０１は、式（１５）に示したように、各中間層ＤＵｌ（ｌ≧２）からの出力ベクトルｈｌＤと行列ＷｌＨとに基づいて、出力ベクトルｈｌＤの次元数ｄを縮約させて、変換後の出力ベクトルｈｌＨを出力する。変換部１３０１は、上述したハーモナイジングユニット群ＨＵである。
【０１６０】
再配置部１３０２は、式（１８）、（１９）に示したように、変換部１３０１からの変換後の出力ベクトルｈｌＨと、入力層１２０１に与えられた特徴量空間ＳＰ１の特徴量ベクトルｘｎと、に基づいて、特徴量空間ＳＰ１の特徴量ベクトルｘｎを特徴量空間ＳＰ２に再配置する。再配置部１３０２は、上述したリアロケーションユニットＲＡＵである。
【０１６１】
予測データ算出部１３０３は、式（２１）に示したように、再配置部１３０２による再配置結果ｈＴｌと重みベクトルｗｏとに基づいて、特徴量空間ＳＰ１の特徴量ベクトルｘｎに対する予測ベクトルｙｎを算出する。予測データ算出部１３０３は、上述したデシジョンユニットＤＣＵである。
【０１６２】
重要度算出部１３０４は、式（２２）に示したように、変換後の出力ベクトルｈｌＨと重みベクトルｗｏとに基づいて、中間層１２０２における階層ｌにおける特徴量ベクトルｘｎの重要度ベクトルｓｌｎを算出する。重要度算出部１３０４は、上述したインポータンスユニットＩＵである。
【０１６３】
たとえば、動物を表示する画像ｘｎについて、ある階層ｌａの出力ベクトルｈｌａＤが顔の輪郭が猫にふさわしいか否かを示す特徴量であり、ある階層ｌｂ（≠ｌａ）の出力ベクトルｈｌｂＤが耳の形状が猫にふさわしいか否かを示す特徴量であるとする。この場合、対応する重要度ベクトルｓｌａｎ、ｓｌｂｎを参照することにより、データ分析装置３００が、当該画像ｘｎが顔のどの特徴を考慮してその動物を猫であると判別したかを、ユーザは説明することができる。たとえば、重要度ベクトルｓｌａｎは低いが重要度ベクトルｓｌｂｎが高い場合、データ分析装置３００が、当該画像ｘｎが耳の形状を考慮してその動物を猫であると判別していると、ユーザは説明することができる。なお、算出された重要度ベクトルｓｌｎは、重要度算出部４１５によって抽出される。
【０１６４】
設定部１３０５は、式（１６）、（１７）に示したように、中間層１２０２からの出力ベクトルｈｌＤと行列ＷＡとに基づいて、中間層１２０２の重みαを設定する。設定部１３０５は、上述したアテンションユニットＡＵである。
【０１６５】
統合部１３０６は、式（２０）に示したように、再配置結果ｈＴｌと、設定部１３０５によって設定された重みαと、を統合する。統合部１３０６は、上述したユニファイユニットＵＵである。この場合、予測データ算出部１３０３は、統合部１３０６による統合結果ｈｕと重みベクトルｗｏとに基づいて、予測ベクトルｙｎを算出する。また、重要度算出部１３０４は、設定部１３０５によって設定された重みαと、変換後の出力ベクトルｈｌＨと、重みベクトルｗｏと、に基づいて、重要度ベクトルｓｎｌを算出する。
【０１６６】
縮約部１３０７は、式（１４）に示したように、中間層１２０２からの出力ベクトルｈｌＤと行列ＷｌＲとに基づいて、出力ベクトルｈｌＤの次元数ｄを縮約させて、縮約後の出力ベクトルｈｌＲを出力する。縮約部１３０７は、上述したレポーティングユニット群ＲＵである。この場合、設定部１３０５は、縮約部１３０７からの縮約後の出力ベクトルｈｌＲと行列ＷＡとに基づいて、中間層１２０２の重みαを設定する。
【０１６７】
学習部４１２は、特徴量空間ＳＰ１の特徴量ベクトルｘｎと予測ベクトルｙｎに対する正解ラベルｔｎとを含む訓練データが与えられた場合に、予測ベクトルｙｎと正解ラベルｔｎとを用いて、第１学習パラメータである行列ＷｌＤ、第２学習パラメータである行列ＷｌＨ、第３学習パラメータである重みベクトルｗｏ、第４学習パラメータである行列ＷＡ、および、第５学習パラメータである行列ＷｌＲを、たとえば、正解ラベルｔｎと予測値ｙｎとのクロスエントロピーが最小化するように、最適化する。
【０１６８】
予測部４１４は、最適化された学習パラメータをニューラルネットワーク１２００に設定し、かつ、入力層１２０１にテストデータとして特徴量ベクトルｘ´ｎを与えることにより、最終的に予測データ算出部１３０３に予測ベクトルｙ´ｎを算出させる。
【０１６９】
このように、実施例５では、サンプルデータである特徴量ベクトルｘｎの事前再配置により、ニューラルネットワークを多層化しても各特徴量の重要度を算出可能となり、サンプル（特徴量ベクトルｘｎ）ごとに、説明の容易化を高精度かつ効率的に実現することができる。また、サンプル（特徴量ベクトルｘｎ）の事前再配置により、線形な予測モデルが得られるため、学習時および予測時において、高精度かつ低負荷で予測値を算出することができる。
【０１７０】
また、実施例５のデータ分析装置３００は、変換部１３０１と、再配置部１３０２と、重要度算出部１３０４と、を有する。したがって、特徴量ベクトル（ｘｎ、ｘ´ｎ）の事前再配置により、線形な予測モデルが得られるため、学習時および予測時において、高精度かつ低負荷で予測値を算出することができる。また、特徴量ベクトル（ｘｎ、ｘ´ｎ）にどのような特徴があるかを、重要度算出部１３０４からの階層ｌごとの重要度により把握することができる。これにより、分析対象としてニューラルネットワークに与えられた特徴ベクトル（ｘｎ、ｘ´ｎ）についての説明の容易化を高精度かつ効率的に実現することができる。
【０１７１】
また、データ分析装置３００は、予測データ算出部１３０３を有するため、特徴ベクトル（ｘｎ、ｘ´ｎ）に対し、分析対象としてニューラルネットワークからの予測結果（ｙｎ、ｙ´ｎ）が得られた理由についての説明の容易化を高精度かつ効率的に実現ができる。
【０１７２】
また、データ分析装置３００は、設定部１３０５と統合部１３０６とを有することにより、予測データ算出部１３０３は、再配置結果に基づく予測結果を高精度に算出することができる。
【０１７３】
また、データ分析装置３００は、縮約部１３０７を有することにより、次元縮約によりデータ分析の効率化を図ることができる。
【０１７４】
また、データ分析装置３００は、学習パラメータの学習により、高精度な予測モデルを構築することができる。
【０１７５】
このように特徴量毎に重要度が求められるため、選定部４１１は、重要度に基づいて非自明な特徴量を選定することができる。
【０１７６】
以上説明したように、上述したデータ分析装置３００は、予測根拠を説明可能な機械学習において、非自明な特徴量の予測に対する寄与度を増加させ、自明な特徴量の寄与度を低下させ、かつ予測精度の低下を最小限にとどめることで、予測に寄与するものの学術的な知見等においては、未だ発見されていないような未知の特徴量を抽出することができる。
【０１７７】
なお、本発明は前述した実施例に限定されるものではなく、添付した特許請求の範囲の趣旨内における様々な変形例及び同等の構成が含まれる。例えば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加、削除、または置換をしてもよい。
【０１７８】
また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサがそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウェアで実現してもよい。
【０１７９】
各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記憶装置、又は、ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）カード、ＳＤカード、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）の記録媒体に格納することができる。
【０１８０】
また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。
【符号の説明】
【０１８１】
３００  データ分析装置
４０１  データ格納部
４０２  モデル格納部
４０３  結果格納部
４１１  選定部
４１２  学習部
４１３  操作部
４１４  予測部
４１５  重要度算出部
４１６  出力部
【図１】
2020194414.tif 000023
【図２】
2020194414.tif 000024
【図３】
2020194414.tif 000025
【図４】
2020194414.tif 000026
【図５】
2020194414.tif 000027
【図６】
2020194414.tif 000028
【図７】
2020194414.tif 000029
【図８】
2020194414.tif 000030
【図９】
2020194414.tif 000031
【図１０】
2020194414.tif 000032
【図１１】
2020194414.tif 000033
【図１２】
2020194414.tif 000034
【図１３】
2020194414.tif 000035