SlideShare a Scribd company logo
1 of 42
Download to read offline
JOIss 2014 
決定木 
    okuraofvegetable
決定木ってなんやねん 
● 機械学習の分野においては決定木は予測モデルであり、 
ある事項に対する観察結果から、その事項の目標値に関 
する結論を導く。内部節点は変数に対応し、子節点への 
枝はその変数の取り得る値を示す。 葉(端点)は、根 
(root)からの経路によって表される変数値に対して、目的 
変数の予測値を表す。–Wikipediaより
決定木ってなんやねん 
● 機械学習の分野においては決定木は予測モデルであり、 
ある事項に対する観察結果から、その事項の目標値に関 
する結論を導く。内部節点は変数に対応し、子節点への 
枝はその変数の取り得る値を示す。 葉(端点)は、根 
(root)からの経路によって表される変数値に対して、目的 
変数の予測値を表す。–Wikipediaより 
● は?
決定木ってなんやねん 
● 機械学習の分野においては決定木は予測モデルであり、 
ある事項に対する観察結果から、その事項の目標値に関 
する結論を導く。内部節点は変数に対応し、子節点への 
枝はその変数の取り得る値を示す。 葉(端点)は、根 
(root)からの経路によって表される変数値に対して、目的 
変数の予測値を表す。–Wikipediaより 
● は? 
● 百聞は一見にしかずじゃ
根菜 
色=green 
決定木 
色=Red 色=orange 
形=球 
No 
Yes 
No Yes 
No Yes No Yes No Yes
どうやって作んねん 
● 前の図を見てのとおり、 
条件を用意してそこで分割していく 
– 多分木にもできるが今回は二分木のみ扱うことにする
どうやって作んねん 
● 前の図を見てのとおり、 
条件を用意してそこで分割していく 
– 多分木にもできるが今回は二分木のみ扱うことにする 
● じゃあ適当に分割しようぜ!
ダメな決定木 
生産者=三上さん 
No Yes 
生産された畑の大きさ>10ha 生産者の出身地=大阪 
No Yes No Yes 
・・・ 
・・・ 
・・・ 
・・・
● 帰結に無関係な情報が入っていることがもちろんある 
● 適当に決定木を構築すると無駄に深い上に精度が低いも 
のが出来上がる 
● だめだめ
どうやって作んねん 
● 条件を適当に選ぶと無駄に深い木になる 
– 探索に時間がかかる上に精度がさがる 
● 適切に条件を選ぶ必要がある 
– なにで評価してやればいいか
分岐条件の選び方 
● エントロピー 
– 集合がどれくらい混合されているかを表す数値 
● 集合Sに対して各要素vの 
-(vの個数/S.size)*log2(vの個数/S.size) 
の和で定義された数値
分岐条件の選び方 
● 帰結(最終的な分類)が数種類の場合,分岐条件を 
選ぶ基準をエントロピーにするとよいことが多い
分岐条件の選び方 
● 帰結(最終的な分類)が数種類の場合,分岐条件を 
選ぶ基準をエントロピーにするとよいことが多い 
● 情報ゲイン 
– 元の集合のエントロピーから、 
分割した後の集合のエントロピーの加重平均を 
引いたもの
分岐条件の選び方 
● 情報ゲインがもっとも大きくなるような 
条件を選んで分岐させていく 
● 常勝
決定木の構築 
● 根から順に情報ゲインが最も大きくなるような 
条件で再帰的に分岐させていく 
● 最適な情報ゲインが0以下になったら分岐をやめて 
帰結を集合のなかで最も多いものにする
決定木の探索 
● 根から順に、条件を満たすか満たさないかで 
たどっていけばいい 
● やったね
実際につかってみたい 
● NPCA 夏合宿 機械学習コンテスト 
第1問 毒キノコを見つけろ 
– 問題概要 
色や匂いなど19個の特徴とそれが毒キノコかそうでな 
いかが学習データとして与えられる 
あるキノコの19個の特徴が与えられるのでそれが毒キ 
ノコかそうでないか判定せよ 
[学習データ1000件 テストデータ1000件]
● 分岐条件をある特徴についてある一つの条件を満たすか 
どうかにしてみる 
– 匂いが悪臭かどうか、色がピンクかなど 
● 適当に実装
● 621点
● 621点
●621点
●621点
枝刈り 
● 学習データが多くなってくると 
決定木は学習データに対応しすぎて 
一般の場合の判定を正しく行いにくくなる 
● 適宜枝を刈って過学習を防ぐ
枝刈り 
● 両方の子が葉であるようなノードについて、 
2つの葉を統合した時のエントロピーの減少が 
閾値未満の時に統合する 
● これを再帰的に行う
● 閾値を0.55くらいにして枝刈りをしてみる 
● 855点
● 閾値を0.55くらいにして枝刈りをしてみる 
● 855点
● 閾値を0.55くらいにして枝刈りをしてみる 
●855点
● 閾値を0.55くらいにして枝刈りをしてみる 
●855点
● 分岐の条件で似たものをまとめてみる 
– 色がピンクだろうと赤だろうと毒キノコっぽい 
● 分岐の条件を集合にする 
– 試す回数が増えるがそこまで時間はかからない
● 適当に実装しなおす 
● 1000点
● 適当に実装しなおす 
● 1000点
● 適当に実装しなおす 
●1000点
● 適当に実装しなおす 
●1000点
● 出来上がった決定木を見てみるといろんなことがすぐに 
わかって面白い
実際に作成された決定木 
傘の表面の状態=扁平状,瘤状,円錐状 
No 
香り=刺激臭,悪臭,漢方のような臭い,かび臭い 
ひだの色=緑色,黄色 
柄の鍔より上の部分の黄褐色,淡赤色,黄色 
胞子の色=焦げ茶色,緑色 
Yes 
Yes 
Yes 
Yes 
No 
No 
No 
No
実例
帰結が数値の場合 
● エントロピーをつかっているところを分散に変える 
● 多数決ではなく平均取ったりする 
● 帰結が数値でない場合よりは期待できないが 
ある程度の結果が得られる
決定木の応用 
● データの一部が欠落していても対応できる 
– 必要な情報が欠落している時は 
両方の枝を探索して重み付けをしてから結合する 
● エントロピー、分散の他にもジニ不純度など多数の分岐 
条件を選ぶ基準がありさまざまな場合に対応できる 
● 多分木にすることもできる
決定木まとめ 
● 決定木が向いているのは帰結の種類が少ない時 
● 最適な情報ゲインが正の間再帰的に木を構築 
● 分類するときは根から条件に従って 
葉に到達するまで巡っていく 
● 実際に顧客プロファイリングや財務リスク分析などに応 
用されている
感想 
● 1000件のデータなのにかなり小さな木になるんだな〜 
と思った 
● 夏季セミ楽しかったです
● ソース 
– http://ideone.com/OXt3PJ
ご清聴ありがとうございました

More Related Content

More from okuraofvegetable

More from okuraofvegetable (9)

Monadic second-order logic
Monadic second-order logicMonadic second-order logic
Monadic second-order logic
 
パタヘネゼミ 第6章
パタヘネゼミ 第6章パタヘネゼミ 第6章
パタヘネゼミ 第6章
 
パタヘネゼミ 第2回
パタヘネゼミ 第2回パタヘネゼミ 第2回
パタヘネゼミ 第2回
 
直交領域探索
直交領域探索直交領域探索
直交領域探索
 
グレブナー基底
グレブナー基底グレブナー基底
グレブナー基底
 
NPCA summer 2014
NPCA summer 2014NPCA summer 2014
NPCA summer 2014
 
Lecture2
Lecture2Lecture2
Lecture2
 
LT
LTLT
LT
 
Wrapping potato chips is fun
Wrapping potato chips is funWrapping potato chips is fun
Wrapping potato chips is fun
 

JOI summer seminar 2014