SlideShare a Scribd company logo
1 of 32
はじめての decision tree
2019/07/25
データサイエンス第二グループ 田口直弥
2
今日のテーマは決定木について
決定木って?
• 木構造を使った予測器
• ルートから説明変数をもとに走査し、回帰・分類を行う
• 各ノードが1変数についての条件分岐を担う
3
[Loh, 2014]
なぜ決定木について話す?
• テーブルデータでは以下の点で非常に有用 (主に vs NN)
• 単純に予測精度が高い
• kaggle では初手 GBDT はよくあること
• 予測根拠の解釈がしやすい
• 外れ値に対して頑健
• 欠損値をそのまま扱う手法が充実 (今回は紹介しない)
• GPU 使わなくてもある程度高速に学習できる
• NN 世代はあまりちゃんと勉強してない (と思ってるけどどうですか…?)
• 要所の概要は知ってるけどちゃんと理解してない
• 基礎的なモデルとか歴史とか全然わからない
4
5
決定木の学習アルゴリズムについて
AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963]
• 史上初 [Loh, 2014] の回帰木アルゴリズム
• 二分木を前提
• ノード内偏差平方和 ( 𝒊 𝒚𝒊 − 𝒚 𝒕
𝟐) を小さくするようにノードを分割していく
ことで近い 𝑦𝒊 がまとまる様に学習
• 予測値は学習データにおける葉ノードの 𝑦𝒊 の平均値
6
• 学習アルゴリズムの大枠
① ルートノードに全ての学習データを
配置して学習開始
AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963]
7
all train data
処理が完了していないノード
処理中のノード
処理が完了した中間ノード
処理が完了した葉ノード
• 学習アルゴリズムの大枠
① ルートノードに全ての学習データを
配置して学習開始
AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963]
8
all train data
② 注目ノードにおいて分割に用いる
変数 𝒙 と分割条件を決める
処理が完了していないノード
処理中のノード
処理が完了した中間ノード
処理が完了した葉ノード
年齢 > 25
• 学習アルゴリズムの大枠
① ルートノードに全ての学習データを
配置して学習開始
AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963]
9
all train data
処理が完了していないノード
処理中のノード
処理が完了した中間ノード
処理が完了した葉ノード
② 注目ノードにおいて分割に用いる
変数 𝒙 と分割条件を決める
③ ② の分割結果が終了条件に該当
しない場合、分割を実行して処理
が完了していないノードに遷移
年齢 > 25
• 学習アルゴリズムの大枠
① ルートノードに全ての学習データを
配置して学習開始
AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963]
10
all train data
処理が完了していないノード
処理中のノード
処理が完了した中間ノード
処理が完了した葉ノード
② 注目ノードにおいて分割に用いる
変数 𝒙 と分割条件を決める
③ ② の分割結果が終了条件に該当
しない場合、分割を実行して処理
が完了していないノードに遷移
④ ② の分割結果が終了条件に該当
する場合、分割を実行せず処理
が完了していないノードに遷移
年齢 > 25
男 or 女
体重 > 50
• 学習アルゴリズムの大枠
① ルートノードに全ての学習データを
配置して学習開始
AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963]
11
all train data
処理が完了していないノード
処理中のノード
処理が完了した中間ノード
処理が完了した葉ノード
② 注目ノードにおいて分割に用いる
変数 𝒙 と分割条件を決める
③ ② の分割結果が終了条件に該当
しない場合、分割を実行して処理
が完了していないノードに遷移
④ ② の分割結果が終了条件に該当
する場合、分割を実行せず処理
が完了していないノードに遷移
⑤ 処理が完了していないノードが
なくなったら学習完了
年齢 > 25
男 or 女
体重 > 50
• 学習アルゴリズムの大枠
① ルートノードに全ての学習データを
配置して学習開始
AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963]
12
all train data
処理が完了していないノード
処理中のノード
処理が完了した中間ノード
処理が完了した葉ノード
② 注目ノードにおいて分割に用いる
変数 𝒙 と分割条件を決める
③ ② の分割結果が終了条件に該当
しない場合、分割を実行して処理
が完了していないノードに遷移
④ ② の分割結果が終了条件に該当
する場合、分割を実行せず処理
が完了していないノードに遷移
⑤ 処理が完了していないノードが
なくなったら学習完了
年齢 > 25
男 or 女
体重 > 50
AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963]
• 分割に使う変数と条件を決めるアルゴリズム
13
partial
train data
① 注目ノード内の不純度 𝝓 = 𝒊 𝒚𝒊 − 𝒚 𝒕
𝟐
を計算
𝝓 = 𝟏𝟐. 𝟖
AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963]
• 分割に使う変数と条件を決めるアルゴリズム
14
partial
train data
① 注目ノード内の不純度 𝝓 = 𝒊 𝒚𝒊 − 𝒚 𝒕
𝟐
を計算
② 全特徴の全分割候補に対して分割を行い、
それぞれについて分割後の子ノードの
不純度の和 𝝓 𝒄𝒉𝒊 = 𝝓 𝟎 + 𝝓 𝟏 を求める
numerical : 𝐧 − 𝟏 通り (𝐧 は unique 値数)
categorical : 𝟐 𝐦−𝟏
− 𝟏 通り (𝐦 は unique 値数)
𝝓 = 𝟏𝟐. 𝟖
変数 条件 𝝓 𝟎 𝝓 𝟏
性別 男 or 女 2.8 7.3
年齢 < 20 10.2 2.1
年齢 < 21 9.8 1.9
…
AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963]
• 分割に使う変数と条件を決めるアルゴリズム
15
partial
train data
① 注目ノード内の不純度 𝝓 = 𝒊 𝒚𝒊 − 𝒚 𝒕
𝟐
を計算
② 全特徴の全分割候補に対して分割を行い、
それぞれについて分割後の子ノードの
不純度の和 𝝓 𝒄𝒉𝒊 = 𝝓 𝟎 + 𝝓 𝟏 を求める
numerical : 𝐧 − 𝟏 通り (𝐧 は unique 値数)
categorical : 𝟐 𝐦−𝟏
− 𝟏 通り (𝐦 は unique 値数)
③ 情報利得 𝑰 = 𝝓 − 𝝓 𝒄𝒉𝒊 が最も大きい変数・分割
条件を採用
𝝓 = 𝟏𝟐. 𝟖
𝝓 𝟎 = 𝟐. 𝟖
𝝓 𝟏 = 𝟕. 𝟑
変数 条件 𝝓 𝟎 𝝓 𝟏
性別 男 or 女 2.8 7.3
年齢 < 20 10.2 2.1
年齢 < 21 9.8 1.9
…
AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963]
• 終了条件
• 分割による情報利得が一定値を下回った場合に終了
• 学習を始める前にハイパーパラメータとして設定
• ハイパーパラメータなので over (or under) fitting が問題
となりがち
16
THAID (THeta Automatic Interaction Detection) [Messenger & Mandell, 1972]
• 史上初 [Loh, 2011] の分類木アルゴリズム
• 二分木を前提
• ジニ不純度 (𝟏 − 𝒋 𝒑𝒋
𝟐
) (またはエントロピー関数) を小さくするようにノードを
分割していくことで同じラベルがまとまる様に学習 (𝒑𝒋 はノード内のラベル 𝒋 の比率)
• 予測値は学習データにおける葉ノードの中でもっとも比率の多いラベル
17
THAID (THeta Automatic Interaction Detection) [Messenger & Mandell, 1972]
18
• 学習アルゴリズムの大枠
① ルートノードに全ての学習データを
配置して学習開始all train data
処理が完了していないノード
処理中のノード
処理が完了した中間ノード
処理が完了した葉ノード
② 注目ノードにおいて分割に用いる
変数 𝒙 と分割条件を決める
③ ② の分割結果が終了条件に該当
しない場合、分割を実行して処理
が完了していないノードに遷移
④ ② の分割結果が終了条件に該当
する場合、分割を実行せず処理
が完了していないノードに遷移
⑤ 処理が完了していないノードが
なくなったら学習完了
年齢 > 25
男 or 女
体重 > 50
• 分割に使う変数と条件を決めるアルゴリズム
19
partial
train data
① 注目ノード内の不純度 𝝓 = (𝟏 − 𝒋 𝒑𝒋
𝟐
)を計算
② 全特徴の全分割候補に対して分割を行い、
それぞれについて分割後の子ノードの
不純度の和 𝝓 𝒄𝒉𝒊 = 𝝓 𝟎 + 𝝓 𝟏 を求める
numerical : 𝐧 − 𝟏 通り (𝐧 は unique 値数)
categorical : 𝟐 𝐦−𝟏
− 𝟏 通り (𝐦 は unique 値数)
③ 情報利得 𝑰 = 𝝓 − 𝝓 𝒄𝒉𝒊 が最も大きい変数・分割
条件を採用
𝝓 = 𝟎. 𝟕
𝝓 𝟎 = 𝟎. 𝟏
𝝓 𝟏 = 𝟎. 𝟑
変数 条件 𝝓 𝟎 𝝓 𝟏
性別 男 or 女 0.1 0.3
年齢 < 20 0.3 0.3
年齢 < 21 0.2 0.3
…
THAID (THeta Automatic Interaction Detection) [Messenger & Mandell, 1972]
CART (Classification And Regression Trees)[Breiman et al., 1984]
• 最近の論文でも出てくるし、scikit-learn のもこれの最適化版
• AID, THAID とほぼ同様のアルゴリズムで回帰・分類木を構築
• AID, THAID に比べて終了条件を緩め (ノード内のデータ数で決める等)、
代わりに pruning を行う
• AID, THAID で問題となる over (or under) fitting に対応
20
CART (Classification And Regression Trees)[Breiman et al., 1984]
21
• 学習アルゴリズムの大枠
① ルートノードに全ての学習データを
配置して学習開始all train data
処理が完了していないノード
処理中のノード
処理が完了した中間ノード
処理が完了した葉ノード
② 注目ノードにおいて分割に用いる
変数 𝒙 と分割条件を決める
③ ② の分割結果が終了条件に該当
しない場合、分割を実行して処理
が完了していないノードに遷移
④ ② の分割結果が終了条件に該当
する場合、分割を実行せず処理
が完了していないノードに遷移
年齢 > 25
男 or 女
体重 > 50
CART (Classification And Regression Trees)[Breiman et al., 1984]
22
• 学習アルゴリズムの大枠
① ルートノードに全ての学習データを
配置して学習開始all train data
処理が完了していないノード
処理中のノード
処理が完了した中間ノード
処理が完了した葉ノード
② 注目ノードにおいて分割に用いる
変数 𝒙 と分割条件を決める
③ ② の分割結果が終了条件に該当
しない場合、分割を実行して処理
が完了していないノードに遷移
④ ② の分割結果が終了条件に該当
する場合、分割を実行せず処理
が完了していないノードに遷移
⑤ 処理が完了していないノードが
なくなったら pruning 後に学習完了
年齢 > 25
男 or 女
体重 > 50
CART (Classification And Regression Trees)[Breiman et al., 1984]
• Pruning の方法
• 葉ノードの親ノード全てについて ↓ を終了するまで実行
• validation set における評価値が最も良くなる枝を pruning,
良くなる枝がない場合 pruning 終了
23
all train data
train data
validation
data
学習
pruning
ID3 (Iterative Dichotomiser 3) [Quinlan, 1986]
• 多分木を生成
• 多分木は二分木を繰り返せば得られ、また分割されすぎるので
好ましくない (統計的学習の基礎より)
• エントロピー関数を用い、分類問題のみ対応
• Categorical 変数については種類数分の分岐を生成
24
FACT (Fast and Accurate Classification Tree) [Loh & Vanichsetakul, 1988]
• Biases in variable selection
• CART や ID3 では各変数の全分割候補を探索しているため、分割候補
の回数の多い特徴に対する試行が増えて選択されやすくなる [Breiman, 1984]
• 原因は variable selection と分割選択を同時に行っていること
• 特徴選択と分割を別で行う
• 特徴選択 : それぞれ分散分析を行い、最も F 統計量が大きい特徴を選択
• 分割 : 選択された特徴に対して線形判別分析 (LDA) 等で決定境界決め
25
26
その他知っておいて損はなさそうな話
Single decision tree
アンサンブル
• Bagging
• 学習データをブートストラップサンプリングし、各サンプルを学習に使用
• 各木の予測値の平均 (回帰・分類) や多数決 (分類) 等で予測
• Random Forest [Breiman et al., 2001] では更に使用する変数もサンプリング
27
Original train
sampled train sampled train sampled train…
Single decision tree Single decision tree
Bootstrap sampling
…
• Boosting
• 木の学習結果に依存してどんどん木を構築していく
• 𝒊 番目の木の予測値は 𝒊 − 𝟏 番目までの予測値の和との合計値
• 各ノード 𝒋 の予測値は 𝒚𝒊 の平均ではなく 𝒘 =
𝒌∈𝒋 𝒈 𝒌
𝒌∈𝒋 𝒉 𝒌
で評価
• 分割用の不純度も 𝒘 に基づいて求められる
𝒚𝒊 と 𝒚𝒊 の誤差を 𝒊 − 𝟏 まで
の予測値について
二次近似し、微分を 0 とおく
アンサンブル
28
Single decision tree
𝒚 𝟎 = 𝒚
𝒚 𝟎 Single decision tree
𝒚 𝟏 = 𝒚 − 𝒚 𝟎
𝒚 𝟏 Single decision tree
𝒚 𝟐 = 𝒚 − 𝒚 𝟎 − 𝒚 𝟏
𝒚 𝟐
https://www.kdd.org/kdd2016/papers/files/rfp0697-chenAemb.pdf
Importance score
• 木の可視化による解釈の限界
• 木が大きくなると把握しきれない
• アンサンブルしたら可視化してもわからない
29
https://explained.ai/decision-tree-viz/index.html
Importance score
• Mean Decrease in Impurity
• 各特徴について分岐に使われた回数を各ノードのサンプル数で
重み付けしたものの和
• 各特徴について分岐で得た情報利得を各ノードのサンプル数で
重み付けしたものの和
その他目にするやつ達
• Permutation importance
• Null importance
• SHAP
30
https://medium.com/the-artificial-impostor/feature-importance-measures-for-tree-models-part-i-47f187c1a2c3
まとめ
• 決定木の予測アルゴリズム
• 決定木の基礎的な学習アルゴリズム
• AID, THAID, CART, ID3, FACT
• アンサンブル
• Bagging, Boosting
• Feature importance
31
参考文献
- Loh WY (2014). Fifty years of classification and regression trees. International Statistical
Review, 82, 329–348.
- Morgan, J.N. & Sonquist, J.A. (1963). Problems in the analysis of survey data, and a proposal. J.
Amer. Statist. Assoc., 58, 415–434.
- Messenger, R. & Mandell, L. (1972). A modal search technique for predictive nominal scale
multivariate analysis. J. Amer. Statist. Assoc., 67, 768–772.
- Breiman, L., Friedman, J.H., Olshen, R.A. & Stone, C.J. (1984). Classification and Regression
Trees. Belmont: Wadsworth.
- Quinlan, J.R. (1986). Induction of decision trees. Mach. Learn., 1, 81–106.
- Loh, W.-Y. & Vanichsetakul, N. (1988). Tree-structured classification via generalized
discriminant analysis (with discussion). J. Amer. Statist. Assoc., 83, 715–728.
- Breiman, L. (2001). Random forests. Mach. Learn., 45, 5–32.
- Trevor Hastie et al. (2009). 統計的学習の基礎
32

More Related Content

What's hot

Introduction of featuretweakR package
Introduction of featuretweakR packageIntroduction of featuretweakR package
Introduction of featuretweakR packageSatoshi Kato
 
MapReduceによる大規模データを利用した機械学習
MapReduceによる大規模データを利用した機械学習MapReduceによる大規模データを利用した機械学習
MapReduceによる大規模データを利用した機械学習Preferred Networks
 
NIPS2015読み会: Ladder Networks
NIPS2015読み会: Ladder NetworksNIPS2015読み会: Ladder Networks
NIPS2015読み会: Ladder NetworksEiichi Matsumoto
 
データアカデミー エッセンス in 秋田1
データアカデミー エッセンス in 秋田1データアカデミー エッセンス in 秋田1
データアカデミー エッセンス in 秋田1Hiroyuki Ichikawa
 
働き方改革版データアカデミー2 現状の調査、あるべき姿の確認
働き方改革版データアカデミー2 現状の調査、あるべき姿の確認働き方改革版データアカデミー2 現状の調査、あるべき姿の確認
働き方改革版データアカデミー2 現状の調査、あるべき姿の確認Hiroyuki Ichikawa
 
17ゼロから作るディープラーニング2章パーセプトロン
17ゼロから作るディープラーニング2章パーセプトロン17ゼロから作るディープラーニング2章パーセプトロン
17ゼロから作るディープラーニング2章パーセプトロンKeiichirou Miyamoto
 
Meta-Learning with Memory Augmented Neural Network
Meta-Learning with Memory Augmented Neural NetworkMeta-Learning with Memory Augmented Neural Network
Meta-Learning with Memory Augmented Neural NetworkYusuke Watanabe
 
第1回 Jubatusハンズオン
第1回 Jubatusハンズオン第1回 Jubatusハンズオン
第1回 JubatusハンズオンYuya Unno
 
[DL輪読会]Learning to Act by Predicting the Future
[DL輪読会]Learning to Act by Predicting the Future[DL輪読会]Learning to Act by Predicting the Future
[DL輪読会]Learning to Act by Predicting the FutureDeep Learning JP
 
Long-Tailed Classificationの最新動向について
Long-Tailed Classificationの最新動向についてLong-Tailed Classificationの最新動向について
Long-Tailed Classificationの最新動向についてPlot Hong
 
働き方改革版データアカデミー3 数値を使ったあるべき姿の設定
働き方改革版データアカデミー3 数値を使ったあるべき姿の設定働き方改革版データアカデミー3 数値を使ったあるべき姿の設定
働き方改革版データアカデミー3 数値を使ったあるべき姿の設定Hiroyuki Ichikawa
 
[ICLR2016] 採録論文の個人的まとめ
[ICLR2016] 採録論文の個人的まとめ[ICLR2016] 採録論文の個人的まとめ
[ICLR2016] 採録論文の個人的まとめYusuke Iwasawa
 
Active Learning と Bayesian Neural Network
Active Learning と Bayesian Neural NetworkActive Learning と Bayesian Neural Network
Active Learning と Bayesian Neural NetworkNaoki Matsunaga
 
Random Forest による分類
Random Forest による分類Random Forest による分類
Random Forest による分類Ken'ichi Matsui
 
Paper Introduction "RankCompete: Simultaneous ranking and clustering of info...
Paper Introduction "RankCompete:Simultaneous ranking and clustering of info...Paper Introduction "RankCompete:Simultaneous ranking and clustering of info...
Paper Introduction "RankCompete: Simultaneous ranking and clustering of info...Kotaro Yamazaki
 
SVM実践ガイド (A Practical Guide to Support Vector Classification)
SVM実践ガイド (A Practical Guide to Support Vector Classification)SVM実践ガイド (A Practical Guide to Support Vector Classification)
SVM実践ガイド (A Practical Guide to Support Vector Classification)sleepy_yoshi
 
Rainbow: Combining Improvements in Deep Reinforcement Learning (AAAI2018 unde...
Rainbow: Combining Improvements in Deep Reinforcement Learning (AAAI2018 unde...Rainbow: Combining Improvements in Deep Reinforcement Learning (AAAI2018 unde...
Rainbow: Combining Improvements in Deep Reinforcement Learning (AAAI2018 unde...Toru Fujino
 
Introduction to Chainer (LL Ring Recursive)
Introduction to Chainer (LL Ring Recursive)Introduction to Chainer (LL Ring Recursive)
Introduction to Chainer (LL Ring Recursive)Kenta Oono
 
最近のRのランダムフォレストパッケージ -ranger/Rborist-
最近のRのランダムフォレストパッケージ -ranger/Rborist-最近のRのランダムフォレストパッケージ -ranger/Rborist-
最近のRのランダムフォレストパッケージ -ranger/Rborist-Shintaro Fukushima
 
パターン認識 第10章 決定木
パターン認識 第10章 決定木 パターン認識 第10章 決定木
パターン認識 第10章 決定木 Miyoshi Yuya
 

What's hot (20)

Introduction of featuretweakR package
Introduction of featuretweakR packageIntroduction of featuretweakR package
Introduction of featuretweakR package
 
MapReduceによる大規模データを利用した機械学習
MapReduceによる大規模データを利用した機械学習MapReduceによる大規模データを利用した機械学習
MapReduceによる大規模データを利用した機械学習
 
NIPS2015読み会: Ladder Networks
NIPS2015読み会: Ladder NetworksNIPS2015読み会: Ladder Networks
NIPS2015読み会: Ladder Networks
 
データアカデミー エッセンス in 秋田1
データアカデミー エッセンス in 秋田1データアカデミー エッセンス in 秋田1
データアカデミー エッセンス in 秋田1
 
働き方改革版データアカデミー2 現状の調査、あるべき姿の確認
働き方改革版データアカデミー2 現状の調査、あるべき姿の確認働き方改革版データアカデミー2 現状の調査、あるべき姿の確認
働き方改革版データアカデミー2 現状の調査、あるべき姿の確認
 
17ゼロから作るディープラーニング2章パーセプトロン
17ゼロから作るディープラーニング2章パーセプトロン17ゼロから作るディープラーニング2章パーセプトロン
17ゼロから作るディープラーニング2章パーセプトロン
 
Meta-Learning with Memory Augmented Neural Network
Meta-Learning with Memory Augmented Neural NetworkMeta-Learning with Memory Augmented Neural Network
Meta-Learning with Memory Augmented Neural Network
 
第1回 Jubatusハンズオン
第1回 Jubatusハンズオン第1回 Jubatusハンズオン
第1回 Jubatusハンズオン
 
[DL輪読会]Learning to Act by Predicting the Future
[DL輪読会]Learning to Act by Predicting the Future[DL輪読会]Learning to Act by Predicting the Future
[DL輪読会]Learning to Act by Predicting the Future
 
Long-Tailed Classificationの最新動向について
Long-Tailed Classificationの最新動向についてLong-Tailed Classificationの最新動向について
Long-Tailed Classificationの最新動向について
 
働き方改革版データアカデミー3 数値を使ったあるべき姿の設定
働き方改革版データアカデミー3 数値を使ったあるべき姿の設定働き方改革版データアカデミー3 数値を使ったあるべき姿の設定
働き方改革版データアカデミー3 数値を使ったあるべき姿の設定
 
[ICLR2016] 採録論文の個人的まとめ
[ICLR2016] 採録論文の個人的まとめ[ICLR2016] 採録論文の個人的まとめ
[ICLR2016] 採録論文の個人的まとめ
 
Active Learning と Bayesian Neural Network
Active Learning と Bayesian Neural NetworkActive Learning と Bayesian Neural Network
Active Learning と Bayesian Neural Network
 
Random Forest による分類
Random Forest による分類Random Forest による分類
Random Forest による分類
 
Paper Introduction "RankCompete: Simultaneous ranking and clustering of info...
Paper Introduction "RankCompete:Simultaneous ranking and clustering of info...Paper Introduction "RankCompete:Simultaneous ranking and clustering of info...
Paper Introduction "RankCompete: Simultaneous ranking and clustering of info...
 
SVM実践ガイド (A Practical Guide to Support Vector Classification)
SVM実践ガイド (A Practical Guide to Support Vector Classification)SVM実践ガイド (A Practical Guide to Support Vector Classification)
SVM実践ガイド (A Practical Guide to Support Vector Classification)
 
Rainbow: Combining Improvements in Deep Reinforcement Learning (AAAI2018 unde...
Rainbow: Combining Improvements in Deep Reinforcement Learning (AAAI2018 unde...Rainbow: Combining Improvements in Deep Reinforcement Learning (AAAI2018 unde...
Rainbow: Combining Improvements in Deep Reinforcement Learning (AAAI2018 unde...
 
Introduction to Chainer (LL Ring Recursive)
Introduction to Chainer (LL Ring Recursive)Introduction to Chainer (LL Ring Recursive)
Introduction to Chainer (LL Ring Recursive)
 
最近のRのランダムフォレストパッケージ -ranger/Rborist-
最近のRのランダムフォレストパッケージ -ranger/Rborist-最近のRのランダムフォレストパッケージ -ranger/Rborist-
最近のRのランダムフォレストパッケージ -ranger/Rborist-
 
パターン認識 第10章 決定木
パターン認識 第10章 決定木 パターン認識 第10章 決定木
パターン認識 第10章 決定木
 

Similar to 20190725 taguchi decision_tree_for_pubshare

順序データでもベイズモデリング
順序データでもベイズモデリング順序データでもベイズモデリング
順序データでもベイズモデリング. .
 
Rによるデータサイエンス13「樹木モデル」
Rによるデータサイエンス13「樹木モデル」Rによるデータサイエンス13「樹木モデル」
Rによるデータサイエンス13「樹木モデル」Takeshi Mikami
 
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】Naoki Hayashi
 
(文献紹介)Deep Unrolling: Learned ISTA (LISTA)
(文献紹介)Deep Unrolling: Learned ISTA (LISTA)(文献紹介)Deep Unrolling: Learned ISTA (LISTA)
(文献紹介)Deep Unrolling: Learned ISTA (LISTA)Morpho, Inc.
 
「樹木モデルとランダムフォレスト-機械学習による分類・予測-」-データマイニングセミナー
「樹木モデルとランダムフォレスト-機械学習による分類・予測-」-データマイニングセミナー「樹木モデルとランダムフォレスト-機械学習による分類・予測-」-データマイニングセミナー
「樹木モデルとランダムフォレスト-機械学習による分類・予測-」-データマイニングセミナーKoichi Hamada
 
DSB2019振り返り会:あのにっくき QWK を閾値調整なしで攻略した(かった)
DSB2019振り返り会:あのにっくき QWK を閾値調整なしで攻略した(かった)DSB2019振り返り会:あのにっくき QWK を閾値調整なしで攻略した(かった)
DSB2019振り返り会:あのにっくき QWK を閾値調整なしで攻略した(かった)Takuji Tahara
 
データを工夫して記録するデータ構造
データを工夫して記録するデータ構造データを工夫して記録するデータ構造
データを工夫して記録するデータ構造Katsutoshi Nagaoka
 
はじめてのパターン認識 第11章 11.1-11.2
はじめてのパターン認識 第11章 11.1-11.2はじめてのパターン認識 第11章 11.1-11.2
はじめてのパターン認識 第11章 11.1-11.2Prunus 1350
 
大規模ネットワークの性質と先端グラフアルゴリズム
大規模ネットワークの性質と先端グラフアルゴリズム大規模ネットワークの性質と先端グラフアルゴリズム
大規模ネットワークの性質と先端グラフアルゴリズムTakuya Akiba
 
アンサンブル木モデル解釈のためのモデル簡略化法
アンサンブル木モデル解釈のためのモデル簡略化法アンサンブル木モデル解釈のためのモデル簡略化法
アンサンブル木モデル解釈のためのモデル簡略化法Satoshi Hara
 
Large scale gan training for high fidelity natural
Large scale gan training for high fidelity naturalLarge scale gan training for high fidelity natural
Large scale gan training for high fidelity naturalKCS Keio Computer Society
 
能動学習による多関係データセットの構築
能動学習による多関係データセットの構築能動学習による多関係データセットの構築
能動学習による多関係データセットの構築Hiroshi Kajino
 
20181219_全部見せます、データサイエンティストの仕事
20181219_全部見せます、データサイエンティストの仕事20181219_全部見せます、データサイエンティストの仕事
20181219_全部見せます、データサイエンティストの仕事Shunsuke Nakamura
 
プログラミングコンテストでのデータ構造
プログラミングコンテストでのデータ構造プログラミングコンテストでのデータ構造
プログラミングコンテストでのデータ構造Takuya Akiba
 
修士論文発表:「非負値行列分解における漸近的Bayes汎化誤差」
修士論文発表:「非負値行列分解における漸近的Bayes汎化誤差」修士論文発表:「非負値行列分解における漸近的Bayes汎化誤差」
修士論文発表:「非負値行列分解における漸近的Bayes汎化誤差」Naoki Hayashi
 
ランダムフォレストとそのコンピュータビジョンへの応用
ランダムフォレストとそのコンピュータビジョンへの応用ランダムフォレストとそのコンピュータビジョンへの応用
ランダムフォレストとそのコンピュータビジョンへの応用Kinki University
 
ベイズ統計によるデータ解析
ベイズ統計によるデータ解析ベイズ統計によるデータ解析
ベイズ統計によるデータ解析Kunihiro Hisatsune
 

Similar to 20190725 taguchi decision_tree_for_pubshare (20)

順序データでもベイズモデリング
順序データでもベイズモデリング順序データでもベイズモデリング
順序データでもベイズモデリング
 
Rによるデータサイエンス13「樹木モデル」
Rによるデータサイエンス13「樹木モデル」Rによるデータサイエンス13「樹木モデル」
Rによるデータサイエンス13「樹木モデル」
 
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】
 
(文献紹介)Deep Unrolling: Learned ISTA (LISTA)
(文献紹介)Deep Unrolling: Learned ISTA (LISTA)(文献紹介)Deep Unrolling: Learned ISTA (LISTA)
(文献紹介)Deep Unrolling: Learned ISTA (LISTA)
 
「樹木モデルとランダムフォレスト-機械学習による分類・予測-」-データマイニングセミナー
「樹木モデルとランダムフォレスト-機械学習による分類・予測-」-データマイニングセミナー「樹木モデルとランダムフォレスト-機械学習による分類・予測-」-データマイニングセミナー
「樹木モデルとランダムフォレスト-機械学習による分類・予測-」-データマイニングセミナー
 
Wssit slide
Wssit slideWssit slide
Wssit slide
 
DSB2019振り返り会:あのにっくき QWK を閾値調整なしで攻略した(かった)
DSB2019振り返り会:あのにっくき QWK を閾値調整なしで攻略した(かった)DSB2019振り返り会:あのにっくき QWK を閾値調整なしで攻略した(かった)
DSB2019振り返り会:あのにっくき QWK を閾値調整なしで攻略した(かった)
 
データを工夫して記録するデータ構造
データを工夫して記録するデータ構造データを工夫して記録するデータ構造
データを工夫して記録するデータ構造
 
はじめてのパターン認識 第11章 11.1-11.2
はじめてのパターン認識 第11章 11.1-11.2はじめてのパターン認識 第11章 11.1-11.2
はじめてのパターン認識 第11章 11.1-11.2
 
大規模ネットワークの性質と先端グラフアルゴリズム
大規模ネットワークの性質と先端グラフアルゴリズム大規模ネットワークの性質と先端グラフアルゴリズム
大規模ネットワークの性質と先端グラフアルゴリズム
 
アンサンブル木モデル解釈のためのモデル簡略化法
アンサンブル木モデル解釈のためのモデル簡略化法アンサンブル木モデル解釈のためのモデル簡略化法
アンサンブル木モデル解釈のためのモデル簡略化法
 
Large scale gan training for high fidelity natural
Large scale gan training for high fidelity naturalLarge scale gan training for high fidelity natural
Large scale gan training for high fidelity natural
 
能動学習による多関係データセットの構築
能動学習による多関係データセットの構築能動学習による多関係データセットの構築
能動学習による多関係データセットの構築
 
20181219_全部見せます、データサイエンティストの仕事
20181219_全部見せます、データサイエンティストの仕事20181219_全部見せます、データサイエンティストの仕事
20181219_全部見せます、データサイエンティストの仕事
 
プログラミングコンテストでのデータ構造
プログラミングコンテストでのデータ構造プログラミングコンテストでのデータ構造
プログラミングコンテストでのデータ構造
 
修士論文発表:「非負値行列分解における漸近的Bayes汎化誤差」
修士論文発表:「非負値行列分解における漸近的Bayes汎化誤差」修士論文発表:「非負値行列分解における漸近的Bayes汎化誤差」
修士論文発表:「非負値行列分解における漸近的Bayes汎化誤差」
 
ランダムフォレストとそのコンピュータビジョンへの応用
ランダムフォレストとそのコンピュータビジョンへの応用ランダムフォレストとそのコンピュータビジョンへの応用
ランダムフォレストとそのコンピュータビジョンへの応用
 
ベイズ統計によるデータ解析
ベイズ統計によるデータ解析ベイズ統計によるデータ解析
ベイズ統計によるデータ解析
 
凸包
凸包凸包
凸包
 
Dive into XGBoost.pdf
Dive into XGBoost.pdfDive into XGBoost.pdf
Dive into XGBoost.pdf
 

More from taguchi naoya

信号処理実応用入門
信号処理実応用入門信号処理実応用入門
信号処理実応用入門taguchi naoya
 
Trader-Company Method: A Metaheuristic for Interpretable Stock Price Predict...
Trader-Company Method:  A Metaheuristic for Interpretable Stock Price Predict...Trader-Company Method:  A Metaheuristic for Interpretable Stock Price Predict...
Trader-Company Method: A Metaheuristic for Interpretable Stock Price Predict...taguchi naoya
 
20201010 kaggle tweet コンペの話
20201010 kaggle tweet コンペの話20201010 kaggle tweet コンペの話
20201010 kaggle tweet コンペの話taguchi naoya
 
kaggle tweet コンペの話
kaggle tweet コンペの話kaggle tweet コンペの話
kaggle tweet コンペの話taguchi naoya
 
PLAsTiCC Astronomical Classification に参加した話
PLAsTiCC Astronomical Classification に参加した話PLAsTiCC Astronomical Classification に参加した話
PLAsTiCC Astronomical Classification に参加した話taguchi naoya
 
memory augmented neural networks with wormhole connection
memory augmented neural networks with wormhole connectionmemory augmented neural networks with wormhole connection
memory augmented neural networks with wormhole connectiontaguchi naoya
 

More from taguchi naoya (7)

信号処理実応用入門
信号処理実応用入門信号処理実応用入門
信号処理実応用入門
 
Trader-Company Method: A Metaheuristic for Interpretable Stock Price Predict...
Trader-Company Method:  A Metaheuristic for Interpretable Stock Price Predict...Trader-Company Method:  A Metaheuristic for Interpretable Stock Price Predict...
Trader-Company Method: A Metaheuristic for Interpretable Stock Price Predict...
 
20201010 kaggle tweet コンペの話
20201010 kaggle tweet コンペの話20201010 kaggle tweet コンペの話
20201010 kaggle tweet コンペの話
 
Acl2020 taguchi
Acl2020 taguchiAcl2020 taguchi
Acl2020 taguchi
 
kaggle tweet コンペの話
kaggle tweet コンペの話kaggle tweet コンペの話
kaggle tweet コンペの話
 
PLAsTiCC Astronomical Classification に参加した話
PLAsTiCC Astronomical Classification に参加した話PLAsTiCC Astronomical Classification に参加した話
PLAsTiCC Astronomical Classification に参加した話
 
memory augmented neural networks with wormhole connection
memory augmented neural networks with wormhole connectionmemory augmented neural networks with wormhole connection
memory augmented neural networks with wormhole connection
 

Recently uploaded

クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...博三 太田
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?akihisamiyanaga1
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 

Recently uploaded (8)

クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察  ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
 
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 

20190725 taguchi decision_tree_for_pubshare

  • 4. なぜ決定木について話す? • テーブルデータでは以下の点で非常に有用 (主に vs NN) • 単純に予測精度が高い • kaggle では初手 GBDT はよくあること • 予測根拠の解釈がしやすい • 外れ値に対して頑健 • 欠損値をそのまま扱う手法が充実 (今回は紹介しない) • GPU 使わなくてもある程度高速に学習できる • NN 世代はあまりちゃんと勉強してない (と思ってるけどどうですか…?) • 要所の概要は知ってるけどちゃんと理解してない • 基礎的なモデルとか歴史とか全然わからない 4
  • 6. AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963] • 史上初 [Loh, 2014] の回帰木アルゴリズム • 二分木を前提 • ノード内偏差平方和 ( 𝒊 𝒚𝒊 − 𝒚 𝒕 𝟐) を小さくするようにノードを分割していく ことで近い 𝑦𝒊 がまとまる様に学習 • 予測値は学習データにおける葉ノードの 𝑦𝒊 の平均値 6
  • 7. • 学習アルゴリズムの大枠 ① ルートノードに全ての学習データを 配置して学習開始 AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963] 7 all train data 処理が完了していないノード 処理中のノード 処理が完了した中間ノード 処理が完了した葉ノード
  • 8. • 学習アルゴリズムの大枠 ① ルートノードに全ての学習データを 配置して学習開始 AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963] 8 all train data ② 注目ノードにおいて分割に用いる 変数 𝒙 と分割条件を決める 処理が完了していないノード 処理中のノード 処理が完了した中間ノード 処理が完了した葉ノード 年齢 > 25
  • 9. • 学習アルゴリズムの大枠 ① ルートノードに全ての学習データを 配置して学習開始 AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963] 9 all train data 処理が完了していないノード 処理中のノード 処理が完了した中間ノード 処理が完了した葉ノード ② 注目ノードにおいて分割に用いる 変数 𝒙 と分割条件を決める ③ ② の分割結果が終了条件に該当 しない場合、分割を実行して処理 が完了していないノードに遷移 年齢 > 25
  • 10. • 学習アルゴリズムの大枠 ① ルートノードに全ての学習データを 配置して学習開始 AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963] 10 all train data 処理が完了していないノード 処理中のノード 処理が完了した中間ノード 処理が完了した葉ノード ② 注目ノードにおいて分割に用いる 変数 𝒙 と分割条件を決める ③ ② の分割結果が終了条件に該当 しない場合、分割を実行して処理 が完了していないノードに遷移 ④ ② の分割結果が終了条件に該当 する場合、分割を実行せず処理 が完了していないノードに遷移 年齢 > 25 男 or 女 体重 > 50
  • 11. • 学習アルゴリズムの大枠 ① ルートノードに全ての学習データを 配置して学習開始 AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963] 11 all train data 処理が完了していないノード 処理中のノード 処理が完了した中間ノード 処理が完了した葉ノード ② 注目ノードにおいて分割に用いる 変数 𝒙 と分割条件を決める ③ ② の分割結果が終了条件に該当 しない場合、分割を実行して処理 が完了していないノードに遷移 ④ ② の分割結果が終了条件に該当 する場合、分割を実行せず処理 が完了していないノードに遷移 ⑤ 処理が完了していないノードが なくなったら学習完了 年齢 > 25 男 or 女 体重 > 50
  • 12. • 学習アルゴリズムの大枠 ① ルートノードに全ての学習データを 配置して学習開始 AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963] 12 all train data 処理が完了していないノード 処理中のノード 処理が完了した中間ノード 処理が完了した葉ノード ② 注目ノードにおいて分割に用いる 変数 𝒙 と分割条件を決める ③ ② の分割結果が終了条件に該当 しない場合、分割を実行して処理 が完了していないノードに遷移 ④ ② の分割結果が終了条件に該当 する場合、分割を実行せず処理 が完了していないノードに遷移 ⑤ 処理が完了していないノードが なくなったら学習完了 年齢 > 25 男 or 女 体重 > 50
  • 13. AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963] • 分割に使う変数と条件を決めるアルゴリズム 13 partial train data ① 注目ノード内の不純度 𝝓 = 𝒊 𝒚𝒊 − 𝒚 𝒕 𝟐 を計算 𝝓 = 𝟏𝟐. 𝟖
  • 14. AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963] • 分割に使う変数と条件を決めるアルゴリズム 14 partial train data ① 注目ノード内の不純度 𝝓 = 𝒊 𝒚𝒊 − 𝒚 𝒕 𝟐 を計算 ② 全特徴の全分割候補に対して分割を行い、 それぞれについて分割後の子ノードの 不純度の和 𝝓 𝒄𝒉𝒊 = 𝝓 𝟎 + 𝝓 𝟏 を求める numerical : 𝐧 − 𝟏 通り (𝐧 は unique 値数) categorical : 𝟐 𝐦−𝟏 − 𝟏 通り (𝐦 は unique 値数) 𝝓 = 𝟏𝟐. 𝟖 変数 条件 𝝓 𝟎 𝝓 𝟏 性別 男 or 女 2.8 7.3 年齢 < 20 10.2 2.1 年齢 < 21 9.8 1.9 …
  • 15. AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963] • 分割に使う変数と条件を決めるアルゴリズム 15 partial train data ① 注目ノード内の不純度 𝝓 = 𝒊 𝒚𝒊 − 𝒚 𝒕 𝟐 を計算 ② 全特徴の全分割候補に対して分割を行い、 それぞれについて分割後の子ノードの 不純度の和 𝝓 𝒄𝒉𝒊 = 𝝓 𝟎 + 𝝓 𝟏 を求める numerical : 𝐧 − 𝟏 通り (𝐧 は unique 値数) categorical : 𝟐 𝐦−𝟏 − 𝟏 通り (𝐦 は unique 値数) ③ 情報利得 𝑰 = 𝝓 − 𝝓 𝒄𝒉𝒊 が最も大きい変数・分割 条件を採用 𝝓 = 𝟏𝟐. 𝟖 𝝓 𝟎 = 𝟐. 𝟖 𝝓 𝟏 = 𝟕. 𝟑 変数 条件 𝝓 𝟎 𝝓 𝟏 性別 男 or 女 2.8 7.3 年齢 < 20 10.2 2.1 年齢 < 21 9.8 1.9 …
  • 16. AID (Automatic Interaction Detection) [Morgan & Sonquist, 1963] • 終了条件 • 分割による情報利得が一定値を下回った場合に終了 • 学習を始める前にハイパーパラメータとして設定 • ハイパーパラメータなので over (or under) fitting が問題 となりがち 16
  • 17. THAID (THeta Automatic Interaction Detection) [Messenger & Mandell, 1972] • 史上初 [Loh, 2011] の分類木アルゴリズム • 二分木を前提 • ジニ不純度 (𝟏 − 𝒋 𝒑𝒋 𝟐 ) (またはエントロピー関数) を小さくするようにノードを 分割していくことで同じラベルがまとまる様に学習 (𝒑𝒋 はノード内のラベル 𝒋 の比率) • 予測値は学習データにおける葉ノードの中でもっとも比率の多いラベル 17
  • 18. THAID (THeta Automatic Interaction Detection) [Messenger & Mandell, 1972] 18 • 学習アルゴリズムの大枠 ① ルートノードに全ての学習データを 配置して学習開始all train data 処理が完了していないノード 処理中のノード 処理が完了した中間ノード 処理が完了した葉ノード ② 注目ノードにおいて分割に用いる 変数 𝒙 と分割条件を決める ③ ② の分割結果が終了条件に該当 しない場合、分割を実行して処理 が完了していないノードに遷移 ④ ② の分割結果が終了条件に該当 する場合、分割を実行せず処理 が完了していないノードに遷移 ⑤ 処理が完了していないノードが なくなったら学習完了 年齢 > 25 男 or 女 体重 > 50
  • 19. • 分割に使う変数と条件を決めるアルゴリズム 19 partial train data ① 注目ノード内の不純度 𝝓 = (𝟏 − 𝒋 𝒑𝒋 𝟐 )を計算 ② 全特徴の全分割候補に対して分割を行い、 それぞれについて分割後の子ノードの 不純度の和 𝝓 𝒄𝒉𝒊 = 𝝓 𝟎 + 𝝓 𝟏 を求める numerical : 𝐧 − 𝟏 通り (𝐧 は unique 値数) categorical : 𝟐 𝐦−𝟏 − 𝟏 通り (𝐦 は unique 値数) ③ 情報利得 𝑰 = 𝝓 − 𝝓 𝒄𝒉𝒊 が最も大きい変数・分割 条件を採用 𝝓 = 𝟎. 𝟕 𝝓 𝟎 = 𝟎. 𝟏 𝝓 𝟏 = 𝟎. 𝟑 変数 条件 𝝓 𝟎 𝝓 𝟏 性別 男 or 女 0.1 0.3 年齢 < 20 0.3 0.3 年齢 < 21 0.2 0.3 … THAID (THeta Automatic Interaction Detection) [Messenger & Mandell, 1972]
  • 20. CART (Classification And Regression Trees)[Breiman et al., 1984] • 最近の論文でも出てくるし、scikit-learn のもこれの最適化版 • AID, THAID とほぼ同様のアルゴリズムで回帰・分類木を構築 • AID, THAID に比べて終了条件を緩め (ノード内のデータ数で決める等)、 代わりに pruning を行う • AID, THAID で問題となる over (or under) fitting に対応 20
  • 21. CART (Classification And Regression Trees)[Breiman et al., 1984] 21 • 学習アルゴリズムの大枠 ① ルートノードに全ての学習データを 配置して学習開始all train data 処理が完了していないノード 処理中のノード 処理が完了した中間ノード 処理が完了した葉ノード ② 注目ノードにおいて分割に用いる 変数 𝒙 と分割条件を決める ③ ② の分割結果が終了条件に該当 しない場合、分割を実行して処理 が完了していないノードに遷移 ④ ② の分割結果が終了条件に該当 する場合、分割を実行せず処理 が完了していないノードに遷移 年齢 > 25 男 or 女 体重 > 50
  • 22. CART (Classification And Regression Trees)[Breiman et al., 1984] 22 • 学習アルゴリズムの大枠 ① ルートノードに全ての学習データを 配置して学習開始all train data 処理が完了していないノード 処理中のノード 処理が完了した中間ノード 処理が完了した葉ノード ② 注目ノードにおいて分割に用いる 変数 𝒙 と分割条件を決める ③ ② の分割結果が終了条件に該当 しない場合、分割を実行して処理 が完了していないノードに遷移 ④ ② の分割結果が終了条件に該当 する場合、分割を実行せず処理 が完了していないノードに遷移 ⑤ 処理が完了していないノードが なくなったら pruning 後に学習完了 年齢 > 25 男 or 女 体重 > 50
  • 23. CART (Classification And Regression Trees)[Breiman et al., 1984] • Pruning の方法 • 葉ノードの親ノード全てについて ↓ を終了するまで実行 • validation set における評価値が最も良くなる枝を pruning, 良くなる枝がない場合 pruning 終了 23 all train data train data validation data 学習 pruning
  • 24. ID3 (Iterative Dichotomiser 3) [Quinlan, 1986] • 多分木を生成 • 多分木は二分木を繰り返せば得られ、また分割されすぎるので 好ましくない (統計的学習の基礎より) • エントロピー関数を用い、分類問題のみ対応 • Categorical 変数については種類数分の分岐を生成 24
  • 25. FACT (Fast and Accurate Classification Tree) [Loh & Vanichsetakul, 1988] • Biases in variable selection • CART や ID3 では各変数の全分割候補を探索しているため、分割候補 の回数の多い特徴に対する試行が増えて選択されやすくなる [Breiman, 1984] • 原因は variable selection と分割選択を同時に行っていること • 特徴選択と分割を別で行う • 特徴選択 : それぞれ分散分析を行い、最も F 統計量が大きい特徴を選択 • 分割 : 選択された特徴に対して線形判別分析 (LDA) 等で決定境界決め 25
  • 27. Single decision tree アンサンブル • Bagging • 学習データをブートストラップサンプリングし、各サンプルを学習に使用 • 各木の予測値の平均 (回帰・分類) や多数決 (分類) 等で予測 • Random Forest [Breiman et al., 2001] では更に使用する変数もサンプリング 27 Original train sampled train sampled train sampled train… Single decision tree Single decision tree Bootstrap sampling …
  • 28. • Boosting • 木の学習結果に依存してどんどん木を構築していく • 𝒊 番目の木の予測値は 𝒊 − 𝟏 番目までの予測値の和との合計値 • 各ノード 𝒋 の予測値は 𝒚𝒊 の平均ではなく 𝒘 = 𝒌∈𝒋 𝒈 𝒌 𝒌∈𝒋 𝒉 𝒌 で評価 • 分割用の不純度も 𝒘 に基づいて求められる 𝒚𝒊 と 𝒚𝒊 の誤差を 𝒊 − 𝟏 まで の予測値について 二次近似し、微分を 0 とおく アンサンブル 28 Single decision tree 𝒚 𝟎 = 𝒚 𝒚 𝟎 Single decision tree 𝒚 𝟏 = 𝒚 − 𝒚 𝟎 𝒚 𝟏 Single decision tree 𝒚 𝟐 = 𝒚 − 𝒚 𝟎 − 𝒚 𝟏 𝒚 𝟐 https://www.kdd.org/kdd2016/papers/files/rfp0697-chenAemb.pdf
  • 29. Importance score • 木の可視化による解釈の限界 • 木が大きくなると把握しきれない • アンサンブルしたら可視化してもわからない 29 https://explained.ai/decision-tree-viz/index.html
  • 30. Importance score • Mean Decrease in Impurity • 各特徴について分岐に使われた回数を各ノードのサンプル数で 重み付けしたものの和 • 各特徴について分岐で得た情報利得を各ノードのサンプル数で 重み付けしたものの和 その他目にするやつ達 • Permutation importance • Null importance • SHAP 30 https://medium.com/the-artificial-impostor/feature-importance-measures-for-tree-models-part-i-47f187c1a2c3
  • 31. まとめ • 決定木の予測アルゴリズム • 決定木の基礎的な学習アルゴリズム • AID, THAID, CART, ID3, FACT • アンサンブル • Bagging, Boosting • Feature importance 31
  • 32. 参考文献 - Loh WY (2014). Fifty years of classification and regression trees. International Statistical Review, 82, 329–348. - Morgan, J.N. & Sonquist, J.A. (1963). Problems in the analysis of survey data, and a proposal. J. Amer. Statist. Assoc., 58, 415–434. - Messenger, R. & Mandell, L. (1972). A modal search technique for predictive nominal scale multivariate analysis. J. Amer. Statist. Assoc., 67, 768–772. - Breiman, L., Friedman, J.H., Olshen, R.A. & Stone, C.J. (1984). Classification and Regression Trees. Belmont: Wadsworth. - Quinlan, J.R. (1986). Induction of decision trees. Mach. Learn., 1, 81–106. - Loh, W.-Y. & Vanichsetakul, N. (1988). Tree-structured classification via generalized discriminant analysis (with discussion). J. Amer. Statist. Assoc., 83, 715–728. - Breiman, L. (2001). Random forests. Mach. Learn., 45, 5–32. - Trevor Hastie et al. (2009). 統計的学習の基礎 32

Editor's Notes

  1. n-1 ですむのはソートされている前提 -1 は全部からのノードを作らないから m-1 の -1 は全部空のノードを作らないから
  2. n-1 ですむのはソートされている前提 -1 は全部からのノードを作らないから m-1 の -1 は全部空のノードを作らないから
  3. n-1 ですむのはソートされている前提 -1 は全部からのノードを作らないから m-1 の -1 は全部空のノードを作らないから
  4. n-1 ですむのはソートされている前提 -1 は全部からのノードを作らないから m-1 の -1 は全部空のノードを作らないから
  5. より良い pruning 法もちゃんと研究されている