統計ER

統計ソフトRの使い方を中心に、統計解析方法の解説をするブログ。ありそうでなかなか見つからないサンプルサイズ計算などニッチな方法について紹介しています。

決定木はどのように分岐を作っていくのか?

ブログランキングに参加しています。
まずはぽちぽちっとお願いします。
↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
にほんブログ村 科学ブログ 数学へ

決定木の分岐(ノード)を作るときどのような計算をしているのか?

Gini不純度を計算している。

Gini不純度とは何か?

簡単に紹介。

 

 

Gini不純度とは何か?どんな計算をしているのか?

Gini不純度とは、ある特徴でデータを2分割するときに、

特徴の要素Aである確率とAでない確率をかけて合計したもの。

特徴要素Aだけになるような特徴はGini不純度ゼロで、分割に最適。

例えば、ある商品を買ってくれる顧客を予想する決定木を作るとして、

性別データという特徴を分岐にするときに、

男性であった確率と女性であった確率をかける。

ここでミソなのは、2つの要素の復元抽出ということ。

復元抽出は、一回取り出したあと、戻してからもう一度取り出す方法。

男性と女性という要素を復元抽出するとすると、

男性が二回、女性が二回のほか、

男性・女性、女性・男性の組み合わせがあり得る。

Gini不純度は、男性・女性と女性・男性の確率を足し合わせた確率。

男・女の組み合わせ確率の2倍でもよい。男・女も、女・男も、同じだから。

確率(男男+男女+女男+女女)の合計=1

「男女、女男」の確率を足してもいいし、「男男、女女」の確率を1から引いてもいい。

このGini不純度がより小さい特徴から、

分割のノードとして選ばれていく。

ある商品を買ってくれるかどうか、

できるだけ大きな偏りを作れる特徴が、

分類に適しているわけ。

もし買った人でも買わない人でも、

男女半々くらいであれば、

分類するのに優秀な特徴ではない。

買った人は全員女性だった。

という偏りが大きい特徴のほうがいい。

 

仮想例で見てみよう

仮想例1:買った人と買わなかった人合計20名の分布が下表のとおりだったら?

  買った人 買わなかった人
4 7
6 3

買った人のGini不純度:

 \displaystyle \frac{4}{10} \times \frac{6}{10} + \frac{6}{10} \times \frac{4}{10} = 1 - \left(\frac{4}{10}\right)^{2} - \left(\frac{6}{10}\right)^{2} = 0.48

買わなかった人のGini不純度:

 \displaystyle \frac{7}{10}\times\frac{3}{10}+\frac{3}{10}\times\frac{7}{10} = 1-\left(\frac{7}{10}\right)^{2}-\left(\frac{3}{10}\right)^{2} = 0.42

加重平均:

 \displaystyle 0.48 \times \frac{10}{20} + 0.42 \times \frac{10}{20} = 0.45


仮想例2:買った人と買わなかった人合計20名の分布がもし下表のようだったら?

  買った人 買わなかった人
0 7
10 3

買った人のGini不純度:

 \displaystyle \frac{0}{10} \times \frac{10}{10} + \frac{10}{10} \times \frac{0}{10} = 1-\left(\frac{0}{10}\right)^{2}-\left(\frac{10}{10}\right)^{2} = 0

買わなかった人のGini不純度:

 \displaystyle \frac{7}{10} \times \frac{3}{10} + \frac{3}{10} \times \frac{7}{10} = 1-\left(\frac{7}{10}\right)^{2}-\left(\frac{3}{10}\right)^{2} = 0.42

加重平均:

 \displaystyle 0 \times \frac{10}{20} + 0.42 \times \frac{10}{20} = 0.21

仮想例1と仮想例2の人数で重みづけした加重平均を比べると、

仮想例2のほうが小さい。

つまり、仮想例2のように極端な偏りが出る分岐は、

Gini不純度が小さくなり、分岐としてより優秀であると言える。

 

まとめ

決定木のGini不純度と計算方法について紹介した。

  • Gini不純度は、小さいほうが分類に適している。
  • Gini不純度は、特徴要素Aの確率とAでない確率をかけ合わせて2倍するという計算をしている。