14. Is your character American ?
Is your character internationally famous?
Is your character a female?
Is your character famous thanks to television?
Is your character from your family?
Have you ever fallen in love with your character?
Have you kissed your character on the lips?
Is your character real?
Can your character fly?
Is your character a singer?
Does your character fight?
Does your character have a brother or sister?
Does your character have long hair?
Is your character a High School student?
Is your character English?
Is your character from a video game?
Is your character a maid?
Does your character love spicy food?
Is your character blond?
Is your character small?
* Yes
* Probably/Parially
* I don’t know
* Probably not / Not really
* No
の5択で,上記の利用例では20の質問だった.
15. Is your character American ? : No
Is your character internationally famous? : No
Is your character a female? : Yes
Is your character famous thanks to television? : No
Is your character from your family? : No
Have you ever fallen in love with your character? : Yes
Have you kissed your character on the lips? : No
Is your character real? : No
Can your character fly? : No
Is your character a singer? : No
Does your character fight? : No
Does your character have a brother or sister? : No
Does your character have long hair? : No
Is your character a High School student? : No
Is your character English? : No
Is your character from a video game? : Yes
Is your character a maid? : Yes
Does your character love spicy food? : No
Is your character blond? : No
Is your character small? : No
雪さん
あたった.
16. Is your character American ? : No 実際は5分岐
Is your character internationally famous? : No
Is your character a female? : Yes
Is your character famous thanks to television? : No
Is your character from your family? : No
Have you ever fallen in love with your character? : Yes
Have you kissed your character on the lips? : No
Is your character real? : No
Can your character fly? : No
Is your character a singer? : No
Does your character fight? : No
Does your character have a brother or sister? : No
Does your character have long hair? : No
Is your character a High School student? : No
Is your character English? : No
Is your character from a video game? : Yes
Is your character a maid? : Yes
Does your character love spicy food? : No
Is your character blond? : No 末端の場合の数は520通り (86 Ti.95兆).
Is your character small? : No
木構造で分類ができる.
分類は速い (N 個のデータ → log N 回の探索).
特徴は数値に限らない(名義尺度等も可).欠測も許容できる.
特徴のスケールや距離尺度にあまり影響されない.
17. 決定木の決定境界は特徴軸に平行な線分となる.
START
かたさ
「かたさ」は a 以下?
Yes No
「重さ」は b 以下?
Yes No
ミカン
重さ
かたさ かたさ かたさ
c
a
重さ
b 重さ 重さ
18. 決定木による分類のようす
START
かたさ
「かたさ」は a 以下?
Yes No リンゴ ゾーン1
「重さ」は b 以下?
Yes No リンゴ ゾーン2
「かたさ」は c 以下? …
ミカン ゾーン
Yes No
…
ミカン 重さ
かたさ かたさ かたさ
c
a
重さ
b 重さ 重さ
22. 集団学習: 複数の学習器 (base learner, weak learner) を組み合わせるアプローチ
1994
bagging
base learner は
模範解答全部
でなく乱択した
一部から学ぶ.
互いに異なる
模範解答を用いるので
個性が出る. Bagging/tree
1995
random subspace (RS) 2001 多数決
2006
base learnerは特徴全部 Random Forest (RF) Extremely Randomized
でなく,乱択した一部を用いる. Bagging + Local RS Trees (Extra Trees)
global RS: 学習開始時乱択 模範解答も特徴も乱択.
local RS: 分岐毎乱択 base learner は CART. Local RS か RF に基き,
さらに base learner (決定木)
の枝分かれ位置を乱択で決定.
(CARTでは枝分かれ位置を
網羅的に探索する)
random
図は Global RS
random
23. base learner (決定木) の本数と決定境界
2本 4本 8本 16本 32本 64本
Random Forest
Extra Trees
k-最近傍法(NN) CART
SVM (RBF kernel) naive Bayes
24. 決定木と乱択による集団学習アルゴリズムの比較
乱択(ランダムに選択)するもの
教師データ 特徴 枝わかれ位置
Bagging ○ ー ー
Random Subspace ー ○ ー
Random Forest ○ ○ ー
Extra Trees ー / ○ ○ ○
教師データを乱択する利点:
学習しつつ,分類精度や類似度行列を求められる.
特徴を乱択する利点:
学習が速い.学習しつつ,特徴の重要性をスコアリングできる.
枝わかれ位置を乱択する利点:
学習が速い.
base learner に決定木を用いる利点:
分類が速い.特徴のスケーリングや特徴間の関係を無視できる.
26. RandomForest, ExtraTrees と他手法との比較
MLP/BP
naive Bayes
SVM RBF
default
CART
SVM linear Random Forest
default kNN
SVM RBF
best
ExtraTrees
優秀
高速
27. Iris flower data set
別名: Fisher's Iris data set, Anderson's Iris data set
150サンプル,4次元,3クラス.
アメリカのアヤメ3種(50サンプル/種)の花の形から,種を分類する問題.
Fischerが判別分析の論文(1936)で用いた為,最も有名な多変量データとなった.
特徴量: ガク(sepal)の長さ,ガクの幅,花弁(petal)の長さ,花弁の幅.
I. setosa I. versicolor I. virginica
ヒオウギアヤメ
R では
> iris
とすると表示される.
28. R で RandomForest を使う (1. 学習)
> iris
Sepal.Length Sepal.Width Petal.Length ... Species
1 5.1 3.5 1.4 ... setota
: : : : :
> library(randomForest)
> f1 <- randomForest(formula=Species ~ ., data=iris)
> f1
Call:
randomForest(formula = Species ~ ., data = iris)
Type of random forest: classification
Number of trees: 500
No. of variables tried at each split: 2
OOB estimate of error rate: 4%
Confusion matrix:
setosa versicolor virginica class.error
setosa 50 0 0 0.00
versicolor 0 47 3 0.06
virginica 0 3 47 0.06
30. R で RandomForest を使う (2. 特徴の評価)
> round(importance(iris.f),1) 各特徴の分類精度への寄与
... MeanDecreaseAccuracy ...
Sepal.Length ... 1.3 ...
Sepal.Width ... 0.7 ...
Petal.Length ... 2.6 ...
Petal.Width ... 2.5 ...
bad
good
good
31. R で RandomForest を使う (3. 未知の花の分類)
Andersen氏が同定した花 特徴量 分類森
特徴抽出 'randomForest'
種名 (by Andersen E) 種名 iris.f
I. setosa I. virginica iris (150点,4特徴,3クラス)
I. versicolor
種名がわからない花 特徴量 ラベル
特徴抽出 'predict'
p versicolor
> p <- data.frame(cbind(5.8, 3, 4.35, 1.3))
> colnames(p) <- colnames(iris)[-5]
> p
Sepal.Length Sepal.Width Petal.Length Petal.Width
1 5.8 3 4.35 1.3
> predict(iris.f, p)
1
versicolor
Levels: setosa versicolor virginica
32. FORTRAN77
開発者のページ.
Department of Statistics
University of California, Berkeley にある.
2004年に最新バージョンが出ている.
すぐにnew versionが出る予定らしい.
Leo Breiman (1928-2005)
CART や Bagging も Breiman の仕事.
R の RandomForest パッケージの中心部も Breiman のコードが元になっている.