以下に添付図面を参照して、本発明にかかるデータ解析プログラム、データ解析方法、およびデータ解析装置の実施の形態を詳細に説明する。本実施の形態において、正例データとは、学習したい概念に含まれる事例データ(実測値)であり、負例データとは、学習したい概念に含まれない事例データ(実測値)である。たとえば、同一設計データから得られた回路ごとの故障解析では、解析対象箇所について正常と判断された結果が正例データとなり、故障と判断された結果が負例データとなる。正例データおよび負例データともに、1以上の説明変数と目的変数を有する。上記の故障解析の例では、たとえば、解析対象箇所の配線幅が説明変数となり、正常/故障が目的変数となる。
<データ解析例A>
データ解析例Aでは、データ解析結果として正答率を求める例である。正答率とは、正例データの実測値と当該正例データを統計学的な予測式に与えた結果得られる予測値との一致度と、負例データの実測値と当該負例データを統計学的な予測式に与えた結果得られる予測値との一致度と、を示す割合である。すなわち、正例を正例と予測し、負例を負例と予測する確率である。
図1は、データ解析例Aを示す説明図である。図1において、データ解析例Aでは、M個のデータであるデータ群を用いる。データ群は、Ma個の正例データである正例データ群と、Mb個の負例データである負例データ群と、で構成される。
(1)まず、正例データ群からK個の正例データをランダムサンプリングする。同様に、負例データ群からK個の負例データをランダムサンプリングする。(2)つぎに、データ解析例Aでは、K個の正例データとK個の負例データとを用いて評価処理を実行する。評価処理は、ある予測アルゴリズムにしたがって実行される。予測アルゴリズムとは、統計学的な予測式による予測値の算出プログラムである。予測アルゴリズムとしては、たとえば、回帰分析、ステップワイズ回帰分析、SVM(Support Vector Machine)回帰分析、回帰木分析、ランダムフォレスト回帰分析などの周知の近似アルゴリズムが適用可能である。評価処理の詳細は図2で説明する。
(3)評価処理を実行することで、重み付き部分正答率が得られる。重み付き部分正答率とは、正例データ群および負例データ群からの1回のランダムサンプリングで評価処理されたときの正答率であり、重み変数w(0≦w≦1)により変動する正答率である。
上記(1)〜(3)は、N回実行される。Nは、ユーザにより設定された回数である。上記(1)〜(3)をN回実行することで、重み付き部分正答率がN個算出される。(4)データ解析例Aでは、N個の重み付き部分正答率を平均化することで、重み付き全体正答率を算出する。図1中、点線で囲まれた内容は、予測アルゴリズムごとに実行される。したがって、重み付き全体正答率も、予測アルゴリズムごとに算出される。
(5)重み付き全体正答率は予測アルゴリズムごとに算出されるため、データ解析例Aでは、予測アルゴリズムごとに、重み付き全体正答率をグラフ化する。これにより、利用者は、どの予測アルゴリズムの予測精度がよいか直感的に把握することができる。
図2は、図1のデータ解析例Aで示した評価処理の詳細を示す説明図である。図2では、図1の(1)〜(3)を1回実行した例を示している。図2において、正例データ群からK個サンプリングされた正例データ群を根拠用正例データ群と称し、残余を評価用正例データ群と称す。また、負例データ群からK個サンプリングされた負例データ群を根拠用負例データ群と称し、残余を評価用負例データ群と称す。
(21)評価処理では、根拠用正例データ群と根拠用負例データ群とを組み合わせた根拠用データ群を用いて予測式を生成する。予測式とは、予測アルゴリズムを表現する関数であり、予測アルゴリズムごとに生成される。予測式としては、たとえば、回帰式やSVM(サポートベクターマシン)、決定木など既存の予測式が適用可能である。単回帰式y=αx+βを例にとると、根拠用データ群の各々の説明変数の値と目的変数の値を、単回帰式の説明変数xおよび目的変数yに与え、最小二乗法により単回帰式の係数α,βの値をそれぞれ求める。
(22)つぎに、評価用データ群の各々の説明変数の値(実測値)を、(21)で生成された予測式の説明変数に与えることで、評価用データ群の各々について目的変数の予測値を算出する。ここで、評価用データ群の目的変数の実測値は、上記の故障解析の例では、「正常」の場合が“0”、「故障」の場合が“1”とする。目的変数の予測値は、0から1の範囲内となるため、正規化することとなる。たとえば、目的変数の予測値の小数点第1位の数値で四捨五入することで、目的変数の予測値が“0”または“1”となる。
ここで、評価用正例データ群の各々について説明変数の実測値を予測式に与えることで得られた目的変数の実測値群を、評価用正例データの予測値群と称す。同様に、評価用負例データ群の各々について説明変数の実測値を予測式に与えることで得られた目的変数の実測値群を、評価用負例データの予測値群と称す。
(23)このあと、評価用データの実測値群と評価用データの予測値群とで突き合わせをおこなう。図2の表は、評価用データについての実測値と予測値との一致・不一致を示している。ここで、ある正例の評価用データについて正例の実測値が予測値と一致する場合は、当該正例の評価用データは、正例・正例件数にカウントされる。すなわち、正例・正例件数とは、正例の実測値を正しく予測できた評価用データの件数である。たとえば、上述した故障解析では、正常であると実測されたデータを正常と予測した件数となる。
同様に、ある負例の評価用データについて負例の実測値が予測値と一致する場合は、当該負例の評価用データは、負例・負例件数にカウントされる。すなわち、負例・負例件数とは、負例の実測値を正しく予測できた評価用データの件数である。たとえば、上述した故障解析では、故障であると実測されたデータを故障と予測した件数となる。
これに対し、ある正例の評価用データについて正例の実測値が予測値と不一致である場合は、当該正例の評価用データは、正例・負例件数にカウントされる。すなわち、正例・負例件数とは、正例の実測値を誤って予測した評価用データの件数である。たとえば、上述した故障解析では、正常であると実測されたデータを故障と予測した件数となる。
同様に、ある負例の評価用データについて負例の実測値が予測値と不一致である場合は、当該負例の評価用データは、負例・正例件数にカウントされる。すなわち、負例・正例件数とは、負例の実測値を誤って予測した評価用データの件数である。たとえば、上述した故障解析では、故障であると実測されたデータを正常と予測した件数となる。評価処理では、正例・正例件数、負例・負例件数、正例・負例件数、負例・正例件数をそれぞれカウントする。
(24)そして、評価処理では、カウントされた各件数に基づいて、下記式(1)に示す重み付き部分正答率を算出する。
PCAw=w×Npp/(Npp+Npn)+(1−w)×Nnn/(Nnn+Nnp)・・・(1)
ただし、PCAwは重み付き部分正答率、wは重み変数、Nppは正例・正例件数、Npnは正例・負例件数、Nnnは負例・負例件数、Nnpは負例・正例件数である。重み変数wは、0≦w≦1である。すなわち、図2においてハッチングを施してある正例・正例件数が右辺第1項の分子となり、図2においてハッチングを施してある負例・負例件数が右辺第2項の分子となる。
評価処理では、図1の(3)に示したように、重み付き部分正答率PCAwを、図1の(1)のランダムサンプリングの都度算出する。算出されたN個の重み付き部分正答率PCAwは平均化されることで、重み付き全体正答率となる。
このように、図1および図2に示した処理をおこなうことで、予測アルゴリズムごとに重み付き全体正答率を得ることができ、予測アルゴリズムごとの重み付き全体正答率の違いを、直感的にわかりやすく表示することができる。なお、予測アルゴリズムごとの重み付き全体正答率の表示例については後述する。
また、重み変数wは利用者が自由に設定することができる。たとえば、正例データ群の正例データ数Maと負例データ群の負例データ数Mbにおいて、Ma>Mbの場合は、負例・負例件数を強調するため重み変数wを低く設定すればよい。Ma<Mbの場合は、正例・正例件数を強調するため重み変数wを高く設定すればよい。
<データ解析例B>
つぎに、データ解析例Bについて説明する。データ解析例Bは、データ解析結果として誤答率を求める例である。誤答率とは、正例データの実測値と当該正例データを統計学的な予測式に与えた結果得られる予測値との不一致度と、負例データの実測値と当該負例データを統計学的な予測式に与えた結果得られる予測値との不一致度と、を示す割合である。すなわち、正例を負例と予測し、負例を正例と予測する確率である。
図3は、データ解析例Bを示す説明図である。図3では、図1と同一処理内容については同一番号を付して説明を省略し、相違点について説明する。具体的には、データ解析例Aでは重み付き部分正答率と重み付き全体正答率を求めるのに対し、データ解析例Bでは重み付き部分誤答率と重み付き全体誤答率を求める点が相違する。
図4は、図3のデータ解析例Bで示した評価処理の詳細を示す説明図である。図4でも、図2と同一処理内容については同一番号を付して説明を省略し、相違点について説明する。図4において、評価処理では、カウントされた各件数に基づいて、下記式(2)に示す重み付き部分誤答率を算出する。
PWAw=w×Npn/(Npp+Npn)+(1−w)×Nnp/(Nnn+Nnp)・・・(2)
ただし、PWAwは重み付き部分誤答率である。図4では、(23)突き合わせにおいて、図4においてハッチングを施してある正例・負例件数が右辺第1項の分子となり、図4においてハッチングを施してある負例・正例件数が右辺第2項の分子となる。評価処理では、図3の(3)に示したように、重み付き部分誤答率PWAwを、図3の(1)のランダムサンプリングの都度算出する。算出されたN個の重み付き部分誤答率PWAwは平均化されることで、重み付き全体誤答率となる。
このように、図3および図4に示した処理をおこなうことで、予測アルゴリズムごとに重み付き全体誤答率を得ることができ、予測アルゴリズムごとの重み付き全体誤答率の違いを、直感的にわかりやすく表示することができる。なお、予測アルゴリズムごとの重み付き全体誤答率の表示例については後述する。
また、重み変数wは利用者が自由に設定することができる。たとえば、正例データ群の正例データ数Maと負例データ群の負例データ数Mbにおいて、Ma>Mbの場合は、負例・負例件数を強調するため重み変数wを低く設定すればよい。Ma<Mbの場合は、正例・正例件数を強調するため重み変数wを高く設定すればよい。
<データ解析装置のハードウェア構成例>
図5は、実施の形態にかかるデータ解析装置のハードウェア構成例を示すブロック図である。図5において、データ解析装置は、CPU(Central Processing Unit)501と、ROM(Read Only Memory)502と、RAM(Random Access Memory)503と、磁気ディスクドライブ504と、磁気ディスク505と、光ディスクドライブ506と、光ディスク507と、ディスプレイ508と、I/F(Interface)509と、キーボード510と、マウス511と、スキャナ512と、プリンタ513と、を備えている。また、各構成部はバス500によってそれぞれ接続されている。
ここで、CPU501は、データ解析装置の全体の制御を司る。ROM502は、ブートプログラムなどのプログラムを記憶している。RAM503は、CPU501のワークエリアとして使用される。磁気ディスクドライブ504は、CPU501の制御にしたがって磁気ディスク505に対するデータのリード/ライトを制御する。磁気ディスク505は、磁気ディスクドライブ504の制御で書き込まれたデータを記憶する。
光ディスクドライブ506は、CPU501の制御にしたがって光ディスク507に対するデータのリード/ライトを制御する。光ディスク507は、光ディスクドライブ506の制御で書き込まれたデータを記憶したり、光ディスク507に記憶されたデータをコンピュータに読み取らせたりする。
ディスプレイ508は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ508は、たとえば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
インターフェース(以下、「I/F」と略する。)509は、通信回線を通じてLAN(Local Area Network)、WAN(Wide Area Network)、インターネットなどのネットワーク514に接続され、このネットワーク514を介して他の装置に接続される。そして、I/F509は、ネットワーク514と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F509には、たとえばモデムやLANアダプタなどを採用することができる。
キーボード510は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス511は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
スキャナ512は、画像を光学的に読み取り、データ解析装置内に画像データを取り込む。なお、スキャナ512は、OCR(Optical Character Reader)機能を持たせてもよい。また、プリンタ513は、画像データや文書データを印刷する。プリンタ513には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。
<データ群のサンプル例>
つぎに、図1や図3に示したデータ群(正例データ群および負例データ群)のサンプル例について説明する。本実施の形態では、回路の故障解析、レコメンデーションに関するデータ解析、融資の与信に関するデータ解析を例に挙げて説明する。以下に示す図6〜図8のデータ群のサンプル例は、具体的には、たとえば、図5に示したROM502、RAM503、磁気ディスク505などの記憶装置に記憶されている。
図6は、回路の故障解析に関するデータ群を示す説明図である。図6では、データごとに、サンプルID、間隔A〜D、故障フラグを有する。サンプルIDとは、データを一意に特定する識別子であり、この場合は、同一設計データにより作製されたM個の回路の各々を一意に特定される回路である。間隔A〜Dとは、回路内の特定の箇所での配線間隔である。図6では、例として間隔A〜Dの4箇所とする。この間隔A〜Dが説明変数群となる。図6では、4個の説明変数となるが、1以上であればよい。図6では、間隔A〜Dの単位は[μm]とする。
故障フラグとは、データごとに正常または故障を示すフラグである。“0”が「正常」(正例)、“1”が「故障」(不例)とする。故障フラグは、説明変数群に対する目的変数となる。間隔Aが正常となる範囲は、たとえば、8≦A≦12とする。間隔Bが正常となる範囲は、たとえば、18≦B≦22とする。間隔Cが正常となる範囲は、たとえば、28≦C≦32とする。間隔Dが正常となる範囲は、たとえば、38≦D≦42とする。図6では例として、データごとに、間隔A〜Dのいずれか1つでも正常の範囲外となると、故障とする。なお、以降では、一例として、間隔Aを説明変数E1、間隔Bを説明変数E2、間隔Cを説明変数E3、間隔Dを説明変数E4とする。
図7は、レコメンデーションに関するデータ群を示す説明図である。レコメンデーションに関するデータ群とは、ある店舗において顧客に対して推薦した商品を、顧客が購入したか否かを示すデータである。図7では、データごとに、サンプルID、年齢、性別、購入回数、平均購入金額、推薦商品の購入有無を有する。サンプルIDとは、データを一意に特定する識別子であり、この場合は、M人の顧客の各々を一意に特定する識別子である。年齢とは、顧客の年齢である。性別とは顧客の性別であり、ここでは、“0”を女性、“1”を男性とする。
購入回数とは、顧客がこれまで店舗で商品を購入した回数である。平均購入金額とは、顧客が1回の購入機会での購入金額であり、これまでの総購入金額を購入回数で割った金額である。年齢〜平均購入金額が説明変数群となる。説明変数群は1以上であればよい。
推薦商品の購入有無とは、店舗での推薦商品を顧客が購入したか否かを示すフラグである。“1”が「購入」(正例)、“0”が「購入せず」(不例)を示す。1度でも推薦商品を購入すれば“1”となる。推薦商品の購入有無は、説明変数群に対する目的変数となる。なお、以降では、一例として、年齢を説明変数E1、性別を説明変数E2、購入回数を説明変数E3、平均購入金額を説明変数E4とする。
図8は、融資の与信に関するデータ群を示す説明図である。融資の与信に関するデータ群とは、融資をした場合の返済の可否を示すデータである。図8では、データごとに、サンプルID、年齢、性別、年収、世帯年収、返済の可否を有する。サンプルIDとは、データを一意に特定する識別子であり、この場合は、M人の顧客の各々を一意に特定する識別子である。年齢とは、顧客の年齢である。性別とは顧客の性別であり、ここでは、“0”を女性、“1”を男性とする。
年収とは、顧客の年間の収入である。世帯年収とは、顧客が属する世帯の年間の収入である。年収および世帯年収は、融資の申込時の収入とする。年齢〜世帯年収は、説明変数群となる。説明変数群は1以上であればよい。
返済の可否とは、融資を返済できたか否かを示すフラグである。 “1”が「返済できた」こと(正例)を示し、“0”が「返済できなかった」こと(不例)を示す。返済の可否は、説明変数群に対する目的変数となる。なお、以降では、一例として、年齢を説明変数E1、性別を説明変数E2、年収を説明変数E3、世帯年収を説明変数E4とする。
(実施例1A)
まず、実施例1Aについて図9〜図11を用いて説明する。実施例1Aは、予測アルゴリズムごとに重み付き全体正答率を算出してグラフ表示する例である。これにより、どの予測アルゴリズムの予測精度(正答率)がよいかを利用者にわかりやすく提示することができる。
図9は、実施例1Aにおける予測アルゴリズムごとの重み付き全体正答率を示すグラフである。図9において、横軸は重み変数w、縦軸は全体正答率を示す。グラフは図5に示したディスプレイに表示される。図9では、4種類の予測アルゴリズム(予測式)P1〜P4を用いている。
図9では、重み変数wがどのような値をとっても、予測アルゴリズムP1〜P4の中で予測アルゴリズムP1の正答率が最も高い。したがって、予測アルゴリズムP1を採用すると最も予測精度がよくなる。また、予測アルゴリズムP2,P3については、重み変数wが0≦w<wxでは予測アルゴリズムP3のほうが全体正答率がよく、wx<w≦1では予測アルゴリズムP2のほうが全体正答率がよい。
したがって、たとえば、予測アルゴリズムP1について重み付き全体正答率を求めていないときは、利用者は、負例・負例件数よりも正例・正例件数を重視する場合は、重み変数wの値が大きいときに正答率がよくなる予測アルゴリズムP2を利用すればよい。一方、正例・正例件数よりも負例・負例件数を重視する場合は、重み変数wの値が小さいときに正答率(予測精度)がよくなる予測アルゴリズムP3を採用すればよい。
なお、予測アルゴリズムP4は、予測アルゴリズムP1〜P4の中で最も正答率が低い予測アルゴリズムであるため、利用者は予測アルゴリズムP4を採用しない方がよいことがわかる。
図10は、実施例1Aにかかるデータ解析処理手順を示すフローチャートである。図10において、まず、データ解析装置は、未選択の予測アルゴリズムがあるか否かを判断する(ステップS1001)。未選択の予測アルゴリズムがある場合(ステップS1001:Yes)、データ解析装置は、未選択の予測アルゴリズムを選択し(ステップS1002)、評価処理を実行する(ステップS1003)。評価処理(ステップS1003)の詳細については図11で説明する。
評価処理(ステップS1003)のあと、ステップS1001に戻り、未選択の予測アルゴリズムがない場合(ステップS1001:No)、データ解析装置は、図9に示したように、予測アルゴリズムごとに得られた重み付き全体正答率のグラフ表示処理を実行する(ステップS1004)。これにより、実施例1Aでのデータ解析処理を終了する。
図11は、実施例1Aにかかる、図10に示した評価処理(ステップS1003)の詳細な処理手順を示すフローチャートである。図11において、データ解析装置は、正例データ群および負例データ群のランダムサンプリング回数iをi=1とする(ステップS1101)。なお、上限はNとする。すなわち、N回のランダムサンプリングをおこなうこととなる。
つぎに、データ解析装置は、i>Nであるか否かを判断する(ステップS1102)。i>Nでない場合(ステップS1102:No)、図1および図2の(1)に示したように、正例データ群からK個の正例データをランダムサンプリングし、負例データ群からK個の負例データをランダムサンプリングする(ステップS1103)。
そして、データ解析装置は、図2の(21)に示したように、ランダムサンプリングされた根拠用データ群を用いて予測アルゴリズムに基づく予測式を生成する(ステップS1104)。このあと、データ解析装置は、図2の(22)に示したように、生成された予測式に評価用データ(実測値)を与えることにより、評価用データごとに予測値を算出する(ステップS1105)。そして、データ解析装置は、算出された各予測値の正規化をおこなう(ステップS1106)。
このあと、データ解析装置は、図2の(23)に示したように、正例・正例件数、正例・負例件数、負例・正例件数、および負例・負例件数を特定する(ステップS1107)。そして、データ解析装置は、図2の(24)に示したように、選択中の予測アルゴリズムでの重み付き部分正答率を算出する(ステップS1108)。このあと、iをインクリメントし(ステップS1109)、ステップS1102に移行する。データ解析装置は、ステップS1103〜S1109をi>Nとなるまで繰り返し実行する。これにより、N個の重み付き部分正答率が算出される。
そして、i>Nとなった場合(ステップS1102:Yes)、データ解析装置は、N個の重み付き部分正答率を平均化して重み付き全体正答率を算出する(ステップS1110)。これにより、選択中の予測アルゴリズムについて重み付き全体正答率が算出される。この評価処理(ステップS1003)を予測アルゴリズムごとに実行することで、予測アルゴリズムごとの重み付き全体正答率が算出される。したがって、図9に示したようなグラフ表示をおこなうことができる。
このように、実施例1Aによれば、利用者の正例データについての関心度の高さに応じて、利用者が重み変数wを設定することができる。したがって、実施例1Aでは、利用者が設定した重み変数wの値での予測アルゴリズムの予測精度(正答率)を、利用者にわかりやすく提示することができる。
たとえば、回路の故障解析に適用する場合、『どの予測アルゴリズムを採用すれば、正常らしい回路を正常であると予測してくれるか、また、どの予測アルゴリズムを採用すれば、故障らしい回路を故障であると予測してくれるか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『正常らしい回路を正常と予測する』と『故障らしい回路を故障と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(故障)データ数Mbよりも正例(正常)データ数Maが多い場合、『故障らしい回路を故障と予測する』ことを重視するほうがよい。この場合は、利用者は重み変数wを低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムごとの全体正答率を比較すればよい。
これに対し、正例(正常)データ数Maよりも負例(故障)データ数Mbが多い場合、
『正常らしい回路を正常と予測する』ことを重視するほうがよい。この場合は、利用者は重み変数wを高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムごとの全体正答率を比較すればよい。
また、推薦商品のレコメンデーションに関するデータ解析に適用する場合、『どの予測アルゴリズムを採用すれば、推薦商品を購入しそうな顧客を「購入する」と予測してくれるか、また、どの予測アルゴリズムを採用すれば、推薦商品を購入しそうにない顧客を「購入しない」と予測してくれるか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。また、『推薦商品を購入しそうな顧客を「購入する」と予測する』と『推薦商品を購入しそうにない顧客を「購入しない」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。
したがって、たとえば、負例(購入しなかった)データ数Mbよりも正例(購入した)データ数Maが多い場合、『推薦商品を購入しそうにない顧客を「購入しない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムごとの全体正答率を比較すればよい。
これに対し、正例(購入した)データ数Maよりも負例(購入しなかった)データ数Mbが多い場合、『推薦商品を購入しそうな顧客を「購入する」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムごとの全体正答率を比較すればよい。
また、融資の与信に関するデータ解析に適用する場合、『どの予測アルゴリズムを採用すれば、返済できそうな顧客を「返済できる」と予測してくれるか、また、どの予測アルゴリズムを採用すれば、返済できそうにない顧客を「返済できない」と予測してくれるか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。また、『返済できそうな顧客を「返済できる」と予測する』と『返済できそうにない顧客を「返済できない」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。
したがって、たとえば、負例(返済できなかった)データ数Mbよりも正例(返済できた)データ数Maが多い場合、『返済できそうにない顧客を「返済できない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムごとの全体正答率を比較すればよい。
これに対し、正例(返済できた)データ数Maよりも負例(返済できなかった)データ数Mbが多い場合、『返済できそうな顧客を「返済できる」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムごとの全体正答率を比較すればよい。
このように、実施例1Aによれば、利用者の関心の程度に応じた全体正答率で予測アルゴリズムを比較することで、利用者にとって予測精度のよい予測アルゴリズムをわかりやすく提示することができる。
(実施例1B)
まず、実施例1Bについて図12および図13を用いて説明する。実施例1Bは、予測アルゴリズムごとに重み付き全体誤答率を算出してグラフ表示する例である。これにより、どの予測アルゴリズムの予測精度(誤答率)がよいかを利用者にわかりやすく提示することができる。
図12は、実施例1Bにおける予測アルゴリズムごとの重み付き全体誤答率を示すグラフである。図12において、横軸は重み変数w、縦軸は全体誤答率を示す。グラフは図5に示したディスプレイ508に表示される。図12では、4種類の予測アルゴリズム(予測式)P1〜P4を用いている。
図12では、重み変数wがどのような値をとっても、予測アルゴリズムP1〜P4の中で予測アルゴリズムP4の誤答率が最も低い。すなわち、最も予測精度がよい。また、予測アルゴリズムP2,P3については、重み変数wが0≦w<wxでは予測アルゴリズムP2のほうが全体誤答率がよく、wx<w≦1では予測アルゴリズムP3のほうが全体誤答率がよい。
したがって、たとえば、予測アルゴリズムP4について重み付き全体誤答率を求めていないときは、負例・正例件数よりも正例・負例件数を重視する場合は、重み変数wの値が大きいときに誤答率がよくなる予測アルゴリズムP3を利用すればよい。正例・負例件数よりも負例・正例件数を重視する場合は、重み変数wの値が小さいときに誤答率がよくなる予測アルゴリズムP2を利用すればよい。
なお、予測アルゴリズムP1は、予測アルゴリズムP1〜P4の中で最も誤答率が高い予測アルゴリズムであるため、利用者は予測アルゴリズムを利用しない方がよいことがわかる。
つぎに、実施例1Bにかかるデータ解析処理手順について説明する。なお、図10に示した処理手順については実施例1Aと同一であるため省略する。実施例1Bでは、実施例1Aの評価処理(ステップS1003)の処理内容が異なるため、評価処理(S1003)のかわりに、評価処理(ステップS1303)を実行する。
図13は、実施例1Bにかかる、図10に示した評価処理(ステップS1003)の詳細な処理手順を示すフローチャートである。図13において、データ解析装置は、正例データ群および負例データ群のランダムサンプリング回数iをi=1とする(ステップS1301)。なお、上限はNとする。すなわち、N回のランダムサンプリングをおこなうこととなる。
つぎに、データ解析装置は、i>Nであるか否かを判断する(ステップS1302)。i>Nでない場合(ステップS1302:No)、図3および図4の(1)に示したように、正例データ群からK個の正例データをランダムサンプリングし、負例データ群からK個の負例データをランダムサンプリングする(ステップS1303)。
そして、データ解析装置は、図4の(21)に示したように、ランダムサンプリングされた根拠用データ群を用いて予測アルゴリズムに基づく予測式を生成する(ステップS1304)。このあと、データ解析装置は、図4の(22)に示したように、生成された予測式に評価用データ(実測値)を与えることにより、評価用データごとに予測値を算出する(ステップS1305)。そして、データ解析装置は、算出された各予測値の正規化をおこなう(ステップS1306)。
このあと、データ解析装置は、図4の(23)に示したように、正例・正例件数、正例・負例件数、負例・正例件数、および負例・負例件数を特定する(ステップS1307)。そして、データ解析装置は、図4の(24)に示したように、選択中の予測アルゴリズムでの重み付き部分誤答率を算出する(ステップS1308)。このあと、iをインクリメントし(ステップS1309)、ステップS1302に移行する。データ解析装置は、ステップS1303〜S1309をi>Nとなるまで繰り返し実行する。これにより、N個の重み付き部分誤答率が算出される。
そして、i>Nとなった場合(ステップS1302:Yes)、データ解析装置は、N個の重み付き部分誤答率を平均化して重み付き全体誤答率を算出する(ステップS1310)。これにより、選択中の予測アルゴリズムについて重み付き全体誤答率が算出される。この評価処理(ステップS1003)を予測アルゴリズムごとに実行することで、予測アルゴリズムごとの重み付き全体誤答率が算出される。したがって、図12に示したようなグラフ表示をおこなうことができる。
このように、実施例1Bによれば、利用者の負例データについての関心度の高さに応じて、利用者が重み変数wを設定することができる。したがって、実施例1Bでは、利用者が設定した重み変数wの値での予測アルゴリズムの予測精度(誤答率)を、利用者にわかりやすく提示することができる。
たとえば、回路の故障解析に適用する場合、『どの予測アルゴリズムを採用すれば、正常らしい回路を故障であると予測してしまうか、また、どの予測アルゴリズムを採用すれば、故障らしい回路を正常であると予測してしまうか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『正常らしい回路を故障と予測する』と『故障らしい回路を正常と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(故障)データ数Mbよりも正例(正常)データ数Maが多い場合、『故障らしい回路を正常と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムごとの全体誤答率を比較すればよい。
これに対し、正例(正常)データ数Maよりも負例(故障)データ数Mbが多い場合、『正常らしい回路を故障と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムごとの全体誤答率を比較すればよい。
また、推薦商品のレコメンデーションに関するデータ解析に適用する場合、『どの予測アルゴリズムを採用すれば、推薦商品を購入しそうな顧客を「購入しない」と予測してしまうか、また、どの予測アルゴリズムを採用すれば、推薦商品を購入しそうにない顧客を「購入する」と予測してしまうか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『推薦商品を購入しそうな顧客を「購入しない」と予測する』と『推薦商品を購入しそうにない顧客を「購入する」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(購入しなかった)データ数Mbよりも正例(購入した)データ数Maが多い場合、『推薦商品を購入しそうにない顧客を「購入する」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムごとの全体誤答率を比較すればよい。
これに対し、正例(購入した)データ数Maよりも負例(購入しなかった)データ数Mbが多い場合、『推薦商品を購入しそうな顧客を「購入しない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムごとの全体誤答率を比較すればよい。
また、融資の与信に関するデータ解析に適用する場合、『どの予測アルゴリズムを採用すれば、返済できそうな顧客を「返済できない」と予測してしまうか、また、どの予測アルゴリズムを採用すれば、返済できそうにない顧客を「返済できる」と予測してしまうか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『返済できそうな顧客を「返済できない」と予測する』と『返済できそうにない顧客を「返済できる」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(返済できなかった)データ数Mbよりも正例(返済できた)データ数Maが多い場合、『返済できそうにない顧客を「返済できる」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムごとの全体誤答率を比較すればよい。
これに対し、正例(返済できた)データ数Maよりも負例(返済できなかった)データ数Mbが多い場合、『返済できそうな顧客を「返済できない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムごとの全体誤答率を比較すればよい。
このように、実施例1Bによれば、利用者の関心の程度に応じた全体誤答率で予測アルゴリズムを比較することで、利用者にとって予測精度のよい予測アルゴリズムをわかりやすく提示することができる。
(実施例2A)
実施例2Aは、ある1つの予測アルゴリズムを適用する場合に、説明変数群の各々について重み付き全体正答率を求めてグラフ表示する例である。これにより、どの説明変数が目的変数に関係しているかを利用者にわかりやすく提示することができる。
図14は、実施例2Aにおける説明変数ごとの重み付き全体正答率を示すグラフである。図14において、横軸は重み変数w、縦軸は全体正答率を示す。グラフは図5に示したディスプレイ508に表示される。図14では、4種類の説明変数E1〜E4を用いている。
図14では、重み変数wがどのような値をとっても、説明変数E1〜E4の中で説明変数E1の正答率が最も高い。したがって、説明変数E1を採用すると最も予測精度がよくなる。また、説明変数E2,E3については、重み変数wが0≦w<wxでは説明変数E3のほうが全体正答率がよく、wx<w≦1では説明変数E2のほうが全体正答率がよい。
したがって、たとえば、説明変数E1について重み付き全体正答率を求めていないときは、利用者は、負例・負例件数よりも正例・正例件数を重視する場合は、重み変数wの値が大きいときに正答率がよくなる説明変数E2を利用すればよい。一方、正例・正例件数よりも負例・負例件数を重視する場合は、重み変数wの値が小さいときに正答率(予測精度)がよくなる説明変数E3を採用すればよい。
なお、説明変数E4は、説明変数E1〜E4の中で最も正答率が低い説明変数であるため、利用者は説明変数E4が最も重要でない説明変数であることが分かる。
図15は、実施例2Aにかかるデータ解析処理手順を示すフローチャートである。図15において、まず、データ解析装置は、未選択の説明変数があるか否かを判断する(ステップS1501)。未選択の説明変数がある場合(ステップS1501:Yes)、データ解析装置は、未選択の説明変数を選択し(ステップS1502)、評価処理を実行する(ステップS1503)。評価処理(ステップS1503)の詳細については図11で説明した評価処理(ステップS1003)と同一処理内容であるため説明を省略する。評価処理(ステップS1503)は、選択説明変数について実行される。
評価処理(ステップS1503)のあと、ステップS1501に戻り、未選択の説明変数がない場合(ステップS1501:No)、データ解析装置は、図14に示したように、説明変数ごとに得られた重み付き全体正答率のグラフ表示処理を実行する(ステップS1504)。これにより、実施例2Aでのデータ解析処理を終了する。
このように、実施例2Aによれば、利用者の正例データについての関心度の高さに応じて、利用者が重み変数wを設定することができる。したがって、実施例2Aでは、利用者が設定した重み変数wの値での説明変数ごとの予測アルゴリズムの予測精度(正答率)を、利用者にわかりやすく提示することができる。
たとえば、回路の故障解析に適用する場合、『どの説明変数を採用すれば、正常らしい回路を正常であると予測アルゴリズムが予測してくれるか、また、どの説明変数を採用すれば、故障らしい回路を故障であると予測アルゴリズムが予測してくれるか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『正常らしい回路を正常と予測する』と『故障らしい回路を故障と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(故障)データ数Mbよりも正例(正常)データ数Maが多い場合、『故障らしい回路を故障と予測する』ことを重視するほうがよい。この場合は、利用者は重み変数wを低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体正答率を説明変数別に比較すればよい。
これに対し、正例(正常)データ数Maよりも負例(故障)データ数Mbが多い場合、
『正常らしい回路を正常と予測する』ことを重視するほうがよい。この場合は、利用者は重み変数wを高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体正答率を説明変数別に比較すればよい。
また、推薦商品のレコメンデーションに関するデータ解析に適用する場合、『どの説明変数を採用すれば、推薦商品を購入しそうな顧客を「購入する」と予測アルゴリズムが予測してくれるか、また、どの説明変数を採用すれば、推薦商品を購入しそうにない顧客を「購入しない」と予測アルゴリズムが予測してくれるか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『推薦商品を購入しそうな顧客を「購入する」と予測する』と『推薦商品を購入しそうにない顧客を「購入しない」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(購入しなかった)データ数Mbよりも正例(購入した)データ数Maが多い場合、『推薦商品を購入しそうにない顧客を「購入しない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体正答率を説明変数別に比較すればよい。
これに対し、正例(購入した)データ数Maよりも負例(購入しなかった)データ数Mbが多い場合、『推薦商品を購入しそうな顧客を「購入する」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体正答率を説明変数別に比較すればよい。
また、融資の与信に関するデータ解析に適用する場合、『どの説明変数を採用すれば、返済できそうな顧客を「返済できる」と予測アルゴリズムが予測してくれるか、また、どの説明変数を採用すれば、返済できそうにない顧客を「返済できない」と予測アルゴリズムが予測してくれるか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『返済できそうな顧客を「返済できる」と予測する』と『返済できそうにない顧客を「返済できない」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(返済できなかった)データ数Mbよりも正例(返済できた)データ数Maが多い場合、『返済できそうにない顧客を「返済できない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体正答率を説明変数別に比較すればよい。
これに対し、正例(返済できた)データ数Maよりも負例(返済できなかった)データ数Mbが多い場合、『返済できそうな顧客を「返済できる」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体正答率を説明変数別に比較すればよい。
このように、実施例2Aによれば、利用者の関心の程度に応じた全体正答率で予測アルゴリズムを説明変数別に比較することで、利用者にとって予測アルゴリズムの予測精度がよくなる説明変数をわかりやすく提示することができる。
(実施例2B)
実施例2Bは、ある1つの予測アルゴリズムを適用する場合に、説明変数群の各々について重み付き全体誤答率を求めてグラフ表示する例である。これにより、どの説明変数が目的変数に関係しているかを利用者にわかりやすく提示することができる。
図16は、実施例2Bにおける説明変数ごとの重み付き全体誤答率を示すグラフである。図16において、横軸は重み変数w、縦軸は全体誤答率を示す。グラフは図5に示したディスプレイ508に表示される。図16では、4種類の説明変数E1〜E4を用いている。
図16では、重み変数wがどのような値をとっても、説明変数E1〜E4の中で説明変数E4の誤答率が最も低い。したがって、説明変数E4を採用すると最も予測精度がよくなる。説明変数E2,E3については、重み変数wが0≦w<wxでは説明変数E2のほうが全体誤答率がよく、wx<w≦1では説明変数E3のほうが全体誤答率がよい。
したがって、たとえば、説明変数E4について重み付き全体誤答率を求めていないときは、利用者は、負例・正例件数よりも正例・負例件数を重視する場合は、重み変数wの値が大きいときに誤答率がよくなる説明変数E3を利用すればよい。正例・負例件数よりも負例・正例件数を重視する場合は、重み変数wの値が小さいときに誤答率がよくなる説明変数E2を利用すればよい。
なお、説明変数E1は、説明変数E1〜E4の中で最も誤答率が高い説明変数であるため、説明変数E1が最も重要でない説明変数であることが分かる。
なお、実施例2Bにかかるデータ解析処理手順は、評価処理(ステップS1503)の詳細以外は、図15に示した処理手順と同じである。実施例2Bでは、評価処理(ステップS1503)の詳細な処理が、図13に示した評価処理(ステップS1003)になる。評価処理(ステップS1503)は、選択説明変数について実行される。
このように、実施例2Bによれば、利用者の負例データについての関心度の高さに応じて、利用者が重み変数wを設定することができる。したがって、実施例2Bでは、利用者が設定した重み変数wの値での説明変数ごとの予測アルゴリズムの予測精度(誤答率)を、利用者にわかりやすく提示することができる。
たとえば、回路の故障解析に適用する場合、『どの説明変数を採用すれば、正常らしい回路を故障であると予測アルゴリズムが予測してしまうか、また、どの説明変数を採用すれば、故障らしい回路を正常であると予測アルゴリズムが予測してしまうか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『正常らしい回路を故障と予測する』と『故障らしい回路を正常と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(故障)データ数Mbよりも正例(正常)データ数Maが多い場合、『故障らしい回路を正常と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を説明変数別に比較すればよい。
これに対し、正例(正常)データ数Maよりも負例(故障)データ数Mbが多い場合、『正常らしい回路を故障と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を説明変数別に比較すればよい。
また、推薦商品のレコメンデーションに関するデータ解析に適用する場合、『どの説明変数を採用すれば、推薦商品を購入しそうな顧客を「購入しない」と予測アルゴリズムが予測してしまうか、また、どの説明変数を採用すれば、推薦商品を購入しそうにない顧客を「購入する」と予測アルゴリズムが予測してしまうか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『推薦商品を購入しそうな顧客を「購入しない」と予測する』と『推薦商品を購入しそうにない顧客を「購入する」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(購入しなかった)データ数Mbよりも正例(購入した)データ数Maが多い場合、『推薦商品を購入しそうにない顧客を「購入する」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を説明変数別に比較すればよい。
これに対し、正例(購入した)データ数Maよりも負例(購入しなかった)データ数Mbが多い場合、『推薦商品を購入しそうな顧客を「購入しない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を説明変数別に比較すればよい。
また、融資の与信に関するデータ解析に適用する場合、『どの説明変数を採用すれば、返済できそうな顧客を「返済できない」と予測アルゴリズムが予測してしまうか、また、どの説明変数を採用すれば、返済できそうにない顧客を「返済できる」と予測アルゴリズムが予測してしまうか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『返済できそうな顧客を「返済できない」と予測する』と『返済できそうにない顧客を「返済できる」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(返済できなかった)データ数Mbよりも正例(返済できた)データ数Maが多い場合、『返済できそうにない顧客を「返済できる」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を説明変数別に比較すればよい。
これに対し、正例(返済できた)データ数Maよりも負例(返済できなかった)データ数Mbが多い場合、『返済できそうな顧客を「返済できない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を説明変数別に比較すればよい。
このように、実施例2Bによれば、利用者の関心の程度に応じた全体誤答率で予測アルゴリズムを説明変数別に比較することで、利用者にとって予測アルゴリズムの予測精度がよくなる説明変数をわかりやすく提示することができる。
(実施例3A)
実施例3Aは、ある1つの予測アルゴリズムを適用する場合に、説明変数群の中からいずれか1つの説明変数を除いた残余の説明変数群について重み付き全体正答率を求めてグラフ表示する例である。これにより、どの説明変数が目的変数との関係において意味のない説明変数であるかを利用者にわかりやすく提示することができる。
図17は、実施例3Aにおける残余の説明変数群ごとの重み付き全体正答率を示すグラフである。図17において、横軸は重み変数w、縦軸は全体正答率を示す。グラフは図5に示したディスプレイ508に表示される。図17では、4種類の残余の説明変数群{E2〜E4},{E1,E3,E4},{E1,E2,E4},{E1〜E3}を用いている。
図17では、重み変数wがどのような値をとっても、残余の説明変数群{E2〜E4},{E1,E3,E4},{E1,E2,E4},{E1〜E3}の中で残余の説明変数群{E2〜E4}の正答率が最も高い。したがって、説明変数E1が最も意味のない説明変数であることがわかる。また、残余の説明変数群{E1,E3,E4},{E1,E2,E4}については、重み変数wが0≦w<wxでは残余の説明変数群{E1,E2,E4}のほうが全体正答率がよく、wx<w≦1では残余の説明変数群{E1,E3,E4}のほうが全体正答率がよい。
したがって、たとえば、残余の説明変数群{E2〜E4}について重み付き全体正答率を求めていないときは、利用者は、負例・負例件数よりも正例・正例件数を重視する場合は、重み変数wの値が大きいときに正答率がよくなる残余の説明変数群{E1,E3,E4}を利用すればよい。一方、正例・正例件数よりも負例・負例件数を重視する場合は、重み変数wの値が小さいときに正答率(予測精度)がよくなる残余の説明変数群{E1,E2,E4}を採用すればよい。
なお、残余の説明変数群{E1〜E3}は、残余の説明変数群{E2〜E4},{E1,E3,E4},{E1,E2,E4},{E1〜E3}の中で最も正答率が低い説明変数であるため、利用者は説明変数E4を採用しないのはよくないということがわかる。
図18は、実施例3Aにかかるデータ解析処理手順を示すフローチャートである。図18において、まず、データ解析装置は、未選択の説明変数があるか否かを判断する(ステップS1801)。未選択の説明変数がある場合(ステップS1801:Yes)、データ解析装置は、未選択の説明変数を選択し(ステップS1802)、選択説明変数を除く残余の説明変数群を選択する(ステップS1803)。そして、データ解析装置は、評価処理を実行する(ステップS1804)。評価処理(ステップS1804)の詳細については図11で説明した評価処理(ステップS1003)と同一処理内容であるため説明を省略する。評価処理(ステップS1804)は、選択された残余の説明変数群について実行される。
評価処理(ステップS1804)のあと、ステップS1801に戻り、未選択の説明変数がない場合(ステップS1801:No)、データ解析装置は、図17に示したように、残余の説明変数群ごとに得られた重み付き全体正答率のグラフ表示処理を実行する(ステップS1805)。これにより、実施例3Aでのデータ解析処理を終了する。
このように、実施例3Aによれば、利用者の正例データについての関心度の高さに応じて、利用者が重み変数wを設定することができる。したがって、実施例3Aでは、利用者が設定した重み変数wの値での残余の説明変数群ごとの予測アルゴリズムの予測精度(正答率)を、利用者にわかりやすく提示することができる。
たとえば、回路の故障解析に適用する場合、『どの説明変数を採用しなければ、正常らしい回路を正常であると予測アルゴリズムが予測してくれるか、また、どの説明変数を採用しなければ、故障らしい回路を故障であると予測アルゴリズムが予測してくれるか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『正常らしい回路を正常と予測する』と『故障らしい回路を故障と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(故障)データ数Mbよりも正例(正常)データ数Maが多い場合、『故障らしい回路を故障と予測する』ことを重視するほうがよい。この場合は、利用者は重み変数wを低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体正答率を残余の説明変数群別に比較すればよい。
これに対し、正例(正常)データ数Maよりも負例(故障)データ数Mbが多い場合、
『正常らしい回路を正常と予測する』ことを重視するほうがよい。この場合は、利用者は重み変数wを高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体正答率を残余の説明変数群別に比較すればよい。
また、推薦商品のレコメンデーションに関するデータ解析に適用する場合、『どの説明変数を採用しなければ、推薦商品を購入しそうな顧客を「購入する」と予測アルゴリズムが予測してくれるか、また、どの説明変数を採用しなければ、推薦商品を購入しそうにない顧客を「購入しない」と予測アルゴリズムが予測してくれるか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『推薦商品を購入しそうな顧客を「購入する」と予測する』と『推薦商品を購入しそうにない顧客を「購入しない」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(購入しなかった)データ数Mbよりも正例(購入した)データ数Maが多い場合、『推薦商品を購入しそうにない顧客を「購入しない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体正答率を残余の説明変数群別に比較すればよい。
これに対し、正例(購入した)データ数Maよりも負例(購入しなかった)データ数Mbが多い場合、『推薦商品を購入しそうな顧客を「購入する」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体正答率を残余の説明変数群別に比較すればよい。
また、融資の与信に関するデータ解析に適用する場合、『どの説明変数を採用しなければ、返済できそうな顧客を「返済できる」と予測アルゴリズムが予測してくれるか、また、どの説明変数を採用しなければ、返済できそうにない顧客を「返済できない」と予測アルゴリズムが予測してくれるか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『返済できそうな顧客を「返済できる」と予測する』と『返済できそうにない顧客を「返済できない」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(返済できなかった)データ数Mbよりも正例(返済できた)データ数Maが多い場合、『返済できそうにない顧客を「返済できない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体正答率を残余の説明変数群別に比較すればよい。
これに対し、正例(返済できた)データ数Maよりも負例(返済できなかった)データ数Mbが多い場合、『返済できそうな顧客を「返済できる」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体正答率を残余の説明変数群別に比較すればよい。
このように、実施例3Aによれば、利用者の関心の程度に応じた全体正答率で予測アルゴリズムを残余の説明変数群別に比較することで、利用者にとって予測アルゴリズムの予測精度がよくなるために不要な説明変数をわかりやすく提示することができる。
(実施例3B)
実施例3Bは、ある1つの予測アルゴリズムを適用する場合に、説明変数群の各々について重み付き全体誤答率を求めてグラフ表示する例である。これにより、どの説明変数が目的変数に関係しているかを利用者にわかりやすく提示することができる。
図19は、実施例3Bにおける説明変数ごとの重み付き全体誤答率を示すグラフである。図19において、横軸は重み変数w、縦軸は全体誤答率を示す。グラフは図5に示したディスプレイ508に表示される。図19では、4種類の残余の説明変数群{E2〜E4},{E1,E3,E4},{E1,E2,E4},{E1〜E3}を用いている。
図19では、重み変数wがどのような値をとっても、残余の説明変数群{E2〜E4},{E1,E3,E4},{E1,E2,E4},{E1〜E3}の中で残余の説明変数群{E2〜E4}の誤答率が最も高い。したがって、説明変数E1が最も重要な説明変数であることが分かる。また、残余の説明変数群{E1,E3,E4},{E1,E2,E4}については、重み変数wが0≦w<wxでは残余の説明変数群{E1,E3,E4}のほうが全体誤答率がよく、wx<w≦1では残余の説明変数群{E1,E2,E4}のほうが全体誤答率がよい。
したがって、たとえば、残余の説明変数群{E1〜E3}について重み付き全体誤答率を求めていないときは、利用者は、負例・正例件数よりも正例・負例件数を重視する場合は、重み変数wの値が大きいときに誤答率がよくなる残余の説明変数群{E1,E2,E4}を利用すればよい。正例・負例件数よりも負例・正例件数を重視する場合は、重み変数wの値が小さいときに誤答率がよくなる残余の説明変数群{E1,E3,E4}を利用すればよい。
なお、残余の説明変数群{E1〜E3}は、残余の説明変数群{E2〜E4},{E1,E3,E4},{E1,E2,E4},{E1〜E3}の中で最も誤答率が低い残余の説明変数群であるため、利用者は説明変数E4が最も重要でない説明変数であることが分かる。
なお、実施例3Bにかかるデータ解析処理手順は、評価処理(ステップS1804)の詳細以外は、図18に示した処理手順と同じである。実施例3Bでは、評価処理(ステップS1804)の詳細な処理が、図13に示した評価処理(ステップS1003)になる。評価処理(ステップS1804)は、選択された残余の説明変数群について実行される。
このように、実施例3Bによれば、利用者の負例データについての関心度の高さに応じて、利用者が重み変数wを設定することができる。したがって、実施例3Bでは、利用者が設定した重み変数wの値での残余の説明変数群ごとの予測アルゴリズムの予測精度(誤答率)を、利用者にわかりやすく提示することができる。
たとえば、回路の故障解析に適用する場合、『どの説明変数を採用しなければ、正常らしい回路を故障であると予測アルゴリズムが予測してしまうか、また、どの説明変数を採用しなければ、故障らしい回路を正常であると予測アルゴリズムが予測してしまうか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『正常らしい回路を故障と予測する』と『故障らしい回路を正常と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(故障)データ数Mbよりも正例(正常)データ数Maが多い場合、『故障らしい回路を正常と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を残余の説明変数群別に比較すればよい。
これに対し、正例(正常)データ数Maよりも負例(故障)データ数Mbが多い場合、『正常らしい回路を故障と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を残余の説明変数群別に比較すればよい。
また、推薦商品のレコメンデーションに関するデータ解析に適用する場合、『どの説明変数を採用しなければ、推薦商品を購入しそうな顧客を「購入しない」と予測アルゴリズムが予測してしまうか、また、どの説明変数を採用しなければ、推薦商品を購入しそうにない顧客を「購入する」と予測アルゴリズムが予測してしまうか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『推薦商品を購入しそうな顧客を「購入しない」と予測する』と『推薦商品を購入しそうにない顧客を「購入する」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(購入しなかった)データ数Mbよりも正例(購入した)データ数Maが多い場合、『推薦商品を購入しそうにない顧客を「購入する」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を残余の説明変数群別に比較すればよい。
これに対し、正例(購入した)データ数Maよりも負例(購入しなかった)データ数Mbが多い場合、『推薦商品を購入しそうな顧客を「購入しない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を残余の説明変数群別に比較すればよい。
また、融資の与信に関するデータ解析に適用する場合、『どの説明変数を採用しなければ、返済できそうな顧客を「返済できない」と予測アルゴリズムが予測してしまうか、また、どの説明変数を採用しなければ、返済できそうにない顧客を「返済できる」と予測アルゴリズムが予測してしまうか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『返済できそうな顧客を「返済できない」と予測する』と『返済できそうにない顧客を「返済できる」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(返済できなかった)データ数Mbよりも正例(返済できた)データ数Maが多い場合、『返済できそうにない顧客を「返済できる」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を残余の説明変数群別に比較すればよい。
これに対し、正例(返済できた)データ数Maよりも負例(返済できなかった)データ数Mbが多い場合、『返済できそうな顧客を「返済できない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wを高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を残余の説明変数群別に比較すればよい。
このように、実施例3Bによれば、利用者の関心の程度に応じた全体誤答率で予測アルゴリズムを残余の説明変数群別に比較することで、利用者にとって予測アルゴリズムの予測精度がよくなるために不要な説明変数をわかりやすく提示することができる。
(実施例4A)
実施例4Aは、予測アルゴリズムごとに、説明変数の各々について全体正答率を求めてグラフ表示する例である。すなわち、実施例4Aは、実施例1Aと実施例2Aとを組み合わせた例である。実施例4Aでは、重み変数wの値はあらかじめ指定されることになる。これにより、予測アルゴリズムと説明変数との組み合わせごとに、どの説明変数を採用するとどの予測アルゴリズムの予測精度(正答率)がよくなるかを利用者にわかりやすく提示することができる。
図20は、実施例4Aにおける予測アルゴリズムと説明変数との組み合わせごとの全体正答率を示すグラフ508である。図20において、横軸は説明変数、縦軸は全体正答率を示す。グラフは図5に示したディスプレイに表示される。図20では、4種類の予測アルゴリズムP1〜P4と4種類の説明変数E1〜E4を用いている。
図20では、予測アルゴリズムP1〜P4ごとに、説明変数E1〜E4を採用した場合の全体正答率を折れ線グラフで表示している。たとえば、予測アルゴリズムP1は、説明変数E2〜E4を採用したときは最も予測精度がよい予測アルゴリズムとなるが、説明変数E1を採用したときに限り、最も予測精度が悪い予測アルゴリズムとなる。
このように、予測アルゴリズムがQ個、説明変数がR個あるとすると、Q×Rの組み合わせを網羅した折れ線グラフを得ることができ、どの組み合わせにすると正答率がよくなるか、どの組み合わせにすると正答率が悪くなるか、といったことをわかりやすく提示することができる。
図21は、実施例4Aにかかるデータ解析処理手順を示すフローチャートである。図21において、重み変数wの値は指定済みとする。まず、データ解析装置は、未選択の予測アルゴリズムがあるか否かを判断する(ステップS2101)。未選択の予測アルゴリズムがある場合(ステップS2101:Yes)、データ解析装置は、未選択の予測アルゴリズムを選択する(ステップS2102)。
つぎに、データ解析装置は、選択予測アルゴリズムにおいて未選択の説明変数があるか否かを判断する(ステップS2103)。未選択の説明変数がある場合(ステップS2103:Yes)、データ解析装置は、未選択の説明変数を選択し(ステップS2104)、評価処理を実行する(ステップS2105)。評価処理(ステップS2105)の詳細については図11で説明した評価処理(ステップS1003)と同一処理内容であるため説明を省略する。評価処理(ステップS2105)は、選択予測アルゴリズムと選択説明変数との組み合わせについて実行される。
評価処理(ステップS2105)のあと、ステップS2103に戻り、未選択の説明変数がない場合(ステップS2103:No)、ステップS2101に戻り、データ解析装置は、未選択の予測アルゴリズムがあるか否かを判断する(ステップS2101)。そして、未選択の予測アルゴリズムがない場合(ステップS2101:No)、データ解析装置は、図20に示したように、予測アルゴリズムと説明変数との組み合わせごとに得られた全体正答率のグラフ表示処理を実行する(ステップS2106)。これにより、実施例4Aでのデータ解析処理を終了する。
このように、実施例4Aによれば、利用者の正例データについての関心度の高さに応じて、利用者が設定した重み変数wの値で、予測アルゴリズムごとに、説明変数ごとの予測アルゴリズムの予測精度(正答率)を、利用者にわかりやすく提示することができる。
たとえば、回路の故障解析に適用する場合、『どの説明変数とどの予測アルゴリズムを採用すれば、正常らしい回路を正常であると予測アルゴリズムが予測してくれるか、また、どの説明変数とどの予測アルゴリズムを採用すれば、故障らしい回路を故障であると予測アルゴリズムが予測してくれるか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『正常らしい回路を正常と予測する』と『故障らしい回路を故障と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(故障)データ数Mbよりも正例(正常)データ数Maが多い場合、『故障らしい回路を故障と予測する』ことを重視するほうがよい。この場合は、利用者は重み変数wの値をあらかじめ低く設定することで、利用者の設定した重み変数wの値での全体正答率を、予測アルゴリズムと説明変数との組み合わせ別に比較すればよい。
これに対し、正例(正常)データ数Maよりも負例(故障)データ数Mbが多い場合、
『正常らしい回路を正常と予測する』ことを重視するほうがよい。この場合は、利用者は重み変数wの値をあらかじめ高く設定することで、利用者の設定した重み変数wの値での全体正答率を、予測アルゴリズムと説明変数との組み合わせ別に比較すればよい。
また、推薦商品のレコメンデーションに関するデータ解析に適用する場合、『どの説明変数とどの予測アルゴリズムを採用すれば、推薦商品を購入しそうな顧客を「購入する」と予測アルゴリズムが予測してくれるか、また、どの説明変数とどの予測アルゴリズムを採用すれば、推薦商品を購入しそうにない顧客を「購入しない」と予測アルゴリズムが予測してくれるか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『推薦商品を購入しそうな顧客を「購入する」と予測する』と『推薦商品を購入しそうにない顧客を「購入しない」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(購入しなかった)データ数Mbよりも正例(購入した)データ数Maが多い場合、『推薦商品を購入しそうにない顧客を「購入しない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ低く指定することで、利用者の設定した重み変数wの値での全体正答率を、予測アルゴリズムと説明変数との組み合わせ別に比較すればよい。
これに対し、正例(購入した)データ数Maよりも負例(購入しなかった)データ数Mbが多い場合、『推薦商品を購入しそうな顧客を「購入する」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ高く設定することで、利用者の設定した重み変数wの値での全体正答率を、予測アルゴリズムと説明変数との組み合わせ別に比較すればよい。
また、融資の与信に関するデータ解析に適用する場合、『どの説明変数とどの予測アルゴリズムを採用すれば、返済できそうな顧客を「返済できる」と予測アルゴリズムが予測してくれるか、また、どの説明変数とどの予測アルゴリズムを採用すれば、返済できそうにない顧客を「返済できない」と予測アルゴリズムが予測してくれるか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『返済できそうな顧客を「返済できる」と予測する』と『返済できそうにない顧客を「返済できない」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(返済できなかった)データ数Mbよりも正例(返済できた)データ数Maが多い場合、『返済できそうにない顧客を「返済できない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体正答率を説明変数別に比較すればよい。
これに対し、正例(返済できた)データ数Maよりも負例(返済できなかった)データ数Mbが多い場合、『返済できそうな顧客を「返済できる」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体正答率を説明変数別に比較すればよい。
このように、実施例4Aによれば、利用者の関心の程度に応じた全体正答率を、予測アルゴリズムと説明変数との組み合わせ別に比較することで、利用者にとってどの組み合わせを採用すれば正答率がよくなるか、どの組み合わせを採用すれば正答率が悪くなるかをわかりやすく提示することができる。
(実施例4B)
実施例4Bは、予測アルゴリズムごとに、説明変数の各々について全体誤答率を求めてグラフ表示する例である。すなわち、実施例4Bは、実施例1Bと実施例2Bとを組み合わせた例である。実施例4Bでは、重み変数wの値はあらかじめ指定されることになる。これにより、予測アルゴリズムと説明変数との組み合わせごとに、どの説明変数を採用するとどの予測アルゴリズムの予測精度(誤答率)がよくなるかを利用者にわかりやすく提示することができる。
図22は、実施例4Bにおける予測アルゴリズムと説明変数との組み合わせごとの全体誤答率を示すグラフである。図22において、横軸は説明変数、縦軸は全体誤答率を示す。グラフは図5に示したディスプレイ508に表示される。図22では、4種類の予測アルゴリズムP1〜P4と4種類の説明変数E1〜E4を用いている。
図22では、予測アルゴリズムP1〜P4ごとに、説明変数E1〜E4を採用した場合の全体誤答率を折れ線グラフで表示している。たとえば、予測アルゴリズムP1は、説明変数E2〜E4を採用したときは最も予測精度がよい予測アルゴリズムとなるが、説明変数E1を採用したときに限り、最も予測精度が悪い予測アルゴリズムとなる。
このように、予測アルゴリズムがQ個、説明変数がR個あるとすると、J×Kの組み合わせを網羅した折れ線グラフを得ることができ、どの組み合わせにすると誤答率がよくなるか、どの組み合わせにすると誤答率が悪くなるか、といったことをわかりやすく提示することができる。
なお、実施例4Bにかかるデータ解析処理手順は、評価処理(ステップS2105)の詳細以外は、図21に示した処理手順と同じである。実施例4Bでは、評価処理(ステップS2105)の詳細な処理が、図13に示した評価処理(ステップS1003)になる。評価処理(ステップS2105)は、選択予測アルゴリズムと選択説明変数との組み合わせについて実行される。
このように、実施例4Bによれば、利用者の負例データについての関心度の高さに応じて、利用者が重み変数wの値で、予測アルゴリズムごとに、説明変数ごとの予測アルゴリズムの予測精度(誤答率)を、利用者にわかりやすく提示することができる。
たとえば、回路の故障解析に適用する場合、『どの説明変数とどの予測アルゴリズムを採用すれば、正常らしい回路を故障であると予測アルゴリズムが予測してしまうか、また、どの説明変数とどの予測アルゴリズムを採用すれば、故障らしい回路を正常であると予測アルゴリズムが予測してしまうか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『正常らしい回路を故障と予測する』と『故障らしい回路を正常と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(故障)データ数Mbよりも正例(正常)データ数Maが多い場合、『故障らしい回路を正常と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を説明変数別に比較すればよい。
これに対し、正例(正常)データ数Maよりも負例(故障)データ数Mbが多い場合、『正常らしい回路を故障と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を説明変数別に比較すればよい。
また、推薦商品のレコメンデーションに関するデータ解析に適用する場合、『どの説明変数とどの予測アルゴリズムを採用すれば、推薦商品を購入しそうな顧客を「購入しない」と予測アルゴリズムが予測してしまうか、また、どの説明変数とどの予測アルゴリズムを採用すれば、推薦商品を購入しそうにない顧客を「購入する」と予測アルゴリズムが予測してしまうか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『推薦商品を購入しそうな顧客を「購入しない」と予測する』と『推薦商品を購入しそうにない顧客を「購入する」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(購入しなかった)データ数Mbよりも正例(購入した)データ数Maが多い場合、『推薦商品を購入しそうにない顧客を「購入する」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ低く指定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を説明変数別に比較すればよい。
これに対し、正例(購入した)データ数Maよりも負例(購入しなかった)データ数Mbが多い場合、『推薦商品を購入しそうな顧客を「購入しない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を説明変数別に比較すればよい。
また、融資の与信に関するデータ解析に適用する場合、『どの説明変数とどの予測アルゴリズムを採用すれば、返済できそうな顧客を「返済できない」と予測アルゴリズムが予測してしまうか、また、どの説明変数とどの予測アルゴリズムを採用すれば、返済できそうにない顧客を「返済できる」と予測アルゴリズムが予測してしまうか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『返済できそうな顧客を「返済できない」と予測する』と『返済できそうにない顧客を「返済できる」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(返済できなかった)データ数Mbよりも正例(返済できた)データ数Maが多い場合、『返済できそうにない顧客を「返済できる」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を説明変数別に比較すればよい。
これに対し、正例(返済できた)データ数Maよりも負例(返済できなかった)データ数Mbが多い場合、『返済できそうな顧客を「返済できない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ高く指定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を説明変数別に比較すればよい。
このように、実施例4Bによれば、利用者の関心の程度に応じた全体誤答率を、予測アルゴリズムと説明変数との組み合わせ別に比較することで、利用者にとってどの組み合わせを採用すれば誤答率がよくなるか、どの組み合わせを採用すれば誤答率が悪くなるかをわかりやすく提示することができる。
(実施例5A)
実施例5Aは、予測アルゴリズムごとに、説明変数群からいずれか1つの説明変数を除いた残余の説明変数群の各々について全体正答率を求めてグラフ表示する例である。すなわち、実施例5Aは、実施例1Aと実施例3Aとを組み合わせた例である。実施例5Aでは、重み変数wの値はあらかじめ指定されることになる。これにより、予測アルゴリズムと残余の説明変数群との組み合わせごとに、どの説明変数を採用しないとどの予測アルゴリズムの予測精度(正答率)がよくなるかを利用者にわかりやすく提示することができる。
図23は、実施例5Aにおける予測アルゴリズムと残余の説明変数群との組み合わせごとの全体正答率を示すグラフである。図23において、横軸は残余の説明変数群、縦軸は全体正答率を示す。グラフは図5に示したディスプレイに表示される。図23では、4種類の予測アルゴリズムP1〜P4と4種類の残余の説明変数群{E2〜E4},{E1,E3,E4},{E1,E2,E4},{E1〜E3}を用いている。
図23では、予測アルゴリズムP1〜P4ごとに、残余の説明変数群{E2〜E4},{E1,E3,E4},{E1,E2,E4},{E1〜E3}を採用した場合の全体正答率を折れ線グラフで表示している。たとえば、予測アルゴリズムP1は、残余の説明変数群{E1,E3,E4},{E1,E2,E4},{E1〜E3}を採用したときは最も予測精度がよい予測アルゴリズムとなるが、残余の説明変数群{E2〜E4}を採用したときに限り、最も予測精度が悪い予測アルゴリズムとなる。
このように、予測アルゴリズムがQ個、残余の説明変数群がR個あるとすると、J×Kの組み合わせを網羅した折れ線グラフを得ることができ、どの組み合わせにすると正答率がよくなるか、どの組み合わせにすると正答率が悪くなるか、といったことをわかりやすく提示することができる。
図24は、実施例5Aにかかるデータ解析処理手順を示すフローチャートである。図24において、重み変数wの値は指定済みとする。まず、データ解析装置は、未選択の予測アルゴリズムがあるか否かを判断する(ステップS2401)。未選択の予測アルゴリズムがある場合(ステップS2401:Yes)、データ解析装置は、未選択の予測アルゴリズムを選択する(ステップS2402)。
つぎに、データ解析装置は、選択予測アルゴリズムにおいて未選択の説明変数があるか否かを判断する(ステップS2403)。未選択の説明変数がある場合(ステップS2403:Yes)、データ解析装置は、未選択の説明変数を選択し(ステップS2404)、選択説明変数を除く残余の説明変数群を選択する(ステップS2405)。そして、データ解析装置は、評価処理を実行する(ステップS2406)。評価処理(ステップS2406)の詳細については図11で説明した評価処理(ステップS1003)と同一処理内容であるため説明を省略する。評価処理(ステップS2406)は、選択予測アルゴリズムと選択された残余の説明変数群との組み合わせについて実行される。
評価処理(ステップS2406)のあと、ステップS2403に戻り、未選択の説明変数がない場合(ステップS2403:No)、ステップS2401に戻り、データ解析装置は、未選択の予測アルゴリズムがあるか否かを判断する(ステップS2401)。そして、未選択の予測アルゴリズムがない場合(ステップS2401:No)、データ解析装置は、図23に示したように、予測アルゴリズムと残余の説明変数群との組み合わせごとに得られた全体正答率のグラフ表示処理を実行する(ステップS2407)。これにより、実施例4Aでのデータ解析処理を終了する。
このように、実施例5Aによれば、利用者の正例データについての関心度の高さに応じて、利用者が設定した重み変数wの値で、予測アルゴリズムごとに、残余の説明変数群ごとの予測アルゴリズムの予測精度(正答率)を、利用者にわかりやすく提示することができる。
たとえば、回路の故障解析に適用する場合、『予測アルゴリズムの各々についてどの説明変数を採用しなければ、正常らしい回路を正常であると予測アルゴリズムが予測してくれるか、また、予測アルゴリズムの各々についてどの説明変数を採用しなければ、故障らしい回路を故障であると予測アルゴリズムが予測してくれるか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『正常らしい回路を正常と予測する』と『故障らしい回路を故障と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(故障)データ数Mbよりも正例(正常)データ数Maが多い場合、『故障らしい回路を故障と予測する』ことを重視するほうがよい。この場合は、利用者は重み変数wの値をあらかじめ低く設定することで、利用者の設定した重み変数wの値での全体正答率を、予測アルゴリズムと残余の説明変数群との組み合わせ別に比較すればよい。
これに対し、正例(正常)データ数Maよりも負例(故障)データ数Mbが多い場合、
『正常らしい回路を正常と予測する』ことを重視するほうがよい。この場合は、利用者は重み変数wの値をあらかじめ高く設定することで、利用者の設定した重み変数wの値での全体正答率を、予測アルゴリズムと残余の説明変数との組み合わせ別に比較すればよい。
また、推薦商品のレコメンデーションに関するデータ解析に適用する場合、『予測アルゴリズムの各々についてどの説明変数を採用しなければ、推薦商品を購入しそうな顧客を「購入する」と予測アルゴリズムが予測してくれるか、また、予測アルゴリズムの各々についてどの説明変数を採用しなければ、推薦商品を購入しそうにない顧客を「購入しない」と予測アルゴリズムが予測してくれるか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『推薦商品を購入しそうな顧客を「購入する」と予測する』と『推薦商品を購入しそうにない顧客を「購入しない」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(購入しなかった)データ数Mbよりも正例(購入した)データ数Maが多い場合、『推薦商品を購入しそうにない顧客を「購入しない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ低く設定することで、利用者の設定した重み変数wの値での全体正答率を、予測アルゴリズムと残余の説明変数群との組み合わせ別に比較すればよい。
これに対し、正例(購入した)データ数Maよりも負例(購入しなかった)データ数Mbが多い場合、『推薦商品を購入しそうな顧客を「購入する」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ高く設定することで、利用者の設定した重み変数wの値での全体正答率を、予測アルゴリズムと残余の説明変数群との組み合わせ別に比較すればよい。
また、融資の与信に関するデータ解析に適用する場合、『予測アルゴリズムの各々についてどの説明変数を採用しなければ、返済できそうな顧客を「返済できる」と予測アルゴリズムが予測してくれるか、また、予測アルゴリズムの各々についてどの説明変数を採用しなければ、返済できそうにない顧客を「返済できない」と予測アルゴリズムが予測してくれるか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『返済できそうな顧客を「返済できる」と予測する』と『返済できそうにない顧客を「返済できない」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(返済できなかった)データ数Mbよりも正例(返済できた)データ数Maが多い場合、『返済できそうにない顧客を「返済できない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ低く指定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体正答率を残余の説明変数群別に比較すればよい。
これに対し、正例(返済できた)データ数Maよりも負例(返済できなかった)データ数Mbが多い場合、『返済できそうな顧客を「返済できる」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体正答率を残余の説明変数群別に比較すればよい。
このように、実施例5Aによれば、利用者の関心の程度に応じた全体正答率を、予測アルゴリズムと残余の説明変数群との組み合わせ別に比較することで、利用者にとって予測アルゴリズムの各々についてどの説明変数を採用しなければ正答率がよくなるか、予測アルゴリズムの各々についてどの説明変数を採用しなければ正答率が悪くなるかをわかりやすく提示することができる。
(実施例5B)
実施例5Bは、予測アルゴリズムごとに、残余の説明変数群の各々について全体誤答率を求めてグラフ表示する例である。すなわち、実施例5Bは、実施例1Bと実施例3Bとを組み合わせた例である。実施例5Bでは、重み変数wの値はあらかじめ指定されることになる。これにより、予測アルゴリズムと残余の説明変数群との組み合わせごとに、どの説明変数を採用しないとどの予測アルゴリズムの予測精度(誤答率)がよくなるかを利用者にわかりやすく提示することができる。
図25は、実施例5Bにおける予測アルゴリズムと残余の説明変数群との組み合わせごとの全体誤答率を示すグラフである。図25において、横軸は残余の説明変数群、縦軸は全体誤答率を示す。グラフは図5に示したディスプレイに表示される。図25では、4種類の予測アルゴリズムP1〜P4と4種類の残余の説明変数群{E2〜E4},{E1,E3,E4},{E1,E2,E4},{E1〜E3}を用いている。
図25では、予測アルゴリズムP1〜P4ごとに、残余の説明変数群{E2〜E4},{E1,E3,E4},{E1,E2,E4},{E1〜E3}を採用した場合の全体誤答率を折れ線グラフで表示している。たとえば、予測アルゴリズムP1は、残余の説明変数群{E1,E3,E4},{E1,E2,E4},{E1〜E3}を採用したときは最も予測精度がよい予測アルゴリズムとなるが、残余の説明変数群{E2〜E4}を採用したときに限り、最も予測精度が悪い予測アルゴリズムとなる。
このように、予測アルゴリズムがQ個、説明変数がR個あるとすると、J×Kの組み合わせを網羅した折れ線グラフを得ることができ、どの組み合わせにすると誤答率がよくなるか、どの組み合わせにすると誤答率が悪くなるか、といったことをわかりやすく提示することができる。
なお、実施例5Bにかかるデータ解析処理手順は、評価処理(ステップS2406)の詳細以外は、図24に示した処理手順と同じである。実施例5Bでは、評価処理(ステップS2406)の詳細な処理が、図13に示した評価処理(ステップS1003)になる。評価処理(ステップS2406)は、選択予測アルゴリズムと選択された残余の説明変数群との組み合わせについて実行される。
このように、実施例5Bによれば、利用者の負例データについての関心度の高さに応じて、利用者が設定した重み変数wの値で、予測アルゴリズムごとに、残余の説明変数群ごとの予測アルゴリズムの予測精度(誤答率)を、利用者にわかりやすく提示することができる。
たとえば、回路の故障解析に適用する場合、『予測アルゴリズムの各々についてどの説明変数を採用しなければ、正常らしい回路を故障であると予測アルゴリズムが予測してしまうか、また、予測アルゴリズムの各々についてどの説明変数を採用しなければ、故障らしい回路を正常であると予測アルゴリズムが予測してしまうか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『正常らしい回路を故障と予測する』と『故障らしい回路を正常と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(故障)データ数Mbよりも正例(正常)データ数Maが多い場合、『故障らしい回路を正常と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を残余の説明変数群別に比較すればよい。
これに対し、正例(正常)データ数Maよりも負例(故障)データ数Mbが多い場合、『正常らしい回路を故障と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を残余の説明変数群別に比較すればよい。
また、推薦商品のレコメンデーションに関するデータ解析に適用する場合、『予測アルゴリズムの各々についてどの説明変数を採用しなければ、推薦商品を購入しそうな顧客を「購入しない」と予測アルゴリズムが予測してしまうか、また、予測アルゴリズムの各々についてどの説明変数を採用しなければ、推薦商品を購入しそうにない顧客を「購入する」と予測アルゴリズムが予測してしまうか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『推薦商品を購入しそうな顧客を「購入しない」と予測する』と『推薦商品を購入しそうにない顧客を「購入する」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(購入しなかった)データ数Mbよりも正例(購入した)データ数Maが多い場合、『推薦商品を購入しそうにない顧客を「購入する」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を残余の説明変数群別に比較すればよい。
これに対し、正例(購入した)データ数Maよりも負例(購入しなかった)データ数Mbが多い場合、『推薦商品を購入しそうな顧客を「購入しない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を残余の説明変数群別に比較すればよい。
また、融資の与信に関するデータ解析に適用する場合、『予測アルゴリズムの各々についてどの説明変数を採用しなければ、返済できそうな顧客を「返済できない」と予測アルゴリズムが予測してしまうか、また、予測アルゴリズムの各々についてどの説明変数を採用しなければ、返済できそうにない顧客を「返済できる」と予測アルゴリズムが予測してしまうか』といった利用者の疑問に対し、グラフ表示でわかりやすく提示することができる。
また、『返済できそうな顧客を「返済できない」と予測する』と『返済できそうにない顧客を「返済できる」と予測する』ということについて、いずれを重視すればよいかは、利用者に依存する。したがって、たとえば、負例(返済できなかった)データ数Mbよりも正例(返済できた)データ数Maが多い場合、『返済できそうにない顧客を「返済できる」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ低く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を残余の説明変数群別に比較すればよい。
これに対し、正例(返済できた)データ数Maよりも負例(返済できなかった)データ数Mbが多い場合、『返済できそうな顧客を「返済できない」と予測する』ことを重視したほうがよい。この場合は、利用者は重み変数wの値をあらかじめ高く設定することで、利用者の設定した重み変数wの値での予測アルゴリズムの全体誤答率を残余の説明変数群別に比較すればよい。
このように、実施例5Bによれば、利用者の関心の程度に応じた全体誤答率を、予測アルゴリズムと残余の説明変数群との組み合わせ別に比較することで、利用者にとって予測アルゴリズムの各々についてどの説明変数を採用しなければ正答率がよくなるか、予測アルゴリズムの各々についてどの説明変数を採用しなければ正答率が悪くなるかをわかりやすく提示することができる。
(実施例6A)
実施例6Aは、予測アルゴリズムごとに全体正答率を算出してグラフ表示する例である。実施例1Aとの相違点は、重み変数wの値と説明変数とをあらかじめ指定しておく点である。それ以外は実施例1Aと同一である。これにより、利用者が設定した重み変数wの値および説明変数で、どの予測アルゴリズムの予測精度(正答率)がよいかを利用者にわかりやすく提示することができる。なお、実施例6Aにかかるデータ解析処理手順は、実施例1Aと同一であるため省略する。
図26は、実施例6Aにおける予測アルゴリズムごとの全体正答率を示すグラフである。図26において、横軸は予測アルゴリズム、縦軸は全体正答率を示す。図26では、棒グラフによりグラフ表示する例を示している。図26のグラフを表示することで、利用者は、自身が指定した重み変数wの値および説明変数において、どの予測アルゴリズムの予測精度がよいかを把握することができる。
(実施例6B)
実施例6Bは、予測アルゴリズムごとに全体誤答率を算出してグラフ表示する例である。実施例1Bとの相違点は、重み変数wの値と説明変数とをあらかじめ指定しておく点である。それ以外は実施例1Bと同一である。これにより、利用者が設定した重み変数wの値および説明変数で、どの予測アルゴリズムの予測精度(誤答率)がよいかを利用者にわかりやすく提示することができる。なお、実施例6Bにかかるデータ解析処理手順は、実施例1Bと同一であるため省略する。
図27は、実施例6Bにおける予測アルゴリズムごとの全体誤答率を示すグラフである。図27において、横軸は予測アルゴリズム、縦軸は全体誤答率を示す。図27では、棒グラフによりグラフ表示する例を示している。図27のグラフを表示することで、利用者は、自身が指定した重み変数wの値および説明変数において、どの予測アルゴリズムの予測精度がよいかを把握することができる。
(実施例7A)
実施例7Aは、説明変数ごとに全体正答率を算出してグラフ表示する例である。実施例2Aとの相違点は、重み変数wの値と予測アルゴリズムとをあらかじめ指定しておく点である。それ以外は実施例2Aと同一である。これにより、利用者が設定した重み変数wの値および予測アルゴリズムで、どの説明変数を採用したときの予測アルゴリズムの予測精度(正答率)がよいかを利用者にわかりやすく提示することができる。なお、実施例7Aにかかるデータ解析処理手順は、実施例2Aと同一であるため省略する。
図28は、実施例7Aにおける説明変数ごとの全体正答率を示すグラフである。図28において、横軸は説明変数、縦軸は全体正答率を示す。図28では、棒グラフによりグラフ表示する例を示している。図28のグラフを表示することで、利用者は、自身が指定した重み変数wの値および予測アルゴリズムにおいて、どの説明変数を採用したときの予測アルゴリズムの予測精度がよいかを把握することができる。
(実施例7B)
実施例7Bは、説明変数ごとに全体誤答率を算出してグラフ表示する例である。実施例2Bとの相違点は、重み変数wの値と予測アルゴリズムとをあらかじめ指定しておく点である。それ以外は実施例2Bと同一である。これにより、利用者が設定した重み変数wの値および予測アルゴリズムで、どの説明変数を採用したときの予測アルゴリズムの予測精度(誤答率)がよいかを利用者にわかりやすく提示することができる。なお、実施例7Bにかかるデータ解析処理手順は、実施例2Bと同一であるため省略する。
図29は、実施例7Bにおける説明変数ごとの全体誤答率を示すグラフである。図29において、横軸は説明変数、縦軸は全体誤答率を示す。図29では、棒グラフによりグラフ表示する例を示している。図29のグラフを表示することで、利用者は、自身が指定した重み変数wの値および予測アルゴリズムにおいて、どの説明変数を採用したときの予測アルゴリズムの予測精度がよいかを把握することができる。
(実施例8A)
実施例8Aは、残余の説明変数群ごとに全体正答率を算出してグラフ表示する例である。実施例3Aとの相違点は、重み変数wの値と予測アルゴリズムとをあらかじめ指定しておく点である。それ以外は実施例3Aと同一である。これにより、利用者が設定した重み変数wの値および予測アルゴリズムで、どの説明変数を採用しなかったときの予測アルゴリズムの予測精度(正答率)がよいかを利用者にわかりやすく提示することができる。なお、実施例8Aにかかるデータ解析処理手順は、実施例3Aと同一であるため省略する。
図30は、実施例8Aにおける残余の説明変数群ごとの全体正答率を示すグラフである。図30において、横軸は残余の説明変数群、縦軸は全体正答率を示す。図30では、棒グラフによりグラフ表示する例を示している。図30のグラフを表示することで、利用者は、自身が指定した重み変数wの値および予測アルゴリズムにおいて、どの説明変数を採用しなかったときの予測アルゴリズムの予測精度がよいかが把握することができる。
(実施例8B)
実施例8Bは、残余の説明変数群ごとに全体誤答率を算出してグラフ表示する例である。実施例3Bとの相違点は、重み変数wの値と予測アルゴリズムとをあらかじめ指定しておく点である。それ以外は実施例3Bと同一である。これにより、利用者が設定した重み変数wの値および予測アルゴリズムで、どの説明変数を採用しなかったときの予測アルゴリズムの予測精度(誤答率)がよいかを利用者にわかりやすく提示することができる。なお、実施例8Bにかかるデータ解析処理手順は、実施例3Bと同一であるため省略する。
図31は、実施例8Bにおける残余の説明変数群ごとの全体誤答率を示すグラフである。図31において、横軸は残余の説明変数群、縦軸は全体誤答率を示す。図31では、棒グラフによりグラフ表示する例を示している。図31のグラフを表示することで、利用者は、自身が指定した重み変数wの値および予測アルゴリズムにおいて、どの説明変数を採用しなかったときの予測アルゴリズムの予測精度がよいかを把握することができる。
(実施例9A)
実施例9Aは、予測アルゴリズムごとに部分正答率を算出してグラフ表示する例である。具体的には、実施例9Aでは、全体正答率を算出するのではなく、N個の部分正答率に関する箱ひげ図(箱型図ともいう)を表示する。また、実施例6Aと同様、重み変数wの値と説明変数とをあらかじめ指定しておく。このように、N個の部分正答率に関する箱ひげ図を予測アルゴリズムごとに表示することで、予測アルゴリズムごとの部分正答率のばらつきを視覚的に把握することができる。
図32は、実施例9Aにおける予測アルゴリズムごとの部分正答率のばらつきを示すグラフである。図32において、横軸は予測アルゴリズム、縦軸は部分正答率を示す。図32では、箱ひげ図によりグラフ表示する例を示している。図32のグラフを表示することで、利用者は、自身が指定した重み変数wの値および説明変数において、どの予測アルゴリズムを採用すると、部分正答率のばらつきが大きいかまたは小さいかを視覚的に把握することができる。
図33は、実施例9Aにかかるデータ解析処理手順を示すフローチャートである。図33において、まず、データ解析装置は、利用者による入力装置(キーボードやマウス)の操作入力により、重み変数wの値と説明変数とを設定する(ステップS3301)。つぎに、データ解析装置は、未選択の予測アルゴリズムがあるか否かを判断する(ステップS3302)。未選択の予測アルゴリズムがある場合(ステップS3302:Yes)、データ解析装置は、未選択の予測アルゴリズムを選択し(ステップS3303)、評価処理を実行する(ステップS3304)。評価処理(ステップS3304)の詳細については図34で説明する。
評価処理(ステップS3304)のあと、ステップS3302に戻り、未選択の予測アルゴリズムがない場合(ステップS3302:No)、データ解析装置は、図32に示したように、予測アルゴリズムごとに得られた部分正答率のばらつきを示す箱ひげ図の表示処理を実行する(ステップS3305)。これにより、実施例9Aでのデータ解析処理を終了する。
図34は、実施例9Aにかかる、図33に示した評価処理(ステップS3304)の詳細な処理手順を示すフローチャートである。図34において、ステップS1101〜S1109は、図11と同一処理であるため、説明を省略する。ステップS1102において、i>Nとなった場合(ステップS1102:Yes)、N個の部分正答率から箱ひげ図の要素を算出して(ステップS3410)、ステップS3302に移行する。
ここで、箱ひげ図の要素とは、最小値、中央値、最大値、第1四分位点、第3四分位点、平均値、IQR(interquartile range)である。ステップS3410では、これらの箱ひげ図の要素をN個の部分正答率について算出することとなる。これにより、グラフ表示処理(ステップS3305)において、図32に示したような箱ひげ図を表示することができる。
このように、実施例9Aによれば、予測アルゴリズムごとに部分正答率のばらつきを確認することができるため、利用者は、自身が設定した重み変数wの値および説明変数で、どの予測アルゴリズムを用いれば部分正答率のばらつきが小さくなるかを、視覚的に把握することができる。
(実施例9B)
実施例9Bは、予測アルゴリズムごとに部分誤答率を算出してグラフ表示する例である。具体的には、実施例9Bでは、全体誤答率を算出するのではなく、N個の部分誤答率に関する箱ひげ図を表示する。また、実施例6Bと同様、重み変数wの値と説明変数とをあらかじめ指定しておく。このように、N個の部分誤答率に関する箱ひげ図を予測アルゴリズムごとに表示することで、予測アルゴリズムごとの部分誤答率のばらつきを視覚的に把握することができる。
図35は、実施例9Bにおける予測アルゴリズムごとの部分誤答率のばらつきを示すグラフである。図35において、横軸は予測アルゴリズム、縦軸は部分誤答率を示す。図35では、箱ひげ図によりグラフ表示する例を示している。図35のグラフを表示することで、利用者は、自身が指定した重み変数wの値および説明変数において、どの予測アルゴリズムを採用すると、部分誤答率のばらつきが大きいかまたは小さいかを視覚的に把握することができる。
つぎに、実施例9Bにかかるデータ解析処理手順について説明する。実施例9Bにかかるデータ解析処理手順では、評価処理(S3304)以外は、実施例9Aと同一であるため省略する。実施例9Bでは、実施例9Aの評価処理(ステップS3304)の処理内容が異なるため、評価処理(S3304)のかわりに、評価処理(ステップS3604)を実行する。
図36は、実施例9Bにかかる評価処理(ステップS3304)の詳細な処理手順を示すフローチャートである。図36において、ステップS1301〜S1309は、図13と同一処理であるため、説明を省略する。ステップS1302において、i>Nとなった場合(ステップS1302:Yes)、N個の部分誤答率から箱ひげ図の要素を算出して(ステップS3610)、ステップS3302に移行する。
ここで、箱ひげ図の要素とは、実施例9Aと同様、最小値、中央値、最大値、第1四分位点、第3四分位点、平均値、IQR(interquartile range)である。ステップS3610では、これらの箱ひげ図の要素をN個の部分誤答率について算出することとなる。これにより、グラフ表示処理(ステップS3305)において、図35に示したような箱ひげ図を表示することができる。
このように、実施例9Bによれば、予測アルゴリズムごとに部分誤答率のばらつきを確認することができるため、利用者は、自身が設定した重み変数wの値および説明変数で、どの予測アルゴリズムを用いれば部分誤答率のばらつきが小さくなるかを、視覚的に把握することができる。
(実施例10A)
実施例10Aは、ある予測アルゴリズムについて、説明変数ごとに部分正答率を算出してグラフ表示する例である。具体的には、実施例10Aでは、全体正答率を算出するのではなく、N個の部分正答率に関する箱ひげ図を表示する。また、実施例7Aと同様、重み変数wの値と予測アルゴリズムとをあらかじめ指定しておく。このように、N個の部分正答率に関する箱ひげ図を説明変数ごとに表示することで、説明変数ごとの部分正答率のばらつきを視覚的に把握することができる。
図37は、実施例10Aにおける説明変数ごとの部分正答率のばらつきを示すグラフである。図37において、横軸は説明変数、縦軸は部分正答率を示す。図37では、箱ひげ図によりグラフ表示する例を示している。図37のグラフを表示することで、利用者は、自身が指定した重み変数wの値および予測アルゴリズムにおいて、どの説明変数を採用すると、部分正答率のばらつきが大きいかまたは小さいかを視覚的に把握することができる。
図38は、実施例10Aにかかるデータ解析処理手順を示すフローチャートである。図38において、まず、データ解析装置は、利用者による入力装置(キーボードやマウス)の操作入力により、重み変数wの値と予測アルゴリズムとを設定する(ステップS3801)。つぎに、データ解析装置は、未選択の説明変数があるか否かを判断する(ステップS3802)。未選択の説明変数がある場合(ステップS3802:Yes)、データ解析装置は、未選択の説明変数を選択し(ステップS3803)、評価処理を実行する(ステップS3804)。評価処理(ステップS3804)の詳細は、図34の評価処理(ステップS3304)と同一処理内容であるため、省略する。
評価処理(ステップS3804)のあと、ステップS3802に戻り、未選択の予測アルゴリズムがない場合(ステップS3802:No)、データ解析装置は、図37に示したように、説明変数ごとに得られた部分正答率のばらつきを示す箱ひげ図の表示処理を実行する(ステップS3805)。これにより、実施例10Aでのデータ解析処理を終了する。
このように、実施例10Aによれば、説明変数ごとに部分正答率のばらつきを確認することができるため、利用者は、自身が設定した重み変数wの値および予測アルゴリズムで、どの説明変数を用いれば部分正答率のばらつきが小さくなるかを、視覚的に把握することができる。
(実施例10B)
実施例10Bは、ある予測アルゴリズムについて、説明変数ごとに部分誤答率を算出してグラフ表示する例である。具体的には、実施例10Bでは、全体誤答率を算出するのではなく、N個の部分誤答率に関する箱ひげ図を表示する。また、実施例7Bと同様、重み変数wの値と予測アルゴリズムとをあらかじめ指定しておく。このように、N個の部分誤答率に関する箱ひげ図を説明変数ごとに表示することで、説明変数ごとの部分誤答率のばらつきを視覚的に把握することができる。
図39は、実施例10Bにおける説明変数ごとの部分誤答率のばらつきを示すグラフである。図9Bにおいて、横軸は説明変数、縦軸は部分誤答率を示す。図39では、箱ひげ図によりグラフ表示する例を示している。図39のグラフを表示することで、利用者は、自身が指定した重み変数wの値および予測アルゴリズムにおいて、どの説明変数を採用すると、部分誤答率のばらつきが大きいかまたは小さいかを視覚的に把握することができる。
つぎに、実施例10Bにかかるデータ解析処理手順について説明する。実施例10Bにかかるデータ解析処理手順では、評価処理(S3804)以外は、実施例10Aと同一であるため省略する。実施例10Bでは、実施例10Aの評価処理(ステップS3804)の処理内容が異なるため、図36に示した評価処理(ステップS3304)を実行することとなる。
このように、実施例10Bによれば、説明変数ごとに部分誤答率のばらつきを確認することができるため、利用者は、自身が設定した重み変数wの値および予測アルゴリズムで、どの説明変数を用いれば部分誤答率のばらつきが小さくなるかを、視覚的に把握することができる。
(実施例11A)
実施例11Aは、ある予測アルゴリズムについて、残余の説明変数群ごとに部分正答率を算出してグラフ表示する例である。具体的には、実施例11Aでは、全体正答率を算出するのではなく、N個の部分正答率に関する箱ひげ図を表示する。また、実施例8Aと同様、重み変数wの値と予測アルゴリズムとをあらかじめ指定しておく。このように、N個の部分正答率に関する箱ひげ図を残余の説明変数群ごとに表示することで、残余の説明変数群ごとの部分正答率のばらつきを視覚的に把握することができる。
図40は、実施例11Aにおける残余の説明変数群ごとの部分正答率のばらつきを示すグラフである。図40において、横軸は残余の説明変数群、縦軸は部分正答率を示す。図40では、箱ひげ図によりグラフ表示する例を示している。図40のグラフを表示することで、利用者は、自身が指定した重み変数wの値および予測アルゴリズムにおいて、どの説明変数を採用しないと、部分正答率のばらつきが大きいかまたは小さいかを視覚的に把握することができる。
図41は、実施例11Aにかかるデータ解析処理手順を示すフローチャートである。図41において、まず、データ解析装置は、利用者による入力装置(キーボードやマウス)の操作入力により、重み変数wの値と予測アルゴリズムとを設定する(ステップS4101)。つぎに、データ解析装置は、未選択の説明変数があるか否かを判断する(ステップS4102)。未選択の説明変数がある場合(ステップS4102:Yes)、データ解析装置は、未選択の説明変数を選択し(ステップS4103)、選択説明変数を除く残余の説明変数群を選択する(ステップS4104)。
このあと、データ解析装置は、評価処理を実行する(ステップS4105)。評価処理(ステップS4105)の詳細は、図34の評価処理(ステップS3304)と同一処理内容であるため、省略する。
評価処理(ステップS4105)のあと、ステップS4102に戻り、未選択の説明変数がない場合(ステップS4102:No)、データ解析装置は、図40に示したように、残余の説明変数群ごとに得られた部分正答率のばらつきを示す箱ひげ図の表示処理を実行する(ステップS4106)。これにより、実施例11Aでのデータ解析処理を終了する。
このように、実施例11Aによれば、残余の説明変数群ごとに部分正答率のばらつきを確認することができるため、利用者は、自身が設定した重み変数wの値および予測アルゴリズムで、どの説明変数を用いなければ部分正答率のばらつきが小さくなるかを、視覚的に把握することができる。
(実施例11B)
実施例11Bは、ある予測アルゴリズムについて、残余の説明変数群ごとに部分誤答率を算出してグラフ表示する例である。具体的には、実施例11Bでは、全体誤答率を算出するのではなく、N個の部分誤答率に関する箱ひげ図を表示する。また、実施例8Bと同様、重み変数wの値と予測アルゴリズムとをあらかじめ指定しておく。このように、N個の部分誤答率に関する箱ひげ図を残余の説明変数群ごとに表示することで、残余の説明変数群ごとの部分誤答率のばらつきを視覚的に把握することができる。
図42は、実施例11Bにおける残余の説明変数群ごとの部分誤答率のばらつきを示すグラフである。図42において、横軸は残余の説明変数群、縦軸は部分誤答率を示す。図42では、箱ひげ図によりグラフ表示する例を示している。図42のグラフを表示することで、利用者は、自身が指定した重み変数wの値および予測アルゴリズムにおいて、どの説明変数を採用しないと、部分誤答率のばらつきが大きいかまたは小さいかを視覚的に把握することができる。
つぎに、実施例11Bにかかるデータ解析処理手順について説明する。実施例11Bにかかるデータ解析処理手順では、評価処理(S4105)以外は、実施例11Aと同一であるため省略する。実施例11Bでは、実施例11Aの評価処理(ステップS4105)の処理内容が異なるため、図36に示した評価処理(ステップS3304)を実行することとなる。
このように、実施例11Bによれば、残余の説明変数群ごとに部分誤答率のばらつきを確認することができるため、利用者は、自身が設定した重み変数wの値および予測アルゴリズムで、どの説明変数を用いなければ部分誤答率のばらつきが小さくなるかを、視覚的に把握することができる。
(データ解析装置の機能的構成例)
図43は、データ解析装置の機能的構成例を示すブロック図である。データ解析装置は、DB(データベース)4300と、評価処理部4301と、平均化処理部4302と、出力部4303と、入力部4304と、選択部4305と、を含む。評価処理部4301〜選択部4305は、具体的には、たとえば、図5に示したROM502、RAM503、磁気ディスク505、光ディスク507などの記憶装置に記憶されたプログラムをCPU501に実行させることにより、または、I/F509により、その機能を実現する。なお、評価処理部4301〜選択部4305での処理結果は、記憶装置にその都度保持され、他の機能部の処理結果を使用する場合は、記憶装置に保持された処理結果を読み出して自機能部の処理を実行することとなる。
DB4300は、各種情報を記憶する。具体的には、たとえば、図1や図3に示したデータ群を記憶する。また、DB4300は、各種予測アルゴリズム(予測プログラム)を記憶する。DB4300は、具体的には、たとえば、図5に示したROM502、RAM503、磁気ディスク505、光ディスク507などの記憶装置により実現される。
評価処理部4301は、図1〜図4に示した評価処理に対応する機能である。評価処理部4301による評価処理をN(N≧1の自然数)回実行することで、評価結果(たとえば、N個の重み付き部分正答率、N個の重み付き部分誤答率、N個の部分正答率、N個の部分誤答率)を算出することができる。
平均化処理部4302は、評価処理部4301で算出されたN個の重み付き部分正答率、N個の重み付き部分誤答率、N個の部分正答率、N個の部分誤答率を平均化する。これにより、重み付き全体正答率、N個の重み付き全体誤答率、N個の全体正答率、N個の全体誤答率を得ることができる。
出力部4303は、評価処理部4301からの評価結果や、平均化処理部4302による平均化結果(重み付き全体正答率、N個の重み付き全体誤答率、N個の全体正答率、N個の全体誤答率)を出力する。具体的には、たとえば、出力部4303は、評価結果や平均化結果を、実施例1A〜11A,1B〜11Bに示したように、グラフ表示する。特に、重み変数wに固定値を設定していない場合は、重み変数wの変化を示すグラフを表示することになる。このように、グラフ表示することで、利用者にわかりやすく予測アルゴリズムの予測精度の違いを提示することができる。
入力部4304は、重み変数wの値の入力を受け付ける。具体的には、たとえば、入力部4304は、利用者が入力装置(キーボードやマウス)を操作することで、重み変数wの値を入力する。重み変数wの値が入力されることで、N個の部分正答率、N個の部分誤答率、N個の全体正答率、N個の全体誤答率が得られ、グラフ表示することができる。また、入力部4304では、利用者が入力装置を操作することで、説明変数や予測アルゴリズムを指定することもできる。これにより、指定された説明変数や予測アルゴリズムで評価処理部4301による評価処理が実行されることとなる。
選択部4305は、データ群の各々のデータで定義されている説明変数群の中から未選択の説明変数を選択する。選択部4305により説明変数が選択された場合、選択説明変数について評価処理部4301により評価処理が実行されることとなる。また、選択部4305は、説明変数群の中から未選択の説明変数を選択し、選択説明変数を除く残余の説明変数群を、評価処理部4301に与える説明変数群として選択する。これにより、残余の説明変数群について評価処理部4301により評価処理が実行されることとなる。
つぎに、評価処理部4301の詳細な機能について説明する。評価処理部4301は、抽出部4311と、生成部4312と、第1の算出部4313と、第2の算出部4314と、第1の特定部4315と、第2の特定部4316と、演算部4317と、を備える。
抽出部4311は、DB4300からデータ群を抽出する。具体的には、たとえば、抽出部4311は、図1〜図4に示したように、正例データ群からK個の正例データをランダムサンプリングする。同様に、負例データ群から同じくK個の負例データをランダムサンプリングする。
このように、正例データ群および負例データ群ともに同数のデータ数を抽出することで、正例データ数と負例データ数とに差がある場合でも、同数(K個)抽出できるため、正例データ数と負例データ数がほぼ同等であるという予測式生成の前提条件に適合する。したがって、生成される予測式の予測精度の低下を防止することができる。なお、正例データ群および負例データ群から同数(K個)のデータをランダムサンプリングしているが、同数にかぎらず、予測精度に影響を与えない程度の差であれば、同数でなくてもよい。
生成部4312は、予測アルゴリズムに基づく予測式を生成する。予測式は、図2および図4の(21)に示したように、抽出部4311によるランダムサンプリングによって得られた根拠用データ群を用いて求められる。
第1の算出部4313は、生成部4312によって生成された予測式に、正例実測値の集合から正例実測値群を除いた残余の正例実測値群を各々与えることにより、第1の予測値群を算出する。具体的には、たとえば、第1の算出部4313は、図2に示したように、正例データ群から根拠用正例データ群(ランダムサンプリングされたK個の正例データ)を除いた評価用正例データ群を予測式に与えることで、評価用正例データの予測値群を得る。より具体的には、図2の(22)に示したように、予測式に評価用正例データ群の各々の評価用正例データを代入し、正規化をおこなうことで、評価用正例データの予測値群を得る。
第2の算出部4314は、生成部4312によって生成された予測式に、負例実測値の集合から負例実測値群を除いた残余の負例実測値群を各々与えることにより、第2の予測値群を算出する。具体的には、たとえば、第2の算出部4314は、図4に示したように、負例データ群から根拠用負例データ群(ランダムサンプリングされたK個の負例データ)を除いた評価用負例データ群を予測式に与えることで、評価用負例データの予測値群を得る。より具体的には、図4の(22)に示したように、予測式に評価用負例データ群の各々の評価用負例データを代入し、正規化をおこなうことで、評価用負例データの予測値群を得る。
第1の特定部4315は、第1の算出部4313によって算出された第1の予測値群のうち予測式への入力元となる正例実測値と一致した第1の一致件数と、正例実測値と不一致となった第1の不一致件数を特定する。具体的には、たとえば、図2および図4に示したように、第1の特定部4315は、正例・正例件数(第1の一致件数)と、正例・負例件数(第1の不一致件数)を特定する。
第2の特定部4316は、第2の算出部4314によって算出された第2の予測値群のうち予測式への入力元となる負例実測値と一致した第2の一致件数と、負例実測値と不一致となった第2の不一致件数を特定する。具体的には、たとえば、図2および図4に示したように、第2の特定部4316は、負例・負例件数(第2の一致件数)と、負例・正例件数(第2の不一致件数)を特定する。
演算部4317は、第1および第2の特定部4316によって特定された特定結果に基づいて、予測アルゴリズムについて実測値と予測値との一致度を示す正答率が重み変数に応じて変動する重み付き正答率を演算する。重み付き部分正答率を演算する場合は、演算部4317は、上述した式(1)により、重み付き部分正答率PCAwを演算する。重み変数wが指定されている場合は、重み変数wの値を、式(1)に代入すればよい。
また、重み付き部分誤答率を演算する場合は、演算部4317は、上述した式(2)により、重み付き部分正答率PWAwを演算する。重み変数wが指定されている場合は、重み変数wの値を、式(2)に代入すればよい。
このように、評価処理部4301では、抽出部4311による1回のランダムサンプリングで重み付き部分正答率、部分正答率、重み付き部分誤答率、部分誤答率のいずれかを演算することができる。
また、演算部4317は、実施例9A〜11Aに示したように、箱ひげ図を表示する場合には、N個の部分正答率から箱ひげ図の要素を計算することで、出力部4303において箱ひげ図をグラフ表示することができる。同様に、演算部4317は、実施例9B〜11Bに示したように、箱ひげ図を表示する場合には、N個の部分誤答率から箱ひげ図の要素を計算することで、出力部4303において箱ひげ図をグラフ表示することができる。
以上説明したように、上述した実施の形態によれば、目的変数の値ごとのデータ件数が著しく異なる場合(換言すれば、正例データ数と負例データ数とが著しく異なる)であっても、目的変数の値ごとに同数のデータをサンプリングし、説明変数をもとに目的変数を予測する予測式を作成するため、予測式を精度良く作成することができる。
また、予測式を作成するための根拠用データ群と、予測式を評価するための評価用データ群について、各々異なるデータをサンプリングすることになるため、予測式の予測精度を適切に評価することができる。すなわち、予測式を生成したデータと同一データで評価しても予測どおりになり意味がない。したがって、予測式の生成と評価を異なるデータでおこなうことで、予測式を適切に評価することができる。
また、各ランダムサンプリングで根拠用データ群を抽出するということは、各ランダムサンプリングで抽出されなかった評価用データ群も、毎回異なるデータ群になる。このように、ランダムサンプリングを複数回おこなって、ランダムサンプリングの都度評価することで、予測式の予測精度のばらつきを適切に評価することができる。
具体的には、同じ説明変数を採用した場合にどの予測アルゴリズムに予測精度のばらつきがあるか、どの説明変数を採用した場合に予測アルゴリズムに予測精度のばらつきがあるか、どの説明変数を採用しなかった場合に予測アルゴリズムに予測精度のばらつきがあるか、といった予測アルゴリズムの予測精度のばらつきを適切に評価することができる。
また、本実施の形態では、説明変数と目的変数の関係の程度について重回帰式の係数で評価するのではなく、予測式を各々の説明変数を用いて作成したり、各々の説明変数を用いないで(残余の説明変数群で)作成したりすることで、予測式の予測精度を評価する。これにより、説明変数と目的変数のデータ傾向が複雑な場合に、重回帰分析以外の適切な予測アルゴリズム(たとえば、サポートベクターマシンや決定木)を用いて、どの説明変数が、目的変数に関係しているかについての解析を適切におこなうことができる。
また、利用者によっては、正例(故障解析でいう「正常」、レコメンデーション解析でいう「購入した」、融資の与信に関するデータ解析でいう「返済できた」)のデータ数が多い場合は、負例に重きをおいた解析結果を得たいというニーズがある。
また、同様に、利用者によっては、負例(故障解析でいう「故障」、レコメンデーション解析でいう「購入しなかった」、融資の与信に関するデータ解析でいう「返済できなかった」)のデータ数が多い場合は、正例に重きをおいた解析結果を得たいというニーズがある。
このように、利用者のニーズによって正例、負例のいずれに重きを置くかが異なるため、重み変数wが変化する重み付き全体正答率や重み付き全体誤答率を表示することで、『どの程度の重みにすれば、予測アルゴリズムの精度(正答率や誤答率)がよくなるか』といったことを、わかりやすく提示することができる。したがって、利用者によって使い勝手のよいデータ解析結果を提供することができる。
また、利用者が重み変数wの値を指定することで、その重み変数wの値で、全体正答率や全体誤答率をグラフ表示したり、部分正答率や部分誤答率のばらつきをグラフ表示(たとえば、箱ひげ図)する。したがって、利用者が重きをおきたい状況を反映して、『どの予測アルゴリズムの精度(正答率や誤答率)がよいか』といったことを、わかりやすく提示することができる。
なお、上述した実施の形態では、回路の故障解析やレコメンデーション解析、融資の与信に関するデータ解析について実施例を用いて説明したが、これらのデータ解析には限らず、各種装置の性能に関するデータ解析、各種商品やサービスに関するデータ解析に適用することができる。
また、上述した実施の形態では、正例データ群および負例データ群からそれぞれK個サンプリングしているが、Kは、正例データ群および負例データ群のうちデータ数が少ない方のデータ群のデータ数よりも低い値となる。また、ランダムサンプリングの都度、サンプリングされるデータをなるべく前回と異なるデータをサンプリングするのが好ましい。このため、Kは、少ない方のデータ群のデータ数の2/3以下、さらに好ましくは1/2以下としてもよい。
なお、本実施の形態で説明したデータ解析方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本データ解析プログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。
上述した実施の形態に関し、さらに以下の付記を開示する。
(付記1)少なくとも1つ以上の説明変数である説明変数群に対する目的変数が正例である正例実測値の集合と前記説明変数群に対する前記目的変数が負例である負例実測値の集合を有する実測値集合を記憶する記憶装置を有するコンピュータに、
前記実測値集合から、前記正例実測値と前記負例実測値とが同数となるように正例実測値群および負例実測値群をランダムに抽出する抽出工程と、
前記抽出工程によって抽出された正例実測値群および負例実測値群に基づいて、予測アルゴリズムについて前記目的変数を予測する予測式を生成する生成工程と、
を実行させることを特徴とするデータ解析プログラム。
(付記2)前記生成工程によって生成された予測式に、前記正例実測値の集合から前記正例実測値群を除いた残余の正例実測値群を各々与えることにより、第1の予測値群を算出する第1の算出工程と、
前記生成工程によって生成された予測式に、前記負例実測値の集合から前記負例実測値群を除いた残余の負例実測値群を各々与えることにより、第2の予測値群を算出する第2の算出工程と、
前記第1の算出工程によって算出された第1の予測値群のうち前記予測式への入力元となる前記正例実測値と一致した第1の一致件数と、前記正例実測値と不一致となった第1の不一致件数を特定する第1の特定工程と、
前記第2の算出工程によって算出された第2の予測値群のうち前記予測式への入力元となる前記負例実測値と一致した第2の一致件数と、前記負例実測値と不一致となった第2の不一致件数を特定する第2の特定工程と、
前記第1および第2の特定工程によって特定された特定結果に基づいて、前記予測アルゴリズムについて実測値と予測値との一致度を示す正答率が重み変数に応じて変動する重み付き正答率を演算する演算工程と、
前記演算工程によって演算された演算結果を出力する出力工程と、
を前記コンピュータに実行させることを特徴とする付記1に記載のデータ解析プログラム。
(付記3)前記抽出工程、前記生成工程、前記第1の算出工程、前記第2の算出工程、前記第1の特定工程、前記第2の特定工程、および前記演算工程を、前記コンピュータに複数回実行させ、
前記演算工程によって演算された複数の重み付き正答率を平均化することにより、前記予測アルゴリズムについて実測値と予測値との一致度を示す正答率が重み変数に応じて変動する重み付き平均正答率を出力する平均化工程を前記コンピュータに実行させることを特徴とする付記2に記載のデータ解析プログラム。
(付記4)予測アルゴリズムごとに、前記抽出工程、前記生成工程、前記第1の算出工程、前記第2の算出工程、前記第1の特定工程、前記第2の特定工程、および前記演算工程を、前記コンピュータに複数回実行させ、
前記演算工程によって前記予測アルゴリズムごとに演算された複数の重み付き正答率を平均化することにより、前記予測アルゴリズムについて実測値と予測値との一致度を示す正答率が重み変数に応じて変動する重み付き平均正答率を出力する平均化工程を、前記予測アルゴリズムごとに前記コンピュータに実行させ、
前記出力工程は、前記予測アルゴリズムごとに出力された重み付き平均正答率をグラフ表示することを特徴とする付記2に記載のデータ解析プログラム。
(付記5)前記重み変数の値の入力を受け付ける入力工程を前記コンピュータに実行させ、
前記出力工程は、前記予測アルゴリズムごとに出力された重み付き平均正答率に、前記入力工程によって入力された前記重み変数の値が与えられた前記予測アルゴリズムごとの平均正答率を、グラフ表示することを特徴とする付記4に記載のデータ解析プログラム。
(付記6)前記説明変数群の中から未選択の説明変数を選択する選択工程を前記コンピュータに実行させ、
前記選択工程によって選択された説明変数ごとに、前記抽出工程、前記生成工程、前記第1の算出工程、前記第2の算出工程、前記第1の特定工程、前記第2の特定工程、および前記演算工程を、前記コンピュータに複数回実行させ、
前記演算工程によって前記説明変数ごとに演算された複数の重み付き正答率を平均化することにより、前記予測アルゴリズムについて実測値と予測値との一致度を示す正答率が重み変数に応じて変動する重み付き平均正答率を出力する平均化工程を、前記説明変数ごとに前記コンピュータに実行させ、
前記出力工程は、前記説明変数ごとに出力された重み付き平均正答率をグラフ表示することを特徴とする付記2に記載のデータ解析プログラム。
(付記7)前記重み変数の値の入力を受け付ける入力工程を前記コンピュータに実行させ、
前記出力工程は、前記説明変数ごとに出力された重み付き平均正答率に前記入力工程によって入力された前記重み変数の値が与えられた前記説明変数ごとの平均正答率を、グラフ表示することを特徴とする付記6に記載のデータ解析プログラム。
(付記8)前記説明変数群の中から未選択の説明変数を選択する選択工程を前記コンピュータに実行させ、
前記選択工程によって選択されなかった残余の説明変数群ごとに、前記抽出工程、前記生成工程、前記第1の算出工程、前記第2の算出工程、前記第1の特定工程、前記第2の特定工程、および前記演算工程を、前記コンピュータに複数回実行させ、
前記演算工程によって前記残余の説明変数群ごとに演算された複数の重み付き正答率を平均化することにより、前記予測アルゴリズムについて実測値と予測値との一致度を示す正答率が重み変数に応じて変動する重み付き平均正答率を出力する平均化工程を、前記残余の説明変数群ごとに前記コンピュータに実行させ、
前記出力工程は、前記残余の説明変数群ごとに出力された重み付き平均正答率をグラフ表示することを特徴とする付記2に記載のデータ解析プログラム。
(付記9)前記重み変数の値の入力を受け付ける入力工程を前記コンピュータに実行させ、
前記出力工程は、前記残余の説明変数群ごとに出力された重み付き平均正答率に、前記入力工程によって入力された前記重み変数の値が与えられた前記残余の説明変数群ごとの平均正答率を、グラフ表示することを特徴とする付記8に記載のデータ解析プログラム。
(付記10)前記説明変数群の中から未選択の説明変数を選択する選択工程を前記コンピュータに実行させ、
前記選択工程によって選択された説明変数ごとに、前記抽出工程、前記生成工程、前記第1の算出工程、前記第2の算出工程、前記第1の特定工程、前記第2の特定工程、および前記演算工程を、前記コンピュータに複数回実行させ、前記平均化工程を前記説明変数ごとに前記コンピュータに実行させる処理を、予測アルゴリズムごとに前記コンピュータに実行させ、
前記出力工程は、前記説明変数ごとに出力された重み付き平均正答率を、前記予測アルゴリズムごとにグラフ表示することを特徴とする付記3に記載のデータ解析プログラム。
(付記11)前記説明変数群の中から未選択の説明変数を選択する選択工程を前記コンピュータに実行させ、
前記選択工程によって選択されなかった残余の説明変数群ごとに、前記抽出工程、前記生成工程、前記第1の算出工程、前記第2の算出工程、前記第1の特定工程、前記第2の特定工程、および前記演算工程を、前記コンピュータに複数回実行させ、前記平均化工程を前記残余の説明変数群ごとに前記コンピュータに実行させる処理を、予測アルゴリズムごとに前記コンピュータに実行させ、
前記出力工程は、前記残余の説明変数群ごとに出力された重み付き平均正答率を、前記予測アルゴリズムごとにグラフ表示することを特徴とする付記3に記載のデータ解析プログラム。
(付記12)予測アルゴリズム群の中から未選択の予測アルゴリズムを選択する選択工程と、
前記重み変数の値の入力を受け付ける入力工程と、を前記コンピュータに実行させ、
前記選択工程によって選択された予測アルゴリズムごとに、前記抽出工程、前記生成工程、前記第1の算出工程、前記第2の算出工程、前記第1の特定工程、前記第2の特定工程、および前記演算工程を、前記コンピュータに複数回実行させ、
前記出力工程は、前記予測アルゴリズムごとに複数個出力された重み付き正答率に前記入力工程によって入力された前記重み変数の値が与えられた、前記予測アルゴリズムごとに複数個存在する正答率について、それぞればらつきを示すグラフを表示することを特徴とする付記2に記載のデータ解析プログラム。
(付記13)前記説明変数群の中から未選択の説明変数を選択する選択工程と、
前記重み変数の値の入力を受け付ける入力工程と、を前記コンピュータに実行させ、
前記選択工程によって選択された説明変数ごとに、前記抽出工程、前記生成工程、前記第1の算出工程、前記第2の算出工程、前記第1の特定工程、前記第2の特定工程、および前記演算工程を、前記コンピュータに複数回実行させ、
前記出力工程は、前記説明変数ごとに複数個出力された重み付き正答率に前記入力工程によって入力された前記重み変数の値が与えられた、前記説明変数ごとに複数個存在する正答率について、それぞればらつきを示すグラフを表示することを特徴とする付記2に記載のデータ解析プログラム。
(付記14)前記説明変数群の中から未選択の説明変数を選択する選択工程と、
前記重み変数の値の入力を受け付ける入力工程と、を前記コンピュータに実行させ、
前記選択工程によって選択されなかった残余の説明変数群ごとに、前記抽出工程、前記生成工程、前記第1の算出工程、前記第2の算出工程、前記第1の特定工程、前記第2の特定工程、および前記演算工程を、前記コンピュータに複数回実行させ、
前記出力工程は、前記残余の説明変数群ごとに複数個出力された重み付き正答率に前記入力工程によって入力された前記重み変数の値が与えられた、前記残余の説明変数群ごとに複数個存在する正答率について、それぞればらつきを示すグラフを表示することを特徴とする付記2に記載のデータ解析プログラム。
(付記15)前記演算工程は、下記式(1)に基づいて、前記重み付き正答率を演算することを特徴とする付記2〜14のいずれか一つに記載のデータ解析プログラム。
PCAw=w×Npp/(Npp+Npn)+(1−w)×Nnn/(Nnn+Nnp)・・・(1)
ただし、PCAwは前記重み付き正答率、wは前記重み変数、Nppは前記第1の一致件数、Npnは前記第1の不一致件数、Nnnは前記第2の一致件数、Nnpは前記第2の不一致件数。
(付記16)前記生成工程によって生成された予測式に、前記正例実測値の集合から前記正例実測値群を除いた残余の正例実測値群を各々与えることにより、第1の予測値群を算出する第1の算出工程と、
前記生成工程によって生成された予測式に、前記負例実測値の集合から前記負例実測値群を除いた残余の負例実測値群を各々与えることにより、第2の予測値群を算出する第2の算出工程と、
前記第1の算出工程によって算出された第1の予測値群のうち前記予測式への入力元となる前記正例実測値と一致した第1の一致件数と、前記正例実測値と不一致となった第1の不一致件数を特定する第1の特定工程と、
前記第2の算出工程によって算出された第2の予測値群のうち前記予測式への入力元となる前記負例実測値と一致した第2の一致件数と、前記負例実測値と不一致となった第2の不一致件数を特定する第2の特定工程と、
前記第1および第2の特定工程によって特定された特定結果に基づいて、前記予測アルゴリズムについて実測値と予測値との不一致度を示す誤答率が重み変数に応じて変動する重み付き誤答率を演算する演算工程と、
前記演算工程によって演算された演算結果を出力する出力工程と、
を前記コンピュータに実行させることを特徴とする付記1に記載のデータ解析プログラム。
(付記17)前記抽出工程、前記生成工程、前記第1の算出工程、前記第2の算出工程、前記第1の特定工程、前記第2の特定工程、および前記演算工程を、前記コンピュータに複数回実行させ、
前記演算工程によって演算された複数の重み付き誤答率を平均化することにより、前記予測アルゴリズムについて実測値と予測値との不一致度を示す誤答率が重み変数に応じて変動する重み付き平均誤答率を出力する平均化工程を前記コンピュータに実行させることを特徴とする付記16に記載のデータ解析プログラム。
(付記18)予測アルゴリズムごとに、前記抽出工程、前記生成工程、前記第1の算出工程、前記第2の算出工程、前記第1の特定工程、前記第2の特定工程、および前記演算工程を、前記コンピュータに複数回実行させ、
前記演算工程によって前記予測アルゴリズムごとに演算された複数の重み付き誤答率を平均化することにより、前記予測アルゴリズムについて実測値と予測値との不一致度を示す誤答率が重み変数に応じて変動する重み付き平均誤答率を出力する平均化工程を、前記予測アルゴリズムごとに前記コンピュータに実行させ、
前記出力工程は、前記予測アルゴリズムごとに出力された重み付き平均誤答率をグラフ表示することを特徴とする付記16に記載のデータ解析プログラム。
(付記19)前記重み変数の値の入力を受け付ける入力工程を前記コンピュータに実行させ、
前記出力工程は、前記予測アルゴリズムごとに出力された重み付き平均誤答率に、前記入力工程によって入力された前記重み変数の値が与えられた前記予測アルゴリズムごとの平均誤答率を、グラフ表示することを特徴とする付記18に記載のデータ解析プログラム。
(付記20)前記説明変数群の中から未選択の説明変数を選択する選択工程を前記コンピュータに実行させ、
前記選択工程によって選択された説明変数ごとに、前記抽出工程、前記生成工程、前記第1の算出工程、前記第2の算出工程、前記第1の特定工程、前記第2の特定工程、および前記演算工程を、前記コンピュータに複数回実行させ、
前記演算工程によって前記説明変数ごとに演算された複数の重み付き誤答率を平均化することにより、前記予測アルゴリズムについて実測値と予測値との不一致度を示す誤答率が重み変数に応じて変動する重み付き平均誤答率を出力する平均化工程を、前記説明変数ごとに前記コンピュータに実行させ、
前記出力工程は、前記説明変数ごとに出力された重み付き平均誤答率をグラフ表示することを特徴とする付記16に記載のデータ解析プログラム。
(付記21)前記重み変数の値の入力を受け付ける入力工程を前記コンピュータに実行させ、
前記出力工程は、前記説明変数ごとに出力された重み付き平均誤答率に前記入力工程によって入力された前記重み変数の値が与えられた前記説明変数ごとの平均誤答率を、グラフ表示することを特徴とする付記20に記載のデータ解析プログラム。
(付記22)前記説明変数群の中から未選択の説明変数を選択する選択工程を前記コンピュータに実行させ、
前記選択工程によって選択されなかった残余の説明変数群ごとに、前記抽出工程、前記生成工程、前記第1の算出工程、前記第2の算出工程、前記第1の特定工程、前記第2の特定工程、および前記演算工程を、前記コンピュータに複数回実行させ、
前記演算工程によって前記残余の説明変数群ごとに演算された複数の重み付き誤答率を平均化することにより、前記予測アルゴリズムについて実測値と予測値との不一致度を示す誤答率が重み変数に応じて変動する重み付き平均誤答率を出力する平均化工程を、前記残余の説明変数群ごとに前記コンピュータに実行させ、
前記出力工程は、前記残余の説明変数群ごとに出力された重み付き平均誤答率をグラフ表示することを特徴とする付記16に記載のデータ解析プログラム。
(付記23)前記重み変数の値の入力を受け付ける入力工程を前記コンピュータに実行させ、
前記出力工程は、前記残余の説明変数群ごとに出力された重み付き平均誤答率に、前記入力工程によって入力された前記重み変数の値が与えられた前記残余の説明変数群ごとの平均誤答率を、グラフ表示することを特徴とする付記22に記載のデータ解析プログラム。
(付記24)前記説明変数群の中から未選択の説明変数を選択する選択工程を前記コンピュータに実行させ、
前記選択工程によって選択された説明変数ごとに、前記抽出工程、前記生成工程、前記第1の算出工程、前記第2の算出工程、前記第1の特定工程、前記第2の特定工程、および前記演算工程を、前記コンピュータに複数回実行させ、前記平均化工程を前記説明変数ごとに前記コンピュータに実行させる処理を、予測アルゴリズムごとに前記コンピュータに実行させ、
前記出力工程は、前記説明変数ごとに出力された重み付き平均誤答率を、前記予測アルゴリズムごとにグラフ表示することを特徴とする付記17に記載のデータ解析プログラム。
(付記25)前記説明変数群の中から未選択の説明変数を選択する選択工程を前記コンピュータに実行させ、
前記選択工程によって選択されなかった残余の説明変数群ごとに、前記抽出工程、前記生成工程、前記第1の算出工程、前記第2の算出工程、前記第1の特定工程、前記第2の特定工程、および前記演算工程を、前記コンピュータに複数回実行させ、前記平均化工程を前記残余の説明変数群ごとに前記コンピュータに実行させる処理を、予測アルゴリズムごとに前記コンピュータに実行させ、
前記出力工程は、前記残余の説明変数群ごとに出力された重み付き平均誤答率を、前記予測アルゴリズムごとにグラフ表示することを特徴とする付記17に記載のデータ解析プログラム。
(付記26)予測アルゴリズム群の中から未選択の予測アルゴリズムを選択する選択工程と、
前記重み変数の値の入力を受け付ける入力工程と、を前記コンピュータに実行させ、
前記選択工程によって選択された予測アルゴリズムごとに、前記抽出工程、前記生成工程、前記第1の算出工程、前記第2の算出工程、前記第1の特定工程、前記第2の特定工程、および前記演算工程を、前記コンピュータに複数回実行させ、
前記出力工程は、前記予測アルゴリズムごとに複数個出力された重み付き誤答率に前記入力工程によって入力された前記重み変数の値が与えられた、前記予測アルゴリズムごとに複数個存在する誤答率について、それぞればらつきを示すグラフを表示することを特徴とする付記16に記載のデータ解析プログラム。
(付記27)前記説明変数群の中から未選択の説明変数を選択する選択工程と、
前記重み変数の値の入力を受け付ける入力工程と、を前記コンピュータに実行させ、
前記選択工程によって選択された説明変数ごとに、前記抽出工程、前記生成工程、前記第1の算出工程、前記第2の算出工程、前記第1の特定工程、前記第2の特定工程、および前記演算工程を、前記コンピュータに複数回実行させ、
前記出力工程は、前記説明変数ごとに複数個出力された重み付き誤答率に前記入力工程によって入力された前記重み変数の値が与えられた、前記説明変数ごとに複数個存在する誤答率について、それぞればらつきを示すグラフを表示することを特徴とする付記16に記載のデータ解析プログラム。
(付記28)前記説明変数群の中から未選択の説明変数を選択する選択工程と、
前記重み変数の値の入力を受け付ける入力工程と、を前記コンピュータに実行させ、
前記選択工程によって選択されなかった残余の説明変数群ごとに、前記抽出工程、前記生成工程、前記第1の算出工程、前記第2の算出工程、前記第1の特定工程、前記第2の特定工程、および前記演算工程を、前記コンピュータに複数回実行させ、
前記出力工程は、前記残余の説明変数群ごとに複数個出力された重み付き誤答率に前記入力工程によって入力された前記重み変数の値が与えられた、前記残余の説明変数群ごとに複数個存在する誤答率について、それぞればらつきを示すグラフを表示することを特徴とする付記16に記載のデータ解析プログラム。
(付記29)前記演算工程は、下記式(2)に基づいて、前記重み付き誤答率を演算することを特徴とする付記16〜28のいずれか一つに記載のデータ解析プログラム。
PWAw=w×Npn/(Npp+Npn)+(1−w)×Nnp/(Nnn+Nnp)・・・(2)
ただし、PWAwは前記重み付き誤答率、wは前記重み変数、Nppは前記第1の一致件数、Npnは前記第1の不一致件数、Nnnは前記第2の一致件数、Nnpは前記第2の不一致件数。
(付記30)前記説明変数群は、回路の故障原因に関する数値情報であり、前記説明変数は、前記故障原因による正常または故障を示す数値情報であることを特徴とする付記1〜29のいずれか一つに記載のデータ解析プログラム。
(付記31)前記説明変数群は、顧客の属性に関する数値情報であり、前記説明変数は、商品の購入実績状況を示す数値情報であることを特徴とする付記1〜29のいずれか一つに記載のデータ解析プログラム。
(付記32)前記説明変数群は、顧客の属性に関する数値情報であり、前記説明変数は、前記顧客への融資後の返済状況を示す数値情報であることを特徴とする付記1〜29のいずれか一つに記載のデータ解析プログラム。
(付記33)少なくとも1つ以上の説明変数である説明変数群に対する目的変数が正例である正例実測値の集合と前記説明変数群に対する前記目的変数が負例である負例実測値の集合を有する実測値集合を記憶する記憶装置を有するコンピュータが、
前記実測値集合から、前記正例実測値と前記負例実測値とが同数となるように正例実測値群および負例実測値群をランダムに抽出する抽出工程と、
前記抽出工程によって抽出された正例実測値群および負例実測値群に基づいて、予測アルゴリズムについて前記目的変数を予測する予測式を生成する生成工程と、
を実行することを特徴とするデータ解析方法。
(付記34)少なくとも1つ以上の説明変数である説明変数群に対する目的変数が正例である正例実測値の集合と前記説明変数群に対する前記目的変数が負例である負例実測値の集合を有する実測値集合を記憶する記憶装置を有するデータ解析装置であって、
前記実測値集合から、前記正例実測値と前記負例実測値とが同数となるように正例実測値群および負例実測値群をランダムに抽出する抽出手段と、
前記抽出手段によって抽出された正例実測値群および負例実測値群に基づいて、予測アルゴリズムについて前記目的変数を予測する予測式を生成する生成手段と、
を備えることを特徴とするデータ解析装置。