トップ 最新 追記

 KEIBA-ROBOs 開発奮闘記(仮)

博士達が競馬予想ロボットを本気で開発しております


2008-11-11 火曜日(大安)

_ [データマイニング] 決定木 その四

前回から少し時間が空いてしまったので自分の復習もかねて、決定木その一で使った例題を基に情報量を計算してみます。

データを再掲すると。

No.  性別(S)  年齢(O) 血圧(P) 効いた薬(D)
1     男      20     中      A 
2     女      73     中      B 
3     女      37     高      A 
4     男      33     低      B 
5     女      48     高      A 
6     男      29     中      A 
7     女      52     中      B 
8     男      42     低      B 
9     男      61     中      B 
10    女      30     中      A 
11    女      26     低      B
12    男      54     高      A 

_ でした。前回の説明に沿って進めると、分類属性Cは効いた薬(D)で、その属性値CiはA, Bの2種類です。また、

 N  : データのサンプル数 = 12
 nA : CAを取るデータのサンプル数 = 6
 nB : CBを取るデータのサンプル数 = 6

_ となります。血圧(P)[低、中、高]を分類に使用する属性として選択した場合各エントロピーは、

 

_ となります。なお上記の計算では血圧(P)の属性値、低、中、高の順に計算しています。よってこの時の情報量利得、情報量利得比は、

 

_ となります。一方分類に性別(S)[男、女]を使用すると、

 

_ で、Gainの値は負となり性別が分類に使用されない事が判ります。

ようやく復習できてきたので次回から他のいろいろな属性選択指標の話を続けます。



2008-11-13 木曜日(先勝)

_ [データマイニング] 統計いろいろ:相関係数

データマイニングは、統計の手法を組み合わせてデータの持つ性質を理解します。データの性質を調べる基本は2つの量の間に関係性が有るか無いかです。関係の強さは相関係数と呼ばれる量で評価できます。xyの量の間の相関係数は次のように

 

_ です。ここで、, は、それぞれxyの平均値です。相関係数についての解説は他に譲るとして、以下にまめ備忘録を列挙します。

● 相関係数の有意検定

(相関係数が0である)母集団から抽出した標本に関する相関係数をrとした時、

 

_ は、自由度N-2のt分布に従います。よって、母相関係数が0である、という仮説が棄却出来るかどうかによって検定できます。

● 回帰と相関:x,yの相関係数をRとすると、回帰式は、

 

_ とかけます。ここで、Sijは変数i,jの共分散。また決定係数=R2

● Pearson積率相関係数

  相関係数の絶対値 解釈

  0.0〜0.2   ほとんど相関関係がない

  0.2〜0.4   やや相関関係がある

  0.4〜0.7   かなり相関関係がある

  0.7〜1.0  強い相関関係がある

● Spearman順位相関係数

   Pearson相関係数に準ずる。

● Kendall順位相関係数

   上位二つとは目安が異なる。

  ▪ 独立係数(質的×質的):Cramer's V

   0.0〜0.1   ほとんど相関関係がない

   0.1〜0.3   やや相関関係がある

   0.3〜0.5   かなり相関関係がある

   0.5〜1.0   強い相関関係がある

▪ 相関比(量的×質的)

   0.0〜0.25  ほとんど相関関係がない

   0.25〜0.5   やや相関関係がある

   0.5〜0.8  かなり相関関係がある

   0.8〜1.0   強い相関関係がある

以上、相関係数まめ備忘録でした。



2008-11-18 火曜日(赤口)

_ [データマイニング] ヒストグラムから連続分布へ

リカ型1号では使っているデータがガウス分布に従っているとして計算していますが、精度向上のためデータから分布を推定するロジックに変える計画です。そこで使われる確率密度分布推定について。

_ 推定する対象はヒストグラムなのですが、棒グラフであるヒストグラムは、その棒の幅の取り方によって大きく形が変わります。例えば次の図は同じデータを、幅を変えてヒストグラムにした場合の図です。

ヒストグラム
 そこで、まずはヒストグラムについての理論的な話から始めます。  サンプル数 n のデータをある階級にわけます。k 番目の階級について、データの値は、小区間 Ck=[tk, tk+1) の値を取るとします。  この階級の度数をνkすると、

_ となります。このとき、確率の線密度は、


_ と書けます。ここで、h は階級の幅で、h = tk+1-tk です。また、


_ を満たします。データがある階級に入るか入らない確率が一定のとき、階級を設定してデータを配置する試行はベルヌーイ試行ですので、度数は2項分布 B(n,pk) に従います。ここで、度数νk が実現する確率をpk とすると、未知の正確な確率線密度関数g(x) を用いて、


_ と表せます。また、度数 νk が2項分布に従う事から、期待値と、分散は以下のようになります。


_ よって線密度関数に関する期待値と分散は、


_ となります。

以上で、ヒストグラムに関する基礎的な関係が定式化できたので次回に最適な階級幅と密度の推定の説明をします。



2008-11-26 水曜日(友引)

_ [データマイニング] ヒストグラムから連続分布へ〜推定の定式化〜

ヒストグラムから連続分布を推定するためには、推定するヒストグラムの最適な階級幅を決める事が必要な事が、前回の説明から判りました。今回は、最適な階級幅を決めるためにどう定式化して推定するかについて説明します。

ある任意の点 x0 において、推定される階級幅 h を持つ密度関数と未知の正確な密度の間の誤差は、


_ と表せます。ここで平均2乗誤差(MSE)を考えると、


_ となり、右辺第1項目のバイアス(度数に対する誤差)と分散の和となります。

バイアスは階級幅が大きい程大きな値を取り、逆に分散は、階級幅が小さくなる程大きくなります。

これは、g(x0) ; x0 ∈ Ck の漸近表現を用いた以下の近似による評価からも判ります。


_ 以上から、MSE を最も小さくするような階級幅 h を選ぶことができて、この時誤差が、最小になる事が判ります。

実際には上記の各点での2乗誤差を積分した、平均積分2乗誤差(MISE)、


_ が評価する関数としてよく用いられます。

MISE(h) を用いた最適な階級幅 h の推定は、次のように定式化できます。


 MISE(h) はテイラー展開を用いて、

 と近似されます。これを h で微分してゼロとすれば、最適な階級幅 hMISE が、次のように求まります。

_ ただ、この方法では、hMISE を求めるために真の関数 g(x) の関数形が必要となり、近似的に求めるにせよ、g(x) が従う関数の概要(例えば、外部要因から真の関数は正規分布に近い形が期待される等の情報が得られる場合は、g(x) に正規分布の関数形を入れて計算すれば良い)が必要になってしまいます。

そこで g(x) の関数形が全く分からない状況においても h の最適値を求めることができる方法について考えることにします。この場合は、まず ^f(x;h) が、ある関数(カーネル関数)の線形和で表せるとして、以下のように定義するところからスタートします。ここで、xi は、実際に観測した点(確率変数の観測点)を表します。また、カーネル関数 K(u) は、通常、ガウス関数のように対称な確率密度関数が使われます。


_ この関数を用いて再度 MISE(h) を求め、h の最適値を推定して行くことになります。

以上で最適な連続関数推定の定式化と推定への道筋の説明が出来ました。ところが、よく使われるガウス関数をカーネル関数として採用しても、計算すべき MISE(h) は、閉じた解析解で書く事が出来ず、積分が有るため計算も困難です。そこで、近似を行って MISE(h) を評価する方法がいくつか提案されています。

これについては明日続けて説明しますので、お楽しみに。



2008-11-27 木曜日(先負)

_ [データマイニング] ヒストグラムから連続分布へ〜推定〜

前回行った定式化を用いて密度関数を推定します。前回の終わりにMISE(h)を直接推定する事が困難なため、近似を行った推定がいくつか提案されていると書きましたが、逆に言うと最も有効な確立した方法が無い状況でもあります。

話を始める前に、前回導入したカーネル関数に仮定されている性質を書くと次のようになります。


_ このカーネル関数を k 次のカーネルと呼び、k = 2 がよく用いられます。このカーネルの性質を用いると一般的に k 次のカーネルに対して、漸近積分2乗平均(AMISE(h))が次のように表せます。


_ これにより、最適な密度関数は、近似関数 AMISE(h) を最小にする hAMISE を数値的に求めることで推定されます。なお、g(k) は、真の確率密度関数 g(x)k 階微分であり、本来、真の関数形が分からないと計算できないのですが、数値計算の際は適当な関数で代替(近似)することによって hAMISE を求めて行きます。例えば、^f(x;h)h に適当な数値を入れた関数を g(x) の代りに上記式に代入して暫定的に求めた ^hAMISE を再度 ^f(x;h) に代入して g(x) の代替とする等が考えられます。

最初に述べたように、他に比べて秀でた近似法が確立されていないため、近似法と数値的な関数の評価法によって種々の方法が提案されています。



2008-11-29 土曜日(赤口)

_ [データマイニング] ヒストグラムから連続分布へ〜推定:補足〜

ヒストグラムから分布関数(確率密度関数)を推定する方法を3回に渡って説明しましたが、言葉足らずの部分もありましたので頭の整理もかねて補足しておきます。

今回のテーマでやりたい事は、ある事象の起こる確率密度又は確率が知りたい訳です。ところがデータは事象が起こったか起こらなかったかを教えてくれるだけなので、背後にある真の確率密度又は確率(これまでの説明だと g(x) )が判らない場合、多くのデータサンプルを集めて確率を計算することになります。

あるデータ点の値を取る事象の起こる確率は、データサンプルを階級に分けた時の度数から求めることができるので、ヒストグラムの頂点を繋いで行けば確率の関数の各点での値が判るという訳です。

そこで任意のデータの値に対する確率が知りたい時は、ヒストグラムの頂点を結ぶ曲線の式を求めておけば良いことになります。従って点の集まりが与えられた時にその点を結ぶ曲線の推定する事が、連続分布を求める1つ目の主要な要素になります。点の集まりに対する関数の推定は、スプライン補間法や、フーリエ分解、ウェーブレットを利用した方法など多くの方法が提案されています。説明したカーネル関数の線形和を用いた補間法はフーリエ分解やウェーブレットを利用した補間法の一種だと考えることができます。

分布関数の推定では、補間すべき点の集まりがヒストグラムの頂点となる事は述べましたが、分布関数推定についての説明の第1回目で述べたように、頂点の値は階級の幅に依存します。従って確率の関数の推定を正しく行うためには、正しい補間点が必要で、言換えるとヒストグラムの頂点の値が、真の関数値と出来るだけ近い値を取るように、階級幅を決める事が必要となります。これが、連続分布を求める2つ目の主要な要素です。

カーネル密度推定法では、上記の2つの要素を同時に解こうとしているのですが、その一方で背後にある真の確率が判っている時に、分布関数の特徴をもっともよく表すヒストグラムを描く際に使われる、最適な階級幅を決める手法(1回目と2回目で説明した手法です)ともよく似ているので混同し易く、注意が必要です。前回までの説明にはこのような説明も無く、判り難いので補足しておきます。



トップ 最新 追記

(C) 2008 KEIBA-ROBO制作委員会 All Rights Reserved.