Top Banner
JOIss 2014 okuraofvegetable 決定木
42

JOI summer seminar 2014

Dec 18, 2014

Download

Food

JOIss 2014 集合知プログラミング 発表スライド
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: JOI summer seminar 2014

JOIss 2014

    okuraofvegetable

決定木

Page 2: JOI summer seminar 2014

決定木ってなんやねん

● 機械学習の分野においては決定木は予測モデルであり、ある事項に対する観察結果から、その事項の目標値に関する結論を導く。内部節点は変数に対応し、子節点への枝はその変数の取り得る値を示す。 葉(端点)は、根(root)からの経路によって表される変数値に対して、目的変数の予測値を表す。–Wikipediaより

Page 3: JOI summer seminar 2014

決定木ってなんやねん

● 機械学習の分野においては決定木は予測モデルであり、ある事項に対する観察結果から、その事項の目標値に関する結論を導く。内部節点は変数に対応し、子節点への枝はその変数の取り得る値を示す。 葉(端点)は、根(root)からの経路によって表される変数値に対して、目的変数の予測値を表す。–Wikipediaより

● は?

Page 4: JOI summer seminar 2014

決定木ってなんやねん

● 機械学習の分野においては決定木は予測モデルであり、ある事項に対する観察結果から、その事項の目標値に関する結論を導く。内部節点は変数に対応し、子節点への枝はその変数の取り得る値を示す。 葉(端点)は、根(root)からの経路によって表される変数値に対して、目的変数の予測値を表す。–Wikipediaより

● は?

● 百聞は一見にしかずじゃ

Page 5: JOI summer seminar 2014

根菜

形=球色=Red

色=green

色=orange

No

Yes

No Yes

YesNo No Yes YesNo

決定木

Page 6: JOI summer seminar 2014

どうやって作んねん

● 前の図を見てのとおり、

条件を用意してそこで分割していく

– 多分木にもできるが今回は二分木のみ扱うことにする

Page 7: JOI summer seminar 2014

どうやって作んねん

● 前の図を見てのとおり、

条件を用意してそこで分割していく

– 多分木にもできるが今回は二分木のみ扱うことにする

● じゃあ適当に分割しようぜ!

Page 8: JOI summer seminar 2014

ダメな決定木

生産者=三上さん

生産者の出身地=大阪生産された畑の大きさ>10ha

No Yes

No YesNo Yes

・・・

・・・

・・・

・・・

Page 9: JOI summer seminar 2014

● 帰結に無関係な情報が入っていることがもちろんある

● 適当に決定木を構築すると無駄に深い上に精度が低いものが出来上がる

● だめだめ

Page 10: JOI summer seminar 2014

どうやって作んねん

● 条件を適当に選ぶと無駄に深い木になる

– 探索に時間がかかる上に精度がさがる

● 適切に条件を選ぶ必要がある

– なにで評価してやればいいか

Page 11: JOI summer seminar 2014

分岐条件の選び方

● エントロピー

– 集合がどれくらい混合されているかを表す数値

● 集合Sに対して各要素vの

-(vの個数/S.size)*log2(vの個数/S.size)

の和で定義された数値

Page 12: JOI summer seminar 2014

分岐条件の選び方

● 帰結(最終的な分類)が数種類の場合,分岐条件を

選ぶ基準をエントロピーにするとよいことが多い

Page 13: JOI summer seminar 2014

分岐条件の選び方

● 帰結(最終的な分類)が数種類の場合,分岐条件を

選ぶ基準をエントロピーにするとよいことが多い

● 情報ゲイン

– 元の集合のエントロピーから、

分割した後の集合のエントロピーの加重平均を

引いたもの

Page 14: JOI summer seminar 2014

分岐条件の選び方

● 情報ゲインがもっとも大きくなるような

条件を選んで分岐させていく

● 常勝

Page 15: JOI summer seminar 2014

決定木の構築

● 根から順に情報ゲインが最も大きくなるような

条件で再帰的に分岐させていく

● 最適な情報ゲインが0以下になったら分岐をやめて

帰結を集合のなかで最も多いものにする

Page 16: JOI summer seminar 2014

決定木の探索

● 根から順に、条件を満たすか満たさないかで

たどっていけばいい

● やったね

Page 17: JOI summer seminar 2014

実際につかってみたい

● NPCA 夏合宿 機械学習コンテスト

第1問 毒キノコを見つけろ

– 問題概要

色や匂いなど19個の特徴とそれが毒キノコかそうでな いかが学習データとして与えられる

あるキノコの19個の特徴が与えられるのでそれが毒キ ノコかそうでないか判定せよ

[学習データ1000件 テストデータ1000件]

Page 18: JOI summer seminar 2014

● 分岐条件をある特徴についてある一つの条件を満たすかどうかにしてみる

– 匂いが悪臭かどうか、色がピンクかなど

● 適当に実装

Page 19: JOI summer seminar 2014

● 621点

Page 20: JOI summer seminar 2014

● 621点

Page 21: JOI summer seminar 2014

●621点

Page 22: JOI summer seminar 2014

●621点

Page 23: JOI summer seminar 2014

枝刈り

● 学習データが多くなってくると

決定木は学習データに対応しすぎて

一般の場合の判定を正しく行いにくくなる

● 適宜枝を刈って過学習を防ぐ

Page 24: JOI summer seminar 2014

枝刈り

● 両方の子が葉であるようなノードについて、

2つの葉を統合した時のエントロピーの減少が

閾値未満の時に統合する

● これを再帰的に行う

Page 25: JOI summer seminar 2014

● 閾値を0.55くらいにして枝刈りをしてみる

● 855点

Page 26: JOI summer seminar 2014

● 閾値を0.55くらいにして枝刈りをしてみる

● 855点

Page 27: JOI summer seminar 2014

● 閾値を0.55くらいにして枝刈りをしてみる

● 855点

Page 28: JOI summer seminar 2014

● 閾値を0.55くらいにして枝刈りをしてみる

● 855点

Page 29: JOI summer seminar 2014

● 分岐の条件で似たものをまとめてみる

– 色がピンクだろうと赤だろうと毒キノコっぽい

● 分岐の条件を集合にする

– 試す回数が増えるがそこまで時間はかからない

Page 30: JOI summer seminar 2014

● 適当に実装しなおす

● 1000点

Page 31: JOI summer seminar 2014

● 適当に実装しなおす

● 1000点

Page 32: JOI summer seminar 2014

● 適当に実装しなおす

● 1000点

Page 33: JOI summer seminar 2014

● 適当に実装しなおす

● 1000点

Page 34: JOI summer seminar 2014

● 出来上がった決定木を見てみるといろんなことがすぐにわかって面白い

Page 35: JOI summer seminar 2014

実際に作成された決定木

傘の表面の状態=扁平状,瘤状,円錐状

香り=刺激臭,悪臭,漢方のような臭い,かび臭い

柄の鍔より上の部分の黄褐色,淡赤色,黄色

ひだの色=緑色,黄色

胞子の色=焦げ茶色,緑色

Yes

Yes

Yes

Yes

No

No

No

No

No

Page 36: JOI summer seminar 2014

実例

Page 37: JOI summer seminar 2014

帰結が数値の場合

● エントロピーをつかっているところを分散に変える

● 多数決ではなく平均取ったりする

● 帰結が数値でない場合よりは期待できないが

ある程度の結果が得られる

Page 38: JOI summer seminar 2014

決定木の応用

● データの一部が欠落していても対応できる– 必要な情報が欠落している時は

両方の枝を探索して重み付けをしてから結合する

● エントロピー、分散の他にもジニ不純度など多数の分岐条件を選ぶ基準がありさまざまな場合に対応できる

● 多分木にすることもできる

Page 39: JOI summer seminar 2014

決定木まとめ

● 決定木が向いているのは帰結の種類が少ない時● 最適な情報ゲインが正の間再帰的に木を構築● 分類するときは根から条件に従って

葉に到達するまで巡っていく● 実際に顧客プロファイリングや財務リスク分析などに応

用されている

Page 40: JOI summer seminar 2014

感想

● 1000件のデータなのにかなり小さな木になるんだな〜

と思った

● 夏季セミ楽しかったです

Page 41: JOI summer seminar 2014

● ソース– http://ideone.com/OXt3PJ

Page 42: JOI summer seminar 2014

ご清聴ありがとうございました