SlideShare une entreprise Scribd logo
1  sur  33
Télécharger pour lire hors ligne
2012-02-27 Kashiwa.R#2



         RandomForest 等について




                   くつな   なつまろ
              朽名 夏麿
  (東京大学 大学院新領域創成科学研究科 先端生命科学専攻)
前回 (Kashiwa.R#1, 2011-11-11) スライドより

  ImageJ から R を使って画像の学習と分類をする



                        ?
 ゴルジ体   リソソーム         課題画像          4. 教師データから分類森を作り,
    教師画像群                                課題データを分類
         ImageJ                          randomForest package
1. 画像             7. 表示             3. 特徴等            5. 分類結果

   今回の plugin                                     R
2. 特徴等            6. 分類結果

                          JRI (Java/R)
                          JNI (Java/C)
教師付き学習と分類

人が判定済の物体               特徴量        分類器
                特徴抽出         学習
          ラベル          ラベル




      未知の物体            特徴量        ラベル
?               特徴抽出         分類



    かたさ




                   重さ
教師データの用意

人が判定済の物体
      ラベル
             例: 専門家によるアノテーションなど.
                果物ハカセとか初生雛鑑別師とか.


    未知の物体
?
    ※大抵のモデルでは,この時は「未知の物体」を利用しない.
特徴抽出

人が判定済の物体            特徴量
             特徴抽出
       ラベル          ラベル
                               どちらかで
                               十分そう.



       かたさ

       重さ
 かたさ            分類に役立たなそう.




             ※特徴の数(次元)に
             決まりはない.
                          分類に役立たなそうだが
                重さ        何かを示唆している.
分類器の生成(学習フェイズ)

人が判定済の物体             特徴量        分類器
             特徴抽出          学習
       ラベル           ラベル




 かたさ




             リンゴ側


   ミカン側
                    重さ
分類器の生成(学習フェイズ)
                               分類器

分類器の具体的なモデルやデータ構造は多種多様
だが,結果的に(陰に)特徴を軸とする空間を複数の領域に
分割する決定境界ができている.

決定境界そのものと,どちら側がミカンでどちら側がリンゴか,
を覚えておけば,教師データそのものは忘れてよい場合が多い.


     かたさ




               リンゴ側


        ミカン側      決定境界 (識別面)
                   重さ
ここから分類器の利用(分類フェーズ)
                             分類器


未知の物体がきた.



 ?      未知の物体


      かたさ




                リンゴ側


        ミカン側
                       重さ
分類フェーズにおける特徴抽出
                                分類器


未知の物体に対して…      分類器の生成時と同じ特徴
                「かたさ」「重さ」を測定.


 ?      未知の物体
                   特徴抽出
                          特徴量



      かたさ




            ?     リンゴ側


        ミカン側
                         重さ
分類
                                   分類器


未知の物体に対して…



 ?      未知の物体
                特徴抽出
                        特徴量
                              分類
                                   ラベル

                               分類の結果,
      かたさ                      ミカンと推定された.




                リンゴ側


        ミカン側
                       重さ
教師付き学習と分類

人が判定済の物体               特徴量        分類器
                特徴抽出         学習
          ラベル          ラベル




      未知の物体            特徴量        ラベル
?               特徴抽出         分類



    かたさ
                       どうやって分類器(決定境界)
                       を作るのか?
                       どのような表現(モデル)にするか?




                   重さ
教師付き学習の例: 最短距離法,[k-]最近傍法
かたさ
                     ・ 教師データを丸暗記する.
                     ・ 分類対象の果物の近くに位置する果物とする.
                     ・ 「近く」: 距離の定義はいくつかある.
                     ・ 最も近い果物だけ考慮するか(k=1),
 ?                     近くの k 個の果物から多数決する.

                           k=1      k=3
                    重さ




                           k=9      k = 17




     2特徴,3クラス分類の例
教師付き学習のアルゴリズムと決定境界




          k-最近傍法(NN)                           naive Bayes
k=1    k=3            k=9            k=17




                SVM (RBF kernel)
      default                      交差検証でbest
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の質問だった.
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


                  雪さん
                                                          あたった.
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 回の探索).
  特徴は数値に限らない(名義尺度等も可).欠測も許容できる.
  特徴のスケールや距離尺度にあまり影響されない.
決定木の決定境界は特徴軸に平行な線分となる.
      START
                                かたさ
「かたさ」は a 以下?
Yes       No
        「重さ」は b 以下?
       Yes       No
ミカン



                                            重さ
かたさ                   かたさ             かたさ




                                       c
 a

                 重さ
                            b     重さ        重さ
決定木による分類のようす
       START
                                   かたさ
「かたさ」は a 以下?
Yes       No                                       リンゴ ゾーン1
           「重さ」は b 以下?
          Yes       No             リンゴ ゾーン2

     「かたさ」は c 以下?    …
                                              ミカン ゾーン
     Yes      No
      …




               ミカン                                            重さ
かたさ                      かたさ                  かたさ




                                               c
 a

                     重さ
                               b       重さ                     重さ
決定木の作り方 (CART の場合)
かたさ
                                           START                 2択式の質問なので,質問
                                                                 ごとに2つのグループに
                            N=20
                                                                 分かれる.グループ内には
                                                                 1種の果物が入るように
                N=16
                                   「かたさ」は a 以下?                  したい.もしくは,果物の
 a                                 Yes       No                  比率を偏るようにしたい.
                N=4                                              言い換えると
                                                                 グループを「純粋」にしたい.
                                                                        = エントロピー(乱雑さ)を小さくしたい.
                       重さ            N=4       N=16


かたさ                                                                    P(E): Eの起こる確率
                                                                       I(E): Eが起きた際に得られる情報量
                                                                       H: 情報エントロピー
      N=6                                                              P(リンゴ)=0.5, P(ミカン)=0.5 で最大.
                                                                       P(リンゴ)=0, P(ミカン)=1 や
                                                                       P(リンゴ)=1, P(ミカン)=0 で最小.

                                   情報エントロピーを極力,低下させる質問 = 情報を多く得られる質問

                                   最初のエントロピーは I(ミカン) * P(ミカン) + I(リンゴ) * P(リンゴ) = 0.23 + 0.26 = 0.49
                                   質問 a で得られる2群のエントロピーの重み付き平均は
                                           4/20 * 下のエントロピー(0) + 16/20 * 上のエントロピー(0.42) = 0.34
                N=14               質問 b で得られる2群のエントロピーの重み付き平均は
                                           6/20 * 左のエントロピー(0.25) + 14/20 * 右のエントロピー(0.40) = 0.35
                                   質問 a で低下するエントロピー: 0.49-0.34=0.15
            b          重さ          質問 b で低下するエントロピー: 0.49-0.35=0.14      → 質問 a の方がいい
完全に展開した決定木の決定境界




                k=1   k=3    k=9   k=17




  naive Bayes         k-最近傍法(NN)          SVM best

他の分類器に比べて,木は不器用に見える.→ 分類精度はこのままでは低い.
木から森へ
集団学習: 複数の学習器 (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
base learner (決定木) の本数と決定境界
                  2本    4本    8本       16本        32本      64本

Random Forest




   Extra Trees



                                   k-最近傍法(NN)             CART




                               SVM (RBF kernel)         naive Bayes
決定木と乱択による集団学習アルゴリズムの比較
                       乱択(ランダムに選択)するもの
                  教師データ     特徴    枝わかれ位置
Bagging             ○        ー       ー
Random Subspace     ー        ○       ー
Random Forest       ○        ○       ー
Extra Trees        ー / ○     ○       ○

教師データを乱択する利点:
 学習しつつ,分類精度や類似度行列を求められる.

特徴を乱択する利点:
 学習が速い.学習しつつ,特徴の重要性をスコアリングできる.

枝わかれ位置を乱択する利点:
 学習が速い.

base learner に決定木を用いる利点:
  分類が速い.特徴のスケーリングや特徴間の関係を無視できる.
RandomForest, ExtraTrees と他手法との比較
20種のベンチマークデータを用いて,各手法の分類精度と所要時間を
交差検定(8-fold)で求め,平均順位を得た.
                サンプル数 特徴数 クラス数
   australian       690   14 2
   breast-cancer    683   10 2
   colon-cancer      62 2000 2
   connect-4       1000 126 3
   covtype         1000   54 2
   diabetes         768    8 2
   german.numer    1000   24 2
   glass            214    9 6
   heart            270   13 2
   ionosphere       351   34 2
   iris             150    4 3
   liver-disorder   345    6 2
   mnistt           500 774 10
      :               :   :  :
   wine             178   18 3
RandomForest, ExtraTrees と他手法との比較

                         MLP/BP
         naive Bayes


                        SVM RBF
                         default
                                      CART

                       SVM linear                Random Forest
                         default        kNN
                                                  SVM RBF
                                                    best
                                    ExtraTrees



優秀


         高速
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
         とすると表示される.
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
R で RandomForest を使う (1. 学習)

Andersen氏が同定した花                       特徴量                    分類森
                       特徴抽出                 'randomForest'
             種名     (by Andersen E)   種名                      iris.f
                            iris (150点,4特徴,3クラス)

> iris
    Sepal.Length Sepal.Width Petal.Length ... Species
1            5.1         3.5          1.4 ... setota
2            4.9         3.0          1.4 ... setosa
:             :           :            :          :
149          6.2         3.4          5.4 ...virginica
150          5.9         3.0          5.1 ...virginica

> library(randomForest)
> iris.f <- randomForest(formula=Species ~ ., data=iris)
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
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
FORTRAN77
 開発者のページ.
 Department of Statistics
 University of California, Berkeley にある.

 2004年に最新バージョンが出ている.
 すぐにnew versionが出る予定らしい.


 Leo Breiman (1928-2005)

CART や Bagging も Breiman の仕事.
R の RandomForest パッケージの中心部も Breiman のコードが元になっている.
まとめ
RandomForest , ExtraTrees について紹介した.
 * ユーザーがチューニングすべきところがほとんどない.
 * ブラックボックスではない(動作自体は単純).
 * 幅広い分類問題に使える.
 * 分類以外にも有用な情報が得られる.
 * 学習も分類も速い.データ数,特徴数の増加に強い.
      …といった良いツールである.とくに R からは手軽に扱える.

発表に盛り込めなかったこと,考えていることなど:
   本家以外の実装(R 用にも他に2つくらいありそう).
   欠点(メモリを食うとか,統計学的?に解析しにくいとか).
   out-of-bag データからの混同行列や特徴スコアリングの仕方.
   回帰への利用.
   「教師無し」での利用法.クラスタリングやプロトタイピング.
   実用的な利用例.
   kd-tree やボトムアップなクラスタリング法との比較.

Contenu connexe

Dernier

TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案sugiuralab
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineerYuki Kikuchi
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfFumieNakayama
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfFumieNakayama
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~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年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)UEHARA, Tetsutaro
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)Hiroshi Tomioka
 

Dernier (8)

TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
 
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
 
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdfAWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
 
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdfクラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
 
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~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年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 

En vedette

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

En vedette (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Kashiwa.R#2 RandomForest 等について

  • 1. 2012-02-27 Kashiwa.R#2 RandomForest 等について くつな なつまろ 朽名 夏麿 (東京大学 大学院新領域創成科学研究科 先端生命科学専攻)
  • 2. 前回 (Kashiwa.R#1, 2011-11-11) スライドより ImageJ から R を使って画像の学習と分類をする ? ゴルジ体 リソソーム 課題画像 4. 教師データから分類森を作り, 教師画像群 課題データを分類 ImageJ randomForest package 1. 画像 7. 表示 3. 特徴等 5. 分類結果 今回の plugin R 2. 特徴等 6. 分類結果 JRI (Java/R) JNI (Java/C)
  • 3. 教師付き学習と分類 人が判定済の物体 特徴量 分類器 特徴抽出 学習 ラベル ラベル 未知の物体 特徴量 ラベル ? 特徴抽出 分類 かたさ 重さ
  • 4. 教師データの用意 人が判定済の物体 ラベル 例: 専門家によるアノテーションなど. 果物ハカセとか初生雛鑑別師とか. 未知の物体 ? ※大抵のモデルでは,この時は「未知の物体」を利用しない.
  • 5. 特徴抽出 人が判定済の物体 特徴量 特徴抽出 ラベル ラベル どちらかで 十分そう. かたさ 重さ かたさ 分類に役立たなそう. ※特徴の数(次元)に 決まりはない. 分類に役立たなそうだが 重さ 何かを示唆している.
  • 6. 分類器の生成(学習フェイズ) 人が判定済の物体 特徴量 分類器 特徴抽出 学習 ラベル ラベル かたさ リンゴ側 ミカン側 重さ
  • 7. 分類器の生成(学習フェイズ) 分類器 分類器の具体的なモデルやデータ構造は多種多様 だが,結果的に(陰に)特徴を軸とする空間を複数の領域に 分割する決定境界ができている. 決定境界そのものと,どちら側がミカンでどちら側がリンゴか, を覚えておけば,教師データそのものは忘れてよい場合が多い. かたさ リンゴ側 ミカン側 決定境界 (識別面) 重さ
  • 8. ここから分類器の利用(分類フェーズ) 分類器 未知の物体がきた. ? 未知の物体 かたさ リンゴ側 ミカン側 重さ
  • 9. 分類フェーズにおける特徴抽出 分類器 未知の物体に対して… 分類器の生成時と同じ特徴 「かたさ」「重さ」を測定. ? 未知の物体 特徴抽出 特徴量 かたさ ? リンゴ側 ミカン側 重さ
  • 10. 分類 分類器 未知の物体に対して… ? 未知の物体 特徴抽出 特徴量 分類 ラベル 分類の結果, かたさ ミカンと推定された. リンゴ側 ミカン側 重さ
  • 11. 教師付き学習と分類 人が判定済の物体 特徴量 分類器 特徴抽出 学習 ラベル ラベル 未知の物体 特徴量 ラベル ? 特徴抽出 分類 かたさ どうやって分類器(決定境界) を作るのか? どのような表現(モデル)にするか? 重さ
  • 12. 教師付き学習の例: 最短距離法,[k-]最近傍法 かたさ ・ 教師データを丸暗記する. ・ 分類対象の果物の近くに位置する果物とする. ・ 「近く」: 距離の定義はいくつかある. ・ 最も近い果物だけ考慮するか(k=1), ? 近くの k 個の果物から多数決する. k=1 k=3 重さ k=9 k = 17 2特徴,3クラス分類の例
  • 13. 教師付き学習のアルゴリズムと決定境界 k-最近傍法(NN) naive Bayes k=1 k=3 k=9 k=17 SVM (RBF kernel) default 交差検証でbest
  • 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 重さ 重さ
  • 19. 決定木の作り方 (CART の場合) かたさ START 2択式の質問なので,質問 ごとに2つのグループに N=20 分かれる.グループ内には 1種の果物が入るように N=16 「かたさ」は a 以下? したい.もしくは,果物の a Yes No 比率を偏るようにしたい. N=4 言い換えると グループを「純粋」にしたい. = エントロピー(乱雑さ)を小さくしたい. 重さ N=4 N=16 かたさ P(E): Eの起こる確率 I(E): Eが起きた際に得られる情報量 H: 情報エントロピー N=6 P(リンゴ)=0.5, P(ミカン)=0.5 で最大. P(リンゴ)=0, P(ミカン)=1 や P(リンゴ)=1, P(ミカン)=0 で最小. 情報エントロピーを極力,低下させる質問 = 情報を多く得られる質問 最初のエントロピーは I(ミカン) * P(ミカン) + I(リンゴ) * P(リンゴ) = 0.23 + 0.26 = 0.49 質問 a で得られる2群のエントロピーの重み付き平均は 4/20 * 下のエントロピー(0) + 16/20 * 上のエントロピー(0.42) = 0.34 N=14 質問 b で得られる2群のエントロピーの重み付き平均は 6/20 * 左のエントロピー(0.25) + 14/20 * 右のエントロピー(0.40) = 0.35 質問 a で低下するエントロピー: 0.49-0.34=0.15 b 重さ 質問 b で低下するエントロピー: 0.49-0.35=0.14 → 質問 a の方がいい
  • 20. 完全に展開した決定木の決定境界 k=1 k=3 k=9 k=17 naive Bayes k-最近傍法(NN) SVM best 他の分類器に比べて,木は不器用に見える.→ 分類精度はこのままでは低い.
  • 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 に決定木を用いる利点: 分類が速い.特徴のスケーリングや特徴間の関係を無視できる.
  • 25. RandomForest, ExtraTrees と他手法との比較 20種のベンチマークデータを用いて,各手法の分類精度と所要時間を 交差検定(8-fold)で求め,平均順位を得た. サンプル数 特徴数 クラス数 australian 690 14 2 breast-cancer 683 10 2 colon-cancer 62 2000 2 connect-4 1000 126 3 covtype 1000 54 2 diabetes 768 8 2 german.numer 1000 24 2 glass 214 9 6 heart 270 13 2 ionosphere 351 34 2 iris 150 4 3 liver-disorder 345 6 2 mnistt 500 774 10 : : : : wine 178 18 3
  • 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
  • 29. R で RandomForest を使う (1. 学習) Andersen氏が同定した花 特徴量 分類森 特徴抽出 'randomForest' 種名 (by Andersen E) 種名 iris.f iris (150点,4特徴,3クラス) > iris Sepal.Length Sepal.Width Petal.Length ... Species 1 5.1 3.5 1.4 ... setota 2 4.9 3.0 1.4 ... setosa : : : : : 149 6.2 3.4 5.4 ...virginica 150 5.9 3.0 5.1 ...virginica > library(randomForest) > iris.f <- randomForest(formula=Species ~ ., data=iris)
  • 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 のコードが元になっている.
  • 33. まとめ RandomForest , ExtraTrees について紹介した. * ユーザーがチューニングすべきところがほとんどない. * ブラックボックスではない(動作自体は単純). * 幅広い分類問題に使える. * 分類以外にも有用な情報が得られる. * 学習も分類も速い.データ数,特徴数の増加に強い. …といった良いツールである.とくに R からは手軽に扱える. 発表に盛り込めなかったこと,考えていることなど: 本家以外の実装(R 用にも他に2つくらいありそう). 欠点(メモリを食うとか,統計学的?に解析しにくいとか). out-of-bag データからの混同行列や特徴スコアリングの仕方. 回帰への利用. 「教師無し」での利用法.クラスタリングやプロトタイピング. 実用的な利用例. kd-tree やボトムアップなクラスタリング法との比較.