SlideShare ist ein Scribd-Unternehmen logo
1 von 140
Tokyo.R #11
      2011/1/29



      R言語による

Random Forest 徹底入門
 -集団学習による分類・予測-



    hamadakoichi
      濱田 晃一
AGENDA
    ◆講師紹介
    ◆Random Forestとは
    ◆決定木
      ◆決定木とは
      ◆R言語での実行
    ◆集団学習
    ◆Random Forest
      ◆アルゴリズム
      ◆R言語での実行
    ◆参考資料
    ◆最後に
AGENDA
    ◆講師紹介
    ◆Random Forestとは
    ◆決定木
      ◆決定木とは
      ◆R言語での実行
    ◆集団学習
    ◆Random Forest
      ◆アルゴリズム
      ◆R言語での実行
    ◆参考資料
    ◆最後に
hamadakoichi
         濱田晃一
http://iddy.jp/profile/hamadakoichi



                                      4
資料

         各種講師資料を公開しています

     http://www.slideshare.net/hamadakoichi
データマイニング+WEB勉強会@東京
   データマイニング+WEB勉強会@東京 主催者です
           ぜひご参加下さい




  Google Group: http://groups.google.com/group/webmining-tokyo   6
データマイニング+WEB勉強会@東京
    たくさんの会場参加、UST参加、Bookmark
         ありがとうございます




     開催内容まとめ
     http://d.hatena.ne.jp/hamadakoichi/
                                           7
3つの進行方針
           充分な時間を充て
          理解・議論を優先する
  1.充分な時間:
   各テーマごとにしっかり時間を充てる
   (浅く多くではなく、少ないテーマでも深く)

  2.理解:
   進行を急がない。分からないところはすぐ質問。
   講師・各メンバーからの返答で、みなで理解を深めることを優先する。

  3.議論:
   議論時間をしっかりとる。
   各分野の意見の共有、皆での発想・創造を優先する。
   全員でのフラットな議論。講師にとっても有意義な場となるようにする。

                                       8
活動領域




       9
           9
活動領域

  ソーシャルメディアのデータマイニング活用
          2000万人以上の人々へ
 各人のつながり・楽しみ・好み 個性にあった適切なサービス提供


         Social Media
             Social Graph
         Fun Like Personality
          Objective Process

          Data Mining
        Machine Learning
       各人のつながり、楽しみ、好み、個性にあった
           より適切なサービス提供
活動領域

       活動が紹介されました




                    11
活動領域

       活動が紹介されました
          Tech総研




                                12
                    (※記事から抜粋)
hamadakoichi 濱田晃一




                    13
hamadakoichi 濱田晃一
                      理論物理 博士(2004.3取得)
                        量子統計場の理論
Statistical Field Theory                        Spontaneously
                                        Time-Reversal Symmetry Breaking




                                       Anisotropic Massless Dirac Fermions




 博士論文: http://hosi.phys.s.u-tokyo.ac.jp/~koichi/PhD-thesis.pdf          14
hamadakoichi 濱田晃一

             文部大臣に褒められた
   元 文部大臣・法務大臣      六法全書著者・元法学政治学研究科長
      森山眞弓さん             菅野和夫さん




                                    15
hamadakoichi 濱田晃一

         Los Angelesでプロダンサーに褒められた




  ・HIP HOP/House ダンス歴13年
  ・ダンス開始後 1年半でL.A.でプロダンサーに褒められる

  Youtube Channel: http://www.youtube.com/hamadakoichi   16
hamadakoichi 濱田晃一

          毎週末3時間ダンスコーチをしています




           ■過去、東京と京都でも
            ダンス部を創設。
            コーチをしていました
                          駒場物理ダンス部   京都大学基礎物理学研究所ダンス部
                          部長兼コーチ     部長兼コーチ

  現在: 毎週末 3時間ダンスコーチ
  Youtube Channel: http://www.youtube.com/hamadakoichi   17
数理解析手法の実ビジネスへの適用
            2004年 博士号取得後
       数理解析手法を実ビジネス適用の方法論構築
主な領域
◆活動の数理モデル化・解析手法
◆活動の分析手法・再構築手法
◆活動の実行制御・実績解析システム
…
 内容抜粋
 “Decoupling Executions in Navigating Manufacturing          "Unified graph representation of processes
 Processes for Shortening Lead Time and Its Implementation   for scheduling with flexible resource
 to an Unmanned Machine Shop”,                               assignment",




                                                                                                          18
数理解析手法の実ビジネスへの適用:活動例
                         活動例
                  活動の統一グラフモデルを構築・解析
                        Unified graphical model of processes and resources
                                                                                                 青字:割付モデル属性
                                                                                                 [ ] : Optional
Node             ・priority(優先度)                                                       Edge
                 ・duration(予定時間)
                 [・earliest(再早開始日時) ]                                                      Process Edge
Process          [・deadline(納期) ]
                 [・or(条件集約数) ]
                                                                                             前プロセスの終了後に後プロセスが
プロセスを表す                                                                                      開始できること表す
                 ・attributes(属性)
                                                                      preemptable(中断可否),
                                                                      successive(引継ぎ可否)
                                                                                           Uses Edge
                                                                      workload(作業負荷)         Processが使用する
                        uses     uses uses         uses   uses        uses                   Assign Region を表す

Assign Region                                                                              Assigns from Edge
同一Resourceを割付け続ける                                                                            Assign Regionに
                                  assigns from assigns from                                  指定Resourceの子Resource集合の
範囲を表す
               assigns                                           assigns                     中から割付けることを示す
                                 企業01                             [process]
                                 has         has                  [startDate(開始日時)]
                                                                  [endDate(終了日時)]          Assigns Edge
                  製品01                    組織A                                                StartDateからEndDateまでの間
Resource                                                                     has             Assign RegionにResourceを
割付対象要素を表す           has has      has      has   has       has                                割付けることを表す
                                                                    ・capacity(容量)
                                                                    ・calender(カレンダー)
                AAA01    AAB02    …     山田さん 田中さん 鈴木さん              ・attributes(属性)        Has Edge
                                                                           東さん               Resourceの所有関係を表す
                                                                                                                   19
数理解析手法の実ビジネスへの適用:活動例
                                   一品一様の業務プロセスの
                                 動的なプロセス制御数理体系を構築
  全体生産リードタイム中央値を                                                                                                                 1/2.7に短縮
        設計開始~頭だし出荷リードタイム
                                                        体系適用
                                     設計開始~頭だし出荷CT対週集計開始日時の箱ひげ図
                        500
                                                                                                                                                            適用後
   設計開始~頭だし出荷CT




                        400

                                                                                        360.4h(15.0日)
                                                                                                                                                                                  1/2.7
                        300


                        200


                        100
                                       0          0         0         0           0         0       0         0           0         0        0         0
                                                                                                                                                         141.6h(5.9日)
                                                                                                                                                                   0          0
                                  9: 0       9 :0       9:0       9:0        9: 0      9 :0     9:0       9:0        9: 0      9 :0     9 :0       9:0        9: 0       9 :0
                               0           7          4         1         8          5        1         8         5          2        9          6         3           0
                            /2          /2         /0        /1        /1          /2 1/0            /0        /1          /2 1/2             /0        /1          /2
                          09 /09 /10                      1 0 /1 0 / 1 0                 1        1 1 /1 1 / 1 1                 1         1 2 / 12 / 1 2
                       4/       4           4          4/        4         4          4/       4/        4         4          4/       4/         4         4
                  2 0 0 2 00           2 00 200 200 200                           2 00 200 200 200                        2 00 200 200 200
                                                                                          週集計開始日時



                                                                                                                                                                                      20
数理解析手法の実ビジネスへの適用:活動例
                                    ビジネスとともに
                                    学術分野でも貢献
変動性から生じる動的な課題
     ・リソースの競合 ・滞留 ・納期遅延                             …

一品一様な業務プロセスを含む
統計解析・制御数理モデル
     ・統計的な有効変数算出
     ・統計数理モデル化
        -優先順位制御
        -実行タイミング制御
        -統計フィードバック
        -適正リソース量算出
     ・予測数理体系
論文(体系の一部)
M.Nakao, N. Kobayashi, K.Hamada, T.Totsuka, S.Yamada,
“Decoupling Executions in Navigating Manufacturing Processes for Shortening Lead Time and Its Implementation
to an Unmanned Machine Shop”,
CIRP Annals - Manufacturing Technology Volume 56, Issue 1, Pages 171-174 (2007)                         21
思い
     より広く蓄積されたデータを有効活用し
     世界の未来をよりよいものにしていきたい
               データマイニング+WEB勉強会@東京




     Google Group: http://groups.google.com/group/webmining-tokyo   22
現在の活動領域

   ソーシャルメディアのデータマイニング活用
          2000万人以上の人々へ
 各人のつながり・楽しみ・好み 個性にあった適切なサービス配信
           日々20億以上の活動の活用


           Social Media
              Social Graph
          Fun Like Personality
           Objective Process

            Data Mining
          Machine Learning
       各人のつながり、楽しみ、好み、個性にあった
           より適切なサービス提供
                                  23
よりよい世界の実現
      ソーシャル・活動情報の活用により
 より適切な情報・サービス配信される世界を実現したい




            Social Media
                Social Graph
            Fun Like Personality
             Objective Process

          Data Mining
        Machine Learning
       各人のつながり、楽しみ、好み、個性にあった
           より適切なサービス提供
                                   24
よりよい世界の実現
      ソーシャル・活動情報の活用により
 より適切な情報・サービス配信される世界を実現したい
            世界中の人々が
 個々人のつながり・楽しみ・好みにあった適切な情報・サービスを
      自ら探さなくても得ることができる世界

            Social Media
                Social Graph
            Fun Like Personality
             Objective Process

          Data Mining
        Machine Learning
       各人のつながり、楽しみ、好み、個性にあった
           より適切なサービス提供
                                   25
思うこと




       26
思うこと
         蓄積されたデータを有効活用し
       世界の未来をよりよいものにしていきたい
                 データマイニング+WEB勉強会@東京




       Google Group: http://groups.google.com/group/webmining-tokyo   27
思うこと
       統計解析・データマイニング・機械学習、重要

                  データマイニング+WEB勉強会@東京




        Google Group: http://groups.google.com/group/webmining-tokyo   28
思うこと
       統計解析・データマイニング・機械学習、重要
             R言語使い 重要
                  データマイニング+WEB勉強会@東京




        Google Group: http://groups.google.com/group/webmining-tokyo   29
課題意識




       30
課題意識




 R言語人材が そのスキルを十分に活かし
  活躍できる場が提供されているか?




                       31
調査結果

           早速
   R言語での人材募集要項を検索してみた
        「R言語 募集要項」




                        32
調査結果

              早速
   R言語での人材募集要項を検索してみた
        「R言語 募集要項」




       SASやSPSS使いは人材募集がある
調査結果

              早速
   R言語での人材募集要項を検索してみた
        「R言語 募集要項」




    SASやSPSS使いは人材募集がある
  R言語の人材募集は見つからなかった。。。
       (※海外ではFacebook等、募集)
調査結果

               早速
   R言語での人材募集要項を検索してみた
        「R言語 募集要項」




    SASやSPSS使いは人材募集がある
  R言語の人材募集は見つからなかった。。。
        (※海外ではFacebook等、募集)


       (2011/01/27までは)
                              35
2011/01/28
 新たな変化



             36
新たな変化

        検索してみると




                  37
新たな変化


        発見!




              38
新たな変化

              日本初
          R言語の人材募集要項
  http://www.dena.jp/recruit/sp2/career/guide09.html




                     R言語人材の活躍の場
                                                       39
思い




     40
思い


     R言語 人材募集を作った思い




                      41
思い


     R言語 人材募集を作った思い
      統計解析・データマイニング・機械学習
     R言語・R人材の活用・活躍の場を広げたい




                            42
思い


      R言語 人材募集を作った思い
      統計解析・データマイニング・機械学習
     R言語・R人材の活用・活躍の場を広げたい

     ソーシャル業界全体や、他業界の追従も歓迎




                            43
思い


      R言語 人材募集を作った思い
      統計解析・データマイニング・機械学習
     R言語・R人材の活用・活躍の場を広げたい

     ソーシャル業界全体や、他業界の追従も歓迎


   より広く、蓄積されたデータを有効活用し
世界中のサービスが継続的進化される世界を実現したい



                            44
思い


      R言語 人材募集を作った思い
      統計解析・データマイニング・機械学習
     R言語・R人材の活用・活躍の場を広げたい

     ソーシャル業界全体や、他業界の追従も歓迎


   より広く、蓄積されたデータを有効活用し
世界中のサービスが継続的進化される世界を実現したい
         ※もちろん、個人としては
       一緒に活動し実現できたら嬉しい
                            45
よりよい世界の実現
     より蓄積されたデータを有効活用し
    世界の未来をよりよいものにしていきたい
               データマイニング+WEB勉強会@東京




     Google Group: http://groups.google.com/group/webmining-tokyo   46
よりよい世界の実現
       よりよい世界を実現したい
     一緒に実現する仲間を募集しています




                         47
よりよい世界の実現
       よりよい世界を実現したい
     一緒に実現する仲間を募集しています




                         48
よりよい世界の実現
        よりよい世界を実現したい
      一緒に実現する仲間を募集しています
  大規模ソーシャルメディアのデータマイニング (2100万会員 1日20億アクション以上)




     (※2100万会員モバゲータウンはデータマイニングの宝の山/Tech総研 より抜粋)
    ・統計解析/データマイニング/機械学習/自然言語処理
    ・大規模分散処理



                 ぜひご連絡下さい
            koichi.hamada@gmail.com               49
よりよい世界の実現
        よりよい世界を実現したい
      一緒に実現する仲間を募集しています
  大規模ソーシャルメディアのデータマイニング (2100万会員 1日20億アクション以上)




     (※2100万会員モバゲータウンはデータマイニングの宝の山/Tech総研 より抜粋)
    ・統計解析/データマイニング/機械学習/自然言語処理
    ・大規模分散処理
     R


                 ぜひご連絡下さい
            koichi.hamada@gmail.com               50
よりよい世界の実現
        よりよい世界を実現したい
      一緒に実現する仲間を募集しています
  大規模ソーシャルメディアのデータマイニング (2100万会員 1日20億アクション以上)




     (※2100万会員モバゲータウンはデータマイニングの宝の山/Tech総研 より抜粋)
    ・統計解析/データマイニング/機械学習/自然言語処理
    ・大規模分散処理
     R Hadoop/Pig/Hive/Zebra


                 ぜひご連絡下さい
            koichi.hamada@gmail.com               51
よりよい世界の実現
        よりよい世界を実現したい
      一緒に実現する仲間を募集しています
  大規模ソーシャルメディアのデータマイニング (2100万会員 1日20億アクション以上)




     (※2100万会員モバゲータウンはデータマイニングの宝の山/Tech総研 より抜粋)
    ・統計解析/データマイニング/機械学習/自然言語処理
    ・大規模分散処理
     R Hadoop/Pig/Hive/Zebra Mahout


                 ぜひご連絡下さい
            koichi.hamada@gmail.com               52
よりよい世界の実現
        よりよい世界を実現したい
      一緒に実現する仲間を募集しています
  大規模ソーシャルメディアのデータマイニング (2100万会員 1日20億アクション以上)




     (※2100万会員モバゲータウンはデータマイニングの宝の山/Tech総研 より抜粋)
    ・統計解析/データマイニング/機械学習/自然言語処理
    ・大規模分散処理
     R Hadoop/Pig/Hive/Zebra Mahout …etc


                 ぜひご連絡下さい
            koichi.hamada@gmail.com               53
AGENDA
    ◆講師紹介
    ◆Random Forestとは
    ◆決定木
      ◆決定木とは
      ◆R言語での実行
    ◆集団学習
    ◆Random Forest
      ◆アルゴリズム
      ◆R言語での実行
    ◆参考資料
    ◆最後に
Random Forest とは




                   集団学習により




                             55
Random Forest とは




                   集団学習により

         高精度の分類・予測を実現する




                             56
Random Forest とは




                   集団学習により

         高精度の分類・予測を実現する

             機械学習アルゴリズム




                             57
Random Forest とは




                   集団学習により

         高精度の分類・予測を実現する

             機械学習アルゴリズム


               “Random forests”
              (L. Breiman, 2001)

                                   58
Random Forest とは
                     決定木の集団学習により
                     高精度の分類・予測を行う
                学習用データ

  Random      Sampling 1   Sampling 2   …   Sampling B

   Forest
            Forest
                Tree 1      Tree 2      …     Tree B

予測対象




               Result 1     Result 2    …    Result B


               分類・予測結果                                   59
Random Forest : 長所
                Random Forest の
                    主な長所


   ・精度が高い
   ・説明変数が数百、数千でも効率的に作動
   ・目的変数に対する説明変数の重要度を推定
   ・欠損値を持つデータでも有効に動作
   ・個体数がアンバランスでもエラーバランスが保たれる




                                  60
Random Forest : 長所
        決定木、Support Vector Machine(SVM)、等
         他分類器に比べ分類・予測精度が高い
                例:11人の著者の10テーマ110編の文章分類
 精度:高い           (49個の特徴語。100回の学習・テストでの比較)


                                                       Random Forest
                                         Bagging   AdaBoost
        F1値平均




                           ニューラルネット
                決定木        (量子ベクトル化)
                (CART)
                                       SVM
                    K近傍法

                              カーネルK近傍法



 引用元:     「ESTRELA」 2009年05月号 統計的テキスト解析(15) ~テキストの分類分析2~
          http://mjin.doshisha.ac.jp/R/200905_70.pdf
                                                                   61
Random Forest とは
                     決定木の集団学習により
                     高精度の分類・予測を行う
                学習用データ

  Random      Sampling 1   Sampling 2   …   Sampling B

   Forest
            Forest
                Tree 1      Tree 2      …     Tree B

予測対象




               Result 1     Result 2    …    Result B


               分類・予測結果                                   62
Random Forest とは
                     決定木の集団学習により
                     高精度の分類・予測を行う
                学習用データ

  Random      Sampling 1   Sampling 2   …   Sampling B

   Forest
            Forest
                Tree 1      Tree 2      …     Tree B

予測対象




               Result 1     Result 2    …    Result B


               分類・予測結果                                   63
Random Forest とは
                     決定木の集団学習により
                     高精度の分類・予測を行う
                学習用データ

  Random      Sampling 1   Sampling 2   …   Sampling B

   Forest
            Forest
                Tree 1      Tree 2      …     Tree B

予測対象




               Result 1     Result 2    …    Result B


               分類・予測結果                                   64
AGENDA
    ◆講師紹介
    ◆Random Forestとは
    ◆決定木
      ◆決定木とは
      ◆R言語での実行
    ◆集団学習
    ◆Random Forest
      ◆アルゴリズム
      ◆R言語での実行
    ◆参考資料
    ◆最後に
AGENDA
    ◆講師紹介
    ◆Random Forestとは
    ◆決定木
      ◆決定木とは
      ◆R言語での実行
    ◆集団学習
    ◆Random Forest
      ◆アルゴリズム
      ◆R言語での実行
    ◆参考資料
    ◆最後に
決定木 とは
   目的変数に影響が大きい変数・境界値・順序を
        算出することができる




                           67
決定木 とは
   目的変数に影響が大きい変数・境界値・順序を
        算出することができる

            影響大
 データ              木構造




                           68
決定木 とは
   目的変数に影響が大きい変数・境界値・順序を
        算出することができる

                 影響大
 データ                     木構造




          今まで気づかなかった重要な条件を知り
         サービスやプロセスを改良することができる   69
解決する課題
   目的変数に影響が大きい変数・境界値・順序を
        算出することができる
■丌具合発生率が大きい製造工程にはどのような特徴があるのか?




      今まで気づかなかった重要な条件を知り
     サービスやプロセスを改良することができる    70
解決する課題
   目的変数に影響が大きい変数・境界値・順序を
        算出することができる
■丌具合発生率が大きい製造工程にはどのような特徴があるのか?
 ⇒ 丌具合原因の特定・改善




      今まで気づかなかった重要な条件を知り
     サービスやプロセスを改良することができる    71
解決する課題
   目的変数に影響が大きい変数・境界値・順序を
        算出することができる
■丌具合発生率が大きい製造工程にはどのような特徴があるのか?
 ⇒ 丌具合原因の特定・改善
■広告効果が高いユーザーにはどのような特徴があるのか?




      今まで気づかなかった重要な条件を知り
     サービスやプロセスを改良することができる     72
解決する課題
   目的変数に影響が大きい変数・境界値・順序を
        算出することができる
■丌具合発生率が大きい製造工程にはどのような特徴があるのか?
 ⇒ 丌具合原因の特定・改善
■広告効果が高いユーザーにはどのような特徴があるのか?
 ⇒ 投資対効果の高いターゲット選定




      今まで気づかなかった重要な条件を知り
     サービスやプロセスを改良することができる     73
解決する課題
   目的変数に影響が大きい変数・境界値・順序を
        算出することができる
■丌具合発生率が大きい製造工程にはどのような特徴があるのか?
 ⇒ 丌具合原因の特定・改善
■広告効果が高いユーザーにはどのような特徴があるのか?
 ⇒ 投資対効果の高いターゲット選定
■優良ユーザーはどのような楽しみかたをしているか?




      今まで気づかなかった重要な条件を知り
     サービスやプロセスを改良することができる     74
解決する課題
   目的変数に影響が大きい変数・境界値・順序を
        算出することができる
■丌具合発生率が大きい製造工程にはどのような特徴があるのか?
 ⇒ 丌具合原因の特定・改善
■広告効果が高いユーザーにはどのような特徴があるのか?
 ⇒ 投資対効果の高いターゲット選定
■優良ユーザーはどのような楽しみかたをしているか?
 ⇒ より継続的に楽しんでもらえるサービス改良




      今まで気づかなかった重要な条件を知り
     サービスやプロセスを改良することができる     75
解決する課題
   目的変数に影響が大きい変数・境界値・順序を
        算出することができる
■丌具合発生率が大きい製造工程にはどのような特徴があるのか?
 ⇒ 丌具合原因の特定・改善
■広告効果が高いユーザーにはどのような特徴があるのか?
 ⇒ 投資対効果の高いターゲット選定
■優良ユーザーはどのような楽しみかたをしているか?
 ⇒ より継続的に楽しんでもらえるサービス改良




      今まで気づかなかった重要な条件を知り
     サービスやプロセスを改良することができる     76
決定木 とは
                木構造の条件分岐で
               分類・予測(回帰)を行う
例: 植物の分類
Iris(アヤメ)データ
花葉と花びらの長さ・幅から
種類の分類構造算出
 説明変数                  目的変数
花葉(長さ・幅)   花びら(長さ・幅)    種類




                              77
決定木 とは
                木構造の条件分岐で
               分類・予測(回帰)を行う
例: 植物の分類                      分類        花びらの長さ
Iris(アヤメ)データ
花葉と花びらの長さ・幅から                                       花びらの幅
種類の分類構造算出
 説明変数                  目的変数
花葉(長さ・幅)   花びら(長さ・幅)    種類
                              setosa



                                                      virginica


                                       versicolor


                                                            78
決定木 とは
                    木構造の条件分岐で
                   分類・予測(回帰)を行う
例: 植物の分類                                   分類        花びらの長さ
Iris(アヤメ)データ
花葉と花びらの長さ・幅から                                                         花びらの幅
種類の分類構造算出


                         virginica         setosa



        setosa
                                                                             virginica
                 versicolor    virginica

                                                    versicolor   virginica


                                                                                   79
決定木 とは
               木構造の条件分岐で
              分類・予測(回帰)を行う
例: ブレーキ後 停車距離 予測
carsデータ
車速度と
ブレーキ後の停車距離の関係構造算出
  説明変数    目的変数
          ブレーキ後の
  車の速度
          停車までの距離




                             80
決定木 とは
               木構造の条件分岐で
              分類・予測(回帰)を行う
例: ブレーキ後 停車距離 予測    回帰(予測)   スピード(speed)
carsデータ
車速度と
ブレーキ後の停車距離の関係構造算出
  説明変数    目的変数
          ブレーキ後の
  車の速度
          停車までの距離




                     ブレーキ後の停車距離

                                           81
決定木 とは
             木構造の条件分岐で
            分類・予測(回帰)を行う
例: ブレーキ後 停車距離 予測    回帰(予測)   スピード(speed)
carsデータ
車速度と
ブレーキ後の停車距離の関係構造算出




                     ブレーキ後の停車距離

                                           82
決定木: 分岐基準
      条件ノード A を条件ノードALとARに分けるとき
        以下のΔIを最大化する分割を行う
                Classification And Regression Trees (CART)
                            (Breiman et al, 1984)
分類木


      Entropy
      GINI係数

      ※             :条件ノード A で クラス k をとる確率
回帰木

      尤離度(deviance)

      ※          :条件ノード A での目標変数 t の平均値                      83
AGENDA
    ◆講師紹介
    ◆Random Forestとは
    ◆決定木
      ◆決定木とは
      ◆R言語での実行
    ◆集団学習
    ◆Random Forest
      ◆アルゴリズム
      ◆R言語での実行
    ◆参考資料
    ◆最後に
決定木の実行

                        パッケージインストール
 # 決定木のインストール
 install.packages("mvpart")
 library(mvpart)




                                      85
決定木の実行

                        パッケージインストール
 # 決定木のインストール
 install.packages("mvpart")
 library(mvpart)

 # Species(種類)を分類変数として 樹木モデル を生成
 # iris(アヤメ)データを使用
 tree <- rpart(Species~., data = iris, method = "class")

 サンプルデータ
    iris(アヤメ)データ:よい性質を持ち よく使用される
    (R環境で標準提供されている) 説明変数                                                      目的変数
                        花葉(長さ・幅)                      花びら(長さ・幅)                 種類
                                Sepal.Length Sepal.Width Petal.Length Petal.Width Species
                                        5.1       3.5        1.4       0.2     setosa
                                        4.9       3.0        1.4       0.2     setosa
                                        4.7       3.2        1.3       0.2     setosa
                                        4.6       3.1        1.5       0.2     setosa
                                        5.0       3.6        1.4       0.2     setosa
       Iris Sanguinea                                                                       86
決定木の実行

               生成された決定木の表示
 #Tree の表示 (全分岐での分布表示(all=TRUE) 、個数も表示(use.n =TRUE))
 plot.rpart(tree)
 text.rpart(tree, all = TRUE, use.n = TRUE)
                         花びらの長さ




                                        花びらの幅




                setosa




                           versicolor     virginica    87
決定木を用いた予測

predtree <- predict(tree, data = newdata, type = "class")




                                                            88
決定木の実行
                     学習・予測データに分け
                    学習用データで決定木作成

 # iris(アヤメ)データを使用
 data <- iris
 # 学習用データとテスト用データをランダムサンプリング
 ndata <- nrow(data)#データ行数
 ridx <- sample(ndata, ndata*0.5) #50%のランダム抽出で学習・予測データ分割
 data.learn <- data[ridx,] #学習用データ作成
 data.test <- data[-ridx,] #予測用データ作成



 # Species(種類)を分類変数として 決定木 を生成
 tree <- rpart(Species~., data = data.learn, method = "class")



                                                                 89
決定木の実行

                樹木モデル を用いた予測

 # 樹木モデルを用いた予測 (新データ data.test に対する種類分類を予測)
 predtree <- predict(tree, data.test, type = "class")




                                                        90
決定木の実行

                           樹木モデル を用いた予測

 # 決定木を用いた予測 (新データ data.test に対する種類分類を予測)
 predtree <- predict(tree, data.test, type = "class")

 # 解との比較
 table(predtree,data.test$Species)


 予測結果: Tree 予測
  predtree    setosa versicolor virginica
   setosa       24         0        0
   versicolor     0      22         3
   virginica     0       3        23




                                                        91
Random Forest とは
                     決定木の集団学習により
                     高精度の分類・予測を行う
                学習用データ

  Random      Sampling 1   Sampling 2   …   Sampling B

   Forest
            Forest
                Tree 1      Tree 2      …     Tree B

予測対象




               Result 1     Result 2    …    Result B


               分類・予測結果                                   92
Random Forest とは
                     決定木の集団学習により
                     高精度の分類・予測を行う
                学習用データ

  Random      Sampling 1   Sampling 2   …   Sampling B

   Forest
            Forest
                Tree 1      Tree 2      …     Tree B

予測対象




               Result 1     Result 2    …    Result B


               分類・予測結果                                   93
AGENDA
    ◆講師紹介
    ◆Random Forestとは
    ◆決定木
      ◆決定木とは
      ◆R言語での実行
    ◆集団学習
    ◆Random Forest
      ◆アルゴリズム
      ◆R言語での実行
    ◆参考資料
    ◆最後に
集団学習 とは




          95
集団学習 とは
       複数モデル生成し 結果を統合
    精度を向上させる 機械学習のアルゴリズム




                           96
集団学習 とは
       複数モデル生成し 結果を統合
    精度を向上させる 機械学習のアルゴリズム

     ■異なるサンプル、異なる重みの
      複数の学習モデルを生成




                           97
集団学習 とは
       複数モデル生成し 結果を統合
    精度を向上させる 機械学習のアルゴリズム

     ■異なるサンプル、異なる重みの
      複数の学習モデルを生成

     ■各モデルの結果を統合・組合せにより
      精度・汎用性を向上




                           98
集団学習 とは
       複数モデル生成し 結果を統合
    精度を向上させる 機械学習のアルゴリズム

     ■異なるサンプル、異なる重みの
      複数の学習モデルを生成

     ■各モデルの結果を統合・組合せにより
      精度・汎用性を向上
          結果の統合   ・分類: 多数決
                  ・回帰: 平均値


                             99
集団学習 とは
       複数モデル生成し 結果を統合
    精度を向上させる 機械学習のアルゴリズム

     ■異なるサンプル、異なる重みの
      複数の学習モデルを生成

     ■各モデルの結果を統合・組合せにより
      精度・汎用性を向上
          結果の統合   ・分類: 多数決
                  ・回帰: 平均値


                             100
AGENDA
    ◆講師紹介
    ◆Random Forestとは
    ◆決定木
      ◆決定木とは
      ◆R言語での実行
    ◆集団学習
    ◆Random Forest
      ◆アルゴリズム
      ◆R言語での実行
    ◆参考資料
    ◆最後に
AGENDA
    ◆講師紹介
    ◆Random Forestとは
    ◆決定木
      ◆決定木とは
      ◆R言語での実行
    ◆集団学習
    ◆Random Forest
      ◆アルゴリズム
      ◆R言語での実行
    ◆参考資料
    ◆最後に
Random Forest
                樹木モデルの集団学習による
                高精度の分類・予測(回帰)
                学習用データ

  Random      Sampling 1   Sampling 2   …   Sampling B

   Forest
            Forest
                Tree 1      Tree 2      …     Tree B

予測対象




               Result 1     Result 2    …    Result B


               分類・予測結果                                   103
学習と予測


学習

        104
Random Forest アルゴリズム: 学習




  Random
   Forest




                           105
Random Forest アルゴリズム: 学習

               ブートストラップ サンプリング
  学習データから重複を許しランダムに B組のサンプル集合抽出

              学習用データ

  Random    Sampling 1   Sampling 2   …   Sampling B

   Forest




                                                       106
Random Forest アルゴリズム: 学習

            ランダム抽出変数での決定木生成
   各ノード展開で M個の説明変数からm個変数をランダム抽出

              学習用データ

  Random    Sampling 1   Sampling 2   …   Sampling B

   Forest
              Tree 1




                                                       107
Random Forest アルゴリズム: 学習
                         全サンプル集合で
                          決定木を生成
              学習用データ

  Random    Sampling 1   Sampling 2   …   Sampling B

   Forest
              Tree 1      Tree 2      …     Tree B




                                                       108
Random Forest アルゴリズム: 学習
                          複数の木モデル
                       = Forest (森) モデル
              学習用データ

  Random    Sampling 1   Sampling 2   …   Sampling B

   Forest
              Tree 1      Tree 2      …     Tree B




                                                       109
Random Forest アルゴリズム: 学習
                            複数の木モデル
                         = Forest (森) モデル
                学習用データ

  Random      Sampling 1   Sampling 2   …   Sampling B

   Forest
            Forest
                Tree 1      Tree 2      …     Tree B




                                                         110
学習と予測


予測

        111
Random Forest アルゴリズム
                     全木モデルで
                  分類・回帰予測の結果算出
                学習用データ

  Random      Sampling 1   Sampling 2   …   Sampling B

   Forest
            Forest
                Tree 1      Tree 2      …     Tree B

予測対象




               Result 1     Result 2    …    Result B


                                                         112
Random Forest アルゴリズム

                全木モデルの結果を統合する
                     分類:多数決、回帰予測:平均

                学習用データ

  Random      Sampling 1   Sampling 2   …   Sampling B

   Forest
            Forest
                Tree 1      Tree 2      …     Tree B

予測対象




               Result 1     Result 2    …    Result B


               分類・予測結果                                   113
Random Forest アルゴリズム
                 木モデルの集団学習による
                 高精度の分類・予測(回帰)
                学習用データ

  Random      Sampling 1   Sampling 2   …   Sampling B

   Forest
            Forest
                Tree 1      Tree 2      …     Tree B

予測対象




               Result 1     Result 2    …    Result B


               分類・予測結果                                   114
Random Forest : 長所
                Random Forest の
                    主な長所


   ・精度が高い
   ・説明変数が数百、数千でも効率的に作動
   ・目的変数に対する説明変数の重要度を推定
   ・欠損値を持つデータでも有効に動作
   ・個体数がアンバランスでもエラーバランスが保たれる




                                  115
Random Forest : 長所
        決定木、Support Vector Machine(SVM)、等
         他分類器に比べ分類・予測精度が高い
                例:11人の著者の10テーマ110編の文章分類
 精度:高い           (49個の特徴語。100回の学習・テストでの比較)


                                                       Random Forest
                                         Bagging   AdaBoost
        F1値平均




                           ニューラルネット
                樹木モデル      (量子ベクトル化)
                (CART)
                                       SVM
                    K近傍法

                              カーネルK近傍法



 引用元:     「ESTRELA」 2009年05月号 統計的テキスト解析(15) ~テキストの分類分析2~
          http://mjin.doshisha.ac.jp/R/200905_70.pdf
                                                                   116
AGENDA
    ◆講師紹介
    ◆Random Forestとは
    ◆決定木
      ◆決定木とは
      ◆R言語での実行
    ◆集団学習
    ◆Random Forest
      ◆アルゴリズム
      ◆R言語での実行
    ◆参考資料
    ◆最後に
Random Forest の実行

                       パッケージインストール
 # randomForest のインストール
 install.packages("randomForest")
 library(randomForest)




                                     118
Random Forest の実行

                      学習用・予測用データ作成
 # iris(アヤメ)データを使用
 data <- iris
 # 学習用データとテスト用データをランダムサンプリング
 ndata <- nrow(data)#データ行数
 ridx <- sample(ndata, ndata*0.5) #50%のランダム抽出で学習・予測データ分割
 data.learn <- data[ridx,] #学習用データ作成
 data.test <- data[-ridx,] #予測用データ作成
 サンプルデータ
   iris(アヤメ)データ:よい性質を持ち よく使用される
   (R環境で標準提供されている) 説明変数                                                目的変数
                       花葉(長さ・幅)                花びら(長さ・幅)                 種類
                         Sepal.Length Sepal.Width Petal.Length Petal.Width Species
                                 5.1       3.5        1.4       0.2     setosa
                                 4.9       3.0        1.4       0.2     setosa
                                 4.7       3.2        1.3       0.2     setosa
                                 4.6       3.1        1.5       0.2     setosa
                                 5.0       3.6        1.4       0.2     setosa
     Iris Sanguinea                                                                  119
Random Forest の実行

                     Random Forest の生成
 # Species(種類)を分類変数として Random Forest を生成
 forest <- randomForest(Species~.,data = data.learn)




                                                       120
Random Forest の実行

                       Random Forest の生成
 # Species(種類)を分類変数として Random Forest を生成
 forest <- randomForest(Species~.,data = data.learn)


関数
 randomForest(formula, data = NULL, …, ..., subset, na.action=na.fail)

 主要な引数          内容
 formula        モデルの形式
 x, y           目的変数と説明変数 (formula 代わりに用いる)
 data, subset   用いるデータ
 na.action      欠損値の表記型の指定
 ntree          生成する木の数 (デフォルトは 500)
 mtry           分岐に用いる変数の数 (デフォルト, 分類 √M, 回帰 M/3, M:変数総数)
 importance     変数の重要度出力 (デフォルトは FALSE)

                                                                         121
Random Forest の実行
                     生成されたForest を用いた
                        高精度の予測
 # Forestを用いた予測の実行
 pred.forest <- predict(forest, newdata = data.test, type = "class")

 # 解との比較
 table(pred.forest, data.test[,5])




                                                                       122
Random Forest の実行
                          生成されたForest を用いた
                             高精度の予測
 # Forestを用いた予測の実行
 pred.forest <- predict(forest, newdata = data.test, type = "class")

 # 解との比較
 table(pred.forest, data.test[,5])



 予測結果: Random Forest 予測
   pred.forest setosa versicolor virginica
    setosa       27         0        0
    versicolor    0       28         0
    virginica    0        0        20

                    分類間違いなし



                                                                       123
Random Forest の実行
                          生成されたForest を用いた
                             高精度の予測
 # Forestを用いた予測の実行
 pred.forest <- predict(forest, newdata = data.test, type = "class")

 # 解との比較
 table(pred.forest, data.test[,5])



 予測結果: Random Forest 予測                      ※比較参照 予測結果:分類木 (rpart)
   pred.forest setosa versicolor virginica   pred.dt     setosa versicolor virginica
    setosa       27         0        0        setosa        27        0         0
    versicolor    0       28         0        versicolor     0       26         1
    virginica    0        0        20         virginica     0        2        19

                    分類間違いなし



                                                                                       124
樹木モデルとの比較
                                    きわどいところも
                                    分類できている

 予測結果: Random Forest 予測                     ※比較参照 予測結果:分類木 (rpart)
  pred.forest setosa versicolor virginica   pred.dt     setosa versicolor virginica
   setosa       27         0        0        setosa        27        0         0
   versicolor    0       28         0        versicolor     0       26         1
   virginica    0        0        20         virginica     0        2        19

                                            分類木のエラー箇所

                                                               virginica




                                              setosa

                                                                           virginica
                                                       versicolor




                                                                                       125
Random Forest の実行
                   重要度算出
              各変数の目的変数に対する重要度
                                 重要度 グラフ表示
 #重要度 グラフ表示
 varImpPlot(forest)

 #重要度 出力
 Importance(forest)


  重要度 出力
    > importance(forest)
              MeanDecreaseGini
    Sepal.Length      4.791776
    Sepal.Width       2.102875
    Petal.Length     20.811569
    Petal.Width     20.627166

                                             126
AGENDA
    ◆講師紹介
    ◆Random Forestとは
    ◆決定木
      ◆決定木とは
      ◆R言語での実行
    ◆集団学習
    ◆Random Forest
      ◆アルゴリズム
      ◆R言語での実行
    ◆参考資料
    ◆最後に
参考資料:R/CART/Random Forest



             Rによるデータサイエンス                       Rによる統計解析
             ~データ解析の基礎から最新手法まで ~




■CART:
L. Breiman, J. H. Friedman, R. A. Olshen and. C. J. Stone:
“Classification and Regression Trees.”, Wadsworth (1984)
■Random Forest:
L. Breiman. Random forests. Machine Learning, 45, 5–32 (2001)
AGENDA
    ◆講師紹介
    ◆Random Forestとは
    ◆決定木
      ◆決定木とは
      ◆R言語での実行
    ◆集団学習
    ◆Random Forest
      ◆アルゴリズム
      ◆R言語での実行
    ◆参考資料
    ◆最後に
最後に

      蓄積されたデータを有効活用してきたい




                           131
最後に

      蓄積されたデータを有効活用してきたい




  Google Group: http://groups.google.com/group/webmining-tokyo

                                                                 132
最後に
               データマイニング+WEB勉強会
                発表者を募集しています




 連絡
  Google Group: http://groups.google.com/group/webmining-tokyo
  Twitter     : http://twitter.com/hamadakoichi
                                                                 133
最後に




      134
最後に

              日本初
          R言語の人材募集要項
  http://www.dena.jp/recruit/sp2/career/guide09.html




                                                       135
よりよい世界の実現
     より蓄積されたデータを有効活用し
    世界の未来をよりよいものにしていきたい
               データマイニング+WEB勉強会@東京




     Google Group: http://groups.google.com/group/webmining-tokyo   136
よりよい世界の実現
        よりよい世界を実現したい




                       137
よりよい世界の実現
        よりよい世界を実現したい
      一緒に実現する仲間を募集しています
  大規模ソーシャルメディアのデータマイニング (2100万会員 1日20億アクション以上)




     (※2100万会員モバゲータウンはデータマイニングの宝の山/Tech総研 より抜粋)
    ・統計解析/データマイニング/機械学習/自然言語処理
    ・大規模分散処理
     R Hadoop/Pig/Hive/Zebra Mahout …etc


                 ぜひご連絡下さい
            koichi.hamada@gmail.com               138
ご清聴ありがとうございました




                 139
AGENDA
    ◆講師紹介
    ◆Random Forestとは
    ◆決定木
      ◆決定木とは
      ◆R言語での実行
    ◆集団学習
    ◆Random Forest
      ◆アルゴリズム
      ◆R言語での実行
    ◆参考資料
    ◆最後に

Weitere ähnliche Inhalte

Was ist angesagt?

PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説弘毅 露崎
 
傾向スコア:その概念とRによる実装
傾向スコア:その概念とRによる実装傾向スコア:その概念とRによる実装
傾向スコア:その概念とRによる実装takehikoihayashi
 
Normalization of microarray
Normalization of microarrayNormalization of microarray
Normalization of microarray弘毅 露崎
 
2014 3 13(テンソル分解の基礎)
2014 3 13(テンソル分解の基礎)2014 3 13(テンソル分解の基礎)
2014 3 13(テンソル分解の基礎)Tatsuya Yokota
 
Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理wada, kazumi
 
21世紀の手法対決 (MIC vs HSIC)
21世紀の手法対決 (MIC vs HSIC)21世紀の手法対決 (MIC vs HSIC)
21世紀の手法対決 (MIC vs HSIC)Toru Imai
 
局所特徴量と統計学習手法による物体検出
局所特徴量と統計学習手法による物体検出局所特徴量と統計学習手法による物体検出
局所特徴量と統計学習手法による物体検出MPRG_Chubu_University
 
グラフィカルモデル入門
グラフィカルモデル入門グラフィカルモデル入門
グラフィカルモデル入門Kawamoto_Kazuhiko
 
グラフィカル Lasso を用いた異常検知
グラフィカル Lasso を用いた異常検知グラフィカル Lasso を用いた異常検知
グラフィカル Lasso を用いた異常検知Yuya Takashina
 
WI2研究会(公開用) “データ分析でよく使う前処理の整理と対処”
WI2研究会(公開用) “データ分析でよく使う前処理の整理と対処” WI2研究会(公開用) “データ分析でよく使う前処理の整理と対処”
WI2研究会(公開用) “データ分析でよく使う前処理の整理と対処” Hajime Sasaki
 
Rでコンジョイント分析
Rでコンジョイント分析Rでコンジョイント分析
Rでコンジョイント分析osamu morimoto
 
Union find(素集合データ構造)
Union find(素集合データ構造)Union find(素集合データ構造)
Union find(素集合データ構造)AtCoder Inc.
 
5分でわかるかもしれないglmnet
5分でわかるかもしれないglmnet5分でわかるかもしれないglmnet
5分でわかるかもしれないglmnetNagi Teramo
 
異常検知と変化検知 第4章 近傍法による異常検知
異常検知と変化検知 第4章 近傍法による異常検知異常検知と変化検知 第4章 近傍法による異常検知
異常検知と変化検知 第4章 近傍法による異常検知Ken'ichi Matsui
 
ECCV2020 Oral論文 完全読破(1/2)
ECCV2020 Oral論文 完全読破(1/2)ECCV2020 Oral論文 完全読破(1/2)
ECCV2020 Oral論文 完全読破(1/2)cvpaper. challenge
 
階層モデルの分散パラメータの事前分布について
階層モデルの分散パラメータの事前分布について階層モデルの分散パラメータの事前分布について
階層モデルの分散パラメータの事前分布についてhoxo_m
 
指数時間アルゴリズム入門
指数時間アルゴリズム入門指数時間アルゴリズム入門
指数時間アルゴリズム入門Yoichi Iwata
 
時系列分析による異常検知入門
時系列分析による異常検知入門時系列分析による異常検知入門
時系列分析による異常検知入門Yohei Sato
 

Was ist angesagt? (20)

PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説
 
傾向スコア:その概念とRによる実装
傾向スコア:その概念とRによる実装傾向スコア:その概念とRによる実装
傾向スコア:その概念とRによる実装
 
Normalization of microarray
Normalization of microarrayNormalization of microarray
Normalization of microarray
 
Rによるベイジアンネットワーク入門
Rによるベイジアンネットワーク入門Rによるベイジアンネットワーク入門
Rによるベイジアンネットワーク入門
 
2014 3 13(テンソル分解の基礎)
2014 3 13(テンソル分解の基礎)2014 3 13(テンソル分解の基礎)
2014 3 13(テンソル分解の基礎)
 
Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理
 
21世紀の手法対決 (MIC vs HSIC)
21世紀の手法対決 (MIC vs HSIC)21世紀の手法対決 (MIC vs HSIC)
21世紀の手法対決 (MIC vs HSIC)
 
局所特徴量と統計学習手法による物体検出
局所特徴量と統計学習手法による物体検出局所特徴量と統計学習手法による物体検出
局所特徴量と統計学習手法による物体検出
 
グラフィカルモデル入門
グラフィカルモデル入門グラフィカルモデル入門
グラフィカルモデル入門
 
グラフィカル Lasso を用いた異常検知
グラフィカル Lasso を用いた異常検知グラフィカル Lasso を用いた異常検知
グラフィカル Lasso を用いた異常検知
 
WI2研究会(公開用) “データ分析でよく使う前処理の整理と対処”
WI2研究会(公開用) “データ分析でよく使う前処理の整理と対処” WI2研究会(公開用) “データ分析でよく使う前処理の整理と対処”
WI2研究会(公開用) “データ分析でよく使う前処理の整理と対処”
 
Rでコンジョイント分析
Rでコンジョイント分析Rでコンジョイント分析
Rでコンジョイント分析
 
潜在クラス分析
潜在クラス分析潜在クラス分析
潜在クラス分析
 
Union find(素集合データ構造)
Union find(素集合データ構造)Union find(素集合データ構造)
Union find(素集合データ構造)
 
5分でわかるかもしれないglmnet
5分でわかるかもしれないglmnet5分でわかるかもしれないglmnet
5分でわかるかもしれないglmnet
 
異常検知と変化検知 第4章 近傍法による異常検知
異常検知と変化検知 第4章 近傍法による異常検知異常検知と変化検知 第4章 近傍法による異常検知
異常検知と変化検知 第4章 近傍法による異常検知
 
ECCV2020 Oral論文 完全読破(1/2)
ECCV2020 Oral論文 完全読破(1/2)ECCV2020 Oral論文 完全読破(1/2)
ECCV2020 Oral論文 完全読破(1/2)
 
階層モデルの分散パラメータの事前分布について
階層モデルの分散パラメータの事前分布について階層モデルの分散パラメータの事前分布について
階層モデルの分散パラメータの事前分布について
 
指数時間アルゴリズム入門
指数時間アルゴリズム入門指数時間アルゴリズム入門
指数時間アルゴリズム入門
 
時系列分析による異常検知入門
時系列分析による異常検知入門時系列分析による異常検知入門
時系列分析による異常検知入門
 

Ähnlich wie 「R言語による Random Forest 徹底入門 -集団学習による分類・予測-」 - #TokyoR #11

"Mahout Recommendation" - #TokyoWebmining 14th
"Mahout Recommendation" -  #TokyoWebmining 14th"Mahout Recommendation" -  #TokyoWebmining 14th
"Mahout Recommendation" - #TokyoWebmining 14thKoichi Hamada
 
Mahout Canopy Clustering - #TokyoWebmining 9
Mahout Canopy Clustering - #TokyoWebmining 9Mahout Canopy Clustering - #TokyoWebmining 9
Mahout Canopy Clustering - #TokyoWebmining 9Koichi Hamada
 
Mahout JP - #TokyoWebmining 11th #MahoutJP
Mahout JP -  #TokyoWebmining 11th #MahoutJP Mahout JP -  #TokyoWebmining 11th #MahoutJP
Mahout JP - #TokyoWebmining 11th #MahoutJP Koichi Hamada
 
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京Koichi Hamada
 
ベイジアンネットとレコメンデーション -第5回データマイニング+WEB勉強会@東京
ベイジアンネットとレコメンデーション -第5回データマイニング+WEB勉強会@東京ベイジアンネットとレコメンデーション -第5回データマイニング+WEB勉強会@東京
ベイジアンネットとレコメンデーション -第5回データマイニング+WEB勉強会@東京Koichi Hamada
 
Introduction to Mahout Clustering - #TokyoWebmining #6
Introduction to Mahout Clustering - #TokyoWebmining #6Introduction to Mahout Clustering - #TokyoWebmining #6
Introduction to Mahout Clustering - #TokyoWebmining #6Koichi Hamada
 
Large Scale Data Mining of the Mobage Service - #PRMU 2011 #Mahout #Hadoop
Large Scale Data Mining of the Mobage Service - #PRMU 2011 #Mahout #HadoopLarge Scale Data Mining of the Mobage Service - #PRMU 2011 #Mahout #Hadoop
Large Scale Data Mining of the Mobage Service - #PRMU 2011 #Mahout #HadoopKoichi Hamada
 
『モバゲーの大規模データマイニング基盤におけるHadoop活用』-Hadoop Conference Japan 2011- #hcj2011
『モバゲーの大規模データマイニング基盤におけるHadoop活用』-Hadoop Conference Japan 2011- #hcj2011 『モバゲーの大規模データマイニング基盤におけるHadoop活用』-Hadoop Conference Japan 2011- #hcj2011
『モバゲーの大規模データマイニング基盤におけるHadoop活用』-Hadoop Conference Japan 2011- #hcj2011 Koichi Hamada
 
ソーシャルウェブ と レコメンデーション -第4回データマイニング+WEB勉強会@東京
ソーシャルウェブ と レコメンデーション -第4回データマイニング+WEB勉強会@東京ソーシャルウェブ と レコメンデーション -第4回データマイニング+WEB勉強会@東京
ソーシャルウェブ と レコメンデーション -第4回データマイニング+WEB勉強会@東京Koichi Hamada
 
R言語による アソシエーション分析-組合せ・事象の規則を解明する-(第5回R勉強会@東京)
R言語による アソシエーション分析-組合せ・事象の規則を解明する-(第5回R勉強会@東京)R言語による アソシエーション分析-組合せ・事象の規則を解明する-(第5回R勉強会@東京)
R言語による アソシエーション分析-組合せ・事象の規則を解明する-(第5回R勉強会@東京)Koichi Hamada
 
ソーシャルデザインパターン -評判と情報収集-
ソーシャルデザインパターン -評判と情報収集-ソーシャルデザインパターン -評判と情報収集-
ソーシャルデザインパターン -評判と情報収集-Koichi Hamada
 
ビッグデータ&データマネジメント展
ビッグデータ&データマネジメント展ビッグデータ&データマネジメント展
ビッグデータ&データマネジメント展Recruit Technologies
 
ビッグデータ活用支援フォーラム
ビッグデータ活用支援フォーラムビッグデータ活用支援フォーラム
ビッグデータ活用支援フォーラムRecruit Technologies
 
提案プロセスのマネジメント
提案プロセスのマネジメント提案プロセスのマネジメント
提案プロセスのマネジメントNaoki Ishimitsu
 
リッチなドメインモデル 名前探し
リッチなドメインモデル 名前探しリッチなドメインモデル 名前探し
リッチなドメインモデル 名前探し増田 亨
 
AWSを活用要したSAPアップグレードプロジェクト事例
AWSを活用要したSAPアップグレードプロジェクト事例AWSを活用要したSAPアップグレードプロジェクト事例
AWSを活用要したSAPアップグレードプロジェクト事例Masaru Hiroki
 
2012年上半期 AWSパートナーアワード受賞社資料:SAPアップグレードプロジェクト事例 (株式会社クニエ様)
2012年上半期 AWSパートナーアワード受賞社資料:SAPアップグレードプロジェクト事例 (株式会社クニエ様)2012年上半期 AWSパートナーアワード受賞社資料:SAPアップグレードプロジェクト事例 (株式会社クニエ様)
2012年上半期 AWSパートナーアワード受賞社資料:SAPアップグレードプロジェクト事例 (株式会社クニエ様)Amazon Web Services Japan
 
20170525 jsug バッチは地味だが役に立つ
20170525 jsug バッチは地味だが役に立つ20170525 jsug バッチは地味だが役に立つ
20170525 jsug バッチは地味だが役に立つYuichi Hasegawa
 
NTTデータはどうやってCCPMを導入したのか?
NTTデータはどうやってCCPMを導入したのか?NTTデータはどうやってCCPMを導入したのか?
NTTデータはどうやってCCPMを導入したのか?shibao800
 
バッチは地味だが役に立つ
バッチは地味だが役に立つバッチは地味だが役に立つ
バッチは地味だが役に立つapkiban
 

Ähnlich wie 「R言語による Random Forest 徹底入門 -集団学習による分類・予測-」 - #TokyoR #11 (20)

"Mahout Recommendation" - #TokyoWebmining 14th
"Mahout Recommendation" -  #TokyoWebmining 14th"Mahout Recommendation" -  #TokyoWebmining 14th
"Mahout Recommendation" - #TokyoWebmining 14th
 
Mahout Canopy Clustering - #TokyoWebmining 9
Mahout Canopy Clustering - #TokyoWebmining 9Mahout Canopy Clustering - #TokyoWebmining 9
Mahout Canopy Clustering - #TokyoWebmining 9
 
Mahout JP - #TokyoWebmining 11th #MahoutJP
Mahout JP -  #TokyoWebmining 11th #MahoutJP Mahout JP -  #TokyoWebmining 11th #MahoutJP
Mahout JP - #TokyoWebmining 11th #MahoutJP
 
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京
 
ベイジアンネットとレコメンデーション -第5回データマイニング+WEB勉強会@東京
ベイジアンネットとレコメンデーション -第5回データマイニング+WEB勉強会@東京ベイジアンネットとレコメンデーション -第5回データマイニング+WEB勉強会@東京
ベイジアンネットとレコメンデーション -第5回データマイニング+WEB勉強会@東京
 
Introduction to Mahout Clustering - #TokyoWebmining #6
Introduction to Mahout Clustering - #TokyoWebmining #6Introduction to Mahout Clustering - #TokyoWebmining #6
Introduction to Mahout Clustering - #TokyoWebmining #6
 
Large Scale Data Mining of the Mobage Service - #PRMU 2011 #Mahout #Hadoop
Large Scale Data Mining of the Mobage Service - #PRMU 2011 #Mahout #HadoopLarge Scale Data Mining of the Mobage Service - #PRMU 2011 #Mahout #Hadoop
Large Scale Data Mining of the Mobage Service - #PRMU 2011 #Mahout #Hadoop
 
『モバゲーの大規模データマイニング基盤におけるHadoop活用』-Hadoop Conference Japan 2011- #hcj2011
『モバゲーの大規模データマイニング基盤におけるHadoop活用』-Hadoop Conference Japan 2011- #hcj2011 『モバゲーの大規模データマイニング基盤におけるHadoop活用』-Hadoop Conference Japan 2011- #hcj2011
『モバゲーの大規模データマイニング基盤におけるHadoop活用』-Hadoop Conference Japan 2011- #hcj2011
 
ソーシャルウェブ と レコメンデーション -第4回データマイニング+WEB勉強会@東京
ソーシャルウェブ と レコメンデーション -第4回データマイニング+WEB勉強会@東京ソーシャルウェブ と レコメンデーション -第4回データマイニング+WEB勉強会@東京
ソーシャルウェブ と レコメンデーション -第4回データマイニング+WEB勉強会@東京
 
R言語による アソシエーション分析-組合せ・事象の規則を解明する-(第5回R勉強会@東京)
R言語による アソシエーション分析-組合せ・事象の規則を解明する-(第5回R勉強会@東京)R言語による アソシエーション分析-組合せ・事象の規則を解明する-(第5回R勉強会@東京)
R言語による アソシエーション分析-組合せ・事象の規則を解明する-(第5回R勉強会@東京)
 
ソーシャルデザインパターン -評判と情報収集-
ソーシャルデザインパターン -評判と情報収集-ソーシャルデザインパターン -評判と情報収集-
ソーシャルデザインパターン -評判と情報収集-
 
ビッグデータ&データマネジメント展
ビッグデータ&データマネジメント展ビッグデータ&データマネジメント展
ビッグデータ&データマネジメント展
 
ビッグデータ活用支援フォーラム
ビッグデータ活用支援フォーラムビッグデータ活用支援フォーラム
ビッグデータ活用支援フォーラム
 
提案プロセスのマネジメント
提案プロセスのマネジメント提案プロセスのマネジメント
提案プロセスのマネジメント
 
リッチなドメインモデル 名前探し
リッチなドメインモデル 名前探しリッチなドメインモデル 名前探し
リッチなドメインモデル 名前探し
 
AWSを活用要したSAPアップグレードプロジェクト事例
AWSを活用要したSAPアップグレードプロジェクト事例AWSを活用要したSAPアップグレードプロジェクト事例
AWSを活用要したSAPアップグレードプロジェクト事例
 
2012年上半期 AWSパートナーアワード受賞社資料:SAPアップグレードプロジェクト事例 (株式会社クニエ様)
2012年上半期 AWSパートナーアワード受賞社資料:SAPアップグレードプロジェクト事例 (株式会社クニエ様)2012年上半期 AWSパートナーアワード受賞社資料:SAPアップグレードプロジェクト事例 (株式会社クニエ様)
2012年上半期 AWSパートナーアワード受賞社資料:SAPアップグレードプロジェクト事例 (株式会社クニエ様)
 
20170525 jsug バッチは地味だが役に立つ
20170525 jsug バッチは地味だが役に立つ20170525 jsug バッチは地味だが役に立つ
20170525 jsug バッチは地味だが役に立つ
 
NTTデータはどうやってCCPMを導入したのか?
NTTデータはどうやってCCPMを導入したのか?NTTデータはどうやってCCPMを導入したのか?
NTTデータはどうやってCCPMを導入したのか?
 
バッチは地味だが役に立つ
バッチは地味だが役に立つバッチは地味だが役に立つ
バッチは地味だが役に立つ
 

Mehr von Koichi Hamada

Anime Generation with AI
Anime Generation with AIAnime Generation with AI
Anime Generation with AIKoichi Hamada
 
Generative Adversarial Networks @ ICML 2019
Generative Adversarial Networks @ ICML 2019Generative Adversarial Networks @ ICML 2019
Generative Adversarial Networks @ ICML 2019Koichi Hamada
 
AIによるアニメ生成の挑戦
AIによるアニメ生成の挑戦AIによるアニメ生成の挑戦
AIによるアニメ生成の挑戦Koichi Hamada
 
Generative Adversarial Networks (GANs) and Disentangled Representations @ N...
Generative Adversarial Networks (GANs) and Disentangled Representations @ N...Generative Adversarial Networks (GANs) and Disentangled Representations @ N...
Generative Adversarial Networks (GANs) and Disentangled Representations @ N...Koichi Hamada
 
Generative Adversarial Networks (GAN) @ NIPS2017
Generative Adversarial Networks (GAN) @ NIPS2017Generative Adversarial Networks (GAN) @ NIPS2017
Generative Adversarial Networks (GAN) @ NIPS2017Koichi Hamada
 
DeNAのAI活用したサービス開発
DeNAのAI活用したサービス開発DeNAのAI活用したサービス開発
DeNAのAI活用したサービス開発Koichi Hamada
 
対話返答生成における個性の追加反映
対話返答生成における個性の追加反映対話返答生成における個性の追加反映
対話返答生成における個性の追加反映Koichi Hamada
 
Generative Adversarial Networks (GAN) の学習方法進展・画像生成・教師なし画像変換
Generative Adversarial Networks (GAN) の学習方法進展・画像生成・教師なし画像変換Generative Adversarial Networks (GAN) の学習方法進展・画像生成・教師なし画像変換
Generative Adversarial Networks (GAN) の学習方法進展・画像生成・教師なし画像変換Koichi Hamada
 
NIPS 2016 Overview and Deep Learning Topics
NIPS 2016 Overview and Deep Learning Topics  NIPS 2016 Overview and Deep Learning Topics
NIPS 2016 Overview and Deep Learning Topics Koichi Hamada
 
DeNAの機械学習・深層学習活用した 体験提供の挑戦
DeNAの機械学習・深層学習活用した体験提供の挑戦DeNAの機械学習・深層学習活用した体験提供の挑戦
DeNAの機械学習・深層学習活用した 体験提供の挑戦Koichi Hamada
 
Laplacian Pyramid of Generative Adversarial Networks (LAPGAN) - NIPS2015読み会 #...
Laplacian Pyramid of Generative Adversarial Networks (LAPGAN) - NIPS2015読み会 #...Laplacian Pyramid of Generative Adversarial Networks (LAPGAN) - NIPS2015読み会 #...
Laplacian Pyramid of Generative Adversarial Networks (LAPGAN) - NIPS2015読み会 #...Koichi Hamada
 
DeNAの大規模データマイニング活用したサービス開発
DeNAの大規模データマイニング活用したサービス開発DeNAの大規模データマイニング活用したサービス開発
DeNAの大規模データマイニング活用したサービス開発Koichi Hamada
 
『MobageのAnalytics活用したサービス開発』 - データマイニングCROSS2014 #CROSS2014
『MobageのAnalytics活用したサービス開発』 - データマイニングCROSS2014 #CROSS2014『MobageのAnalytics活用したサービス開発』 - データマイニングCROSS2014 #CROSS2014
『MobageのAnalytics活用したサービス開発』 - データマイニングCROSS2014 #CROSS2014Koichi Hamada
 
『Mobageの大規模データマイニング活用と 意思決定』- #IBIS 2012 -ビジネスと機械学習の接点-
『Mobageの大規模データマイニング活用と 意思決定』- #IBIS 2012 -ビジネスと機械学習の接点- 『Mobageの大規模データマイニング活用と 意思決定』- #IBIS 2012 -ビジネスと機械学習の接点-
『Mobageの大規模データマイニング活用と 意思決定』- #IBIS 2012 -ビジネスと機械学習の接点- Koichi Hamada
 
複雑ネットワーク上の伝搬法則の数理
複雑ネットワーク上の伝搬法則の数理複雑ネットワーク上の伝搬法則の数理
複雑ネットワーク上の伝搬法則の数理Koichi Hamada
 
データマイニングCROSS 2012 Opening Talk - データマイニングの実サービス・ビジネス適用と展望
データマイニングCROSS 2012 Opening Talk - データマイニングの実サービス・ビジネス適用と展望 データマイニングCROSS 2012 Opening Talk - データマイニングの実サービス・ビジネス適用と展望
データマイニングCROSS 2012 Opening Talk - データマイニングの実サービス・ビジネス適用と展望 Koichi Hamada
 
データマイニングCROSS 第2部-機械学習・大規模分散処理
データマイニングCROSS 第2部-機械学習・大規模分散処理データマイニングCROSS 第2部-機械学習・大規模分散処理
データマイニングCROSS 第2部-機械学習・大規模分散処理Koichi Hamada
 
10回開催記念 「データマイニング+WEB ~データマイニング・機械学習活用による継続進化~」ー第10回データマイニング+WEB勉強会@東京ー #Toky...
10回開催記念 「データマイニング+WEB ~データマイニング・機械学習活用による継続進化~」ー第10回データマイニング+WEB勉強会@東京ー #Toky...10回開催記念 「データマイニング+WEB ~データマイニング・機械学習活用による継続進化~」ー第10回データマイニング+WEB勉強会@東京ー #Toky...
10回開催記念 「データマイニング+WEB ~データマイニング・機械学習活用による継続進化~」ー第10回データマイニング+WEB勉強会@東京ー #Toky...Koichi Hamada
 
Apache Mahout - Random Forests - #TokyoWebmining #8
Apache Mahout - Random Forests - #TokyoWebmining #8 Apache Mahout - Random Forests - #TokyoWebmining #8
Apache Mahout - Random Forests - #TokyoWebmining #8 Koichi Hamada
 
「樹木モデルとランダムフォレスト-機械学習による分類・予測-」-データマイニングセミナー
「樹木モデルとランダムフォレスト-機械学習による分類・予測-」-データマイニングセミナー「樹木モデルとランダムフォレスト-機械学習による分類・予測-」-データマイニングセミナー
「樹木モデルとランダムフォレスト-機械学習による分類・予測-」-データマイニングセミナーKoichi Hamada
 

Mehr von Koichi Hamada (20)

Anime Generation with AI
Anime Generation with AIAnime Generation with AI
Anime Generation with AI
 
Generative Adversarial Networks @ ICML 2019
Generative Adversarial Networks @ ICML 2019Generative Adversarial Networks @ ICML 2019
Generative Adversarial Networks @ ICML 2019
 
AIによるアニメ生成の挑戦
AIによるアニメ生成の挑戦AIによるアニメ生成の挑戦
AIによるアニメ生成の挑戦
 
Generative Adversarial Networks (GANs) and Disentangled Representations @ N...
Generative Adversarial Networks (GANs) and Disentangled Representations @ N...Generative Adversarial Networks (GANs) and Disentangled Representations @ N...
Generative Adversarial Networks (GANs) and Disentangled Representations @ N...
 
Generative Adversarial Networks (GAN) @ NIPS2017
Generative Adversarial Networks (GAN) @ NIPS2017Generative Adversarial Networks (GAN) @ NIPS2017
Generative Adversarial Networks (GAN) @ NIPS2017
 
DeNAのAI活用したサービス開発
DeNAのAI活用したサービス開発DeNAのAI活用したサービス開発
DeNAのAI活用したサービス開発
 
対話返答生成における個性の追加反映
対話返答生成における個性の追加反映対話返答生成における個性の追加反映
対話返答生成における個性の追加反映
 
Generative Adversarial Networks (GAN) の学習方法進展・画像生成・教師なし画像変換
Generative Adversarial Networks (GAN) の学習方法進展・画像生成・教師なし画像変換Generative Adversarial Networks (GAN) の学習方法進展・画像生成・教師なし画像変換
Generative Adversarial Networks (GAN) の学習方法進展・画像生成・教師なし画像変換
 
NIPS 2016 Overview and Deep Learning Topics
NIPS 2016 Overview and Deep Learning Topics  NIPS 2016 Overview and Deep Learning Topics
NIPS 2016 Overview and Deep Learning Topics
 
DeNAの機械学習・深層学習活用した 体験提供の挑戦
DeNAの機械学習・深層学習活用した体験提供の挑戦DeNAの機械学習・深層学習活用した体験提供の挑戦
DeNAの機械学習・深層学習活用した 体験提供の挑戦
 
Laplacian Pyramid of Generative Adversarial Networks (LAPGAN) - NIPS2015読み会 #...
Laplacian Pyramid of Generative Adversarial Networks (LAPGAN) - NIPS2015読み会 #...Laplacian Pyramid of Generative Adversarial Networks (LAPGAN) - NIPS2015読み会 #...
Laplacian Pyramid of Generative Adversarial Networks (LAPGAN) - NIPS2015読み会 #...
 
DeNAの大規模データマイニング活用したサービス開発
DeNAの大規模データマイニング活用したサービス開発DeNAの大規模データマイニング活用したサービス開発
DeNAの大規模データマイニング活用したサービス開発
 
『MobageのAnalytics活用したサービス開発』 - データマイニングCROSS2014 #CROSS2014
『MobageのAnalytics活用したサービス開発』 - データマイニングCROSS2014 #CROSS2014『MobageのAnalytics活用したサービス開発』 - データマイニングCROSS2014 #CROSS2014
『MobageのAnalytics活用したサービス開発』 - データマイニングCROSS2014 #CROSS2014
 
『Mobageの大規模データマイニング活用と 意思決定』- #IBIS 2012 -ビジネスと機械学習の接点-
『Mobageの大規模データマイニング活用と 意思決定』- #IBIS 2012 -ビジネスと機械学習の接点- 『Mobageの大規模データマイニング活用と 意思決定』- #IBIS 2012 -ビジネスと機械学習の接点-
『Mobageの大規模データマイニング活用と 意思決定』- #IBIS 2012 -ビジネスと機械学習の接点-
 
複雑ネットワーク上の伝搬法則の数理
複雑ネットワーク上の伝搬法則の数理複雑ネットワーク上の伝搬法則の数理
複雑ネットワーク上の伝搬法則の数理
 
データマイニングCROSS 2012 Opening Talk - データマイニングの実サービス・ビジネス適用と展望
データマイニングCROSS 2012 Opening Talk - データマイニングの実サービス・ビジネス適用と展望 データマイニングCROSS 2012 Opening Talk - データマイニングの実サービス・ビジネス適用と展望
データマイニングCROSS 2012 Opening Talk - データマイニングの実サービス・ビジネス適用と展望
 
データマイニングCROSS 第2部-機械学習・大規模分散処理
データマイニングCROSS 第2部-機械学習・大規模分散処理データマイニングCROSS 第2部-機械学習・大規模分散処理
データマイニングCROSS 第2部-機械学習・大規模分散処理
 
10回開催記念 「データマイニング+WEB ~データマイニング・機械学習活用による継続進化~」ー第10回データマイニング+WEB勉強会@東京ー #Toky...
10回開催記念 「データマイニング+WEB ~データマイニング・機械学習活用による継続進化~」ー第10回データマイニング+WEB勉強会@東京ー #Toky...10回開催記念 「データマイニング+WEB ~データマイニング・機械学習活用による継続進化~」ー第10回データマイニング+WEB勉強会@東京ー #Toky...
10回開催記念 「データマイニング+WEB ~データマイニング・機械学習活用による継続進化~」ー第10回データマイニング+WEB勉強会@東京ー #Toky...
 
Apache Mahout - Random Forests - #TokyoWebmining #8
Apache Mahout - Random Forests - #TokyoWebmining #8 Apache Mahout - Random Forests - #TokyoWebmining #8
Apache Mahout - Random Forests - #TokyoWebmining #8
 
「樹木モデルとランダムフォレスト-機械学習による分類・予測-」-データマイニングセミナー
「樹木モデルとランダムフォレスト-機械学習による分類・予測-」-データマイニングセミナー「樹木モデルとランダムフォレスト-機械学習による分類・予測-」-データマイニングセミナー
「樹木モデルとランダムフォレスト-機械学習による分類・予測-」-データマイニングセミナー
 

Kürzlich hochgeladen

20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directoryosamut
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdffurutsuka
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000Shota Ito
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxAtomu Hidaka
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。iPride Co., Ltd.
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 

Kürzlich hochgeladen (9)

20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory20240412_HCCJP での Windows Server 2025 Active Directory
20240412_HCCJP での Windows Server 2025 Active Directory
 
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
新人研修のまとめ       2024/04/12の勉強会で発表されたものです。新人研修のまとめ       2024/04/12の勉強会で発表されたものです。
新人研修のまとめ 2024/04/12の勉強会で発表されたものです。
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
UPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdfUPWARD_share_company_information_20240415.pdf
UPWARD_share_company_information_20240415.pdf
 
PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000PHP-Conference-Odawara-2024-04-000000000
PHP-Conference-Odawara-2024-04-000000000
 
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptxIoT in the era of generative AI, Thanks IoT ALGYAN.pptx
IoT in the era of generative AI, Thanks IoT ALGYAN.pptx
 
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
Amazon SES を勉強してみる その12024/04/12の勉強会で発表されたものです。
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 

「R言語による Random Forest 徹底入門 -集団学習による分類・予測-」 - #TokyoR #11

  • 1. Tokyo.R #11 2011/1/29 R言語による Random Forest 徹底入門 -集団学習による分類・予測- hamadakoichi 濱田 晃一
  • 2. AGENDA ◆講師紹介 ◆Random Forestとは ◆決定木 ◆決定木とは ◆R言語での実行 ◆集団学習 ◆Random Forest ◆アルゴリズム ◆R言語での実行 ◆参考資料 ◆最後に
  • 3. AGENDA ◆講師紹介 ◆Random Forestとは ◆決定木 ◆決定木とは ◆R言語での実行 ◆集団学習 ◆Random Forest ◆アルゴリズム ◆R言語での実行 ◆参考資料 ◆最後に
  • 4. hamadakoichi 濱田晃一 http://iddy.jp/profile/hamadakoichi 4
  • 5. 資料 各種講師資料を公開しています http://www.slideshare.net/hamadakoichi
  • 6. データマイニング+WEB勉強会@東京 データマイニング+WEB勉強会@東京 主催者です ぜひご参加下さい Google Group: http://groups.google.com/group/webmining-tokyo 6
  • 7. データマイニング+WEB勉強会@東京 たくさんの会場参加、UST参加、Bookmark ありがとうございます 開催内容まとめ http://d.hatena.ne.jp/hamadakoichi/ 7
  • 8. 3つの進行方針 充分な時間を充て 理解・議論を優先する 1.充分な時間: 各テーマごとにしっかり時間を充てる (浅く多くではなく、少ないテーマでも深く) 2.理解: 進行を急がない。分からないところはすぐ質問。 講師・各メンバーからの返答で、みなで理解を深めることを優先する。 3.議論: 議論時間をしっかりとる。 各分野の意見の共有、皆での発想・創造を優先する。 全員でのフラットな議論。講師にとっても有意義な場となるようにする。 8
  • 10. 活動領域 ソーシャルメディアのデータマイニング活用 2000万人以上の人々へ 各人のつながり・楽しみ・好み 個性にあった適切なサービス提供 Social Media Social Graph Fun Like Personality Objective Process Data Mining Machine Learning 各人のつながり、楽しみ、好み、個性にあった より適切なサービス提供
  • 11. 活動領域 活動が紹介されました 11
  • 12. 活動領域 活動が紹介されました Tech総研 12 (※記事から抜粋)
  • 14. hamadakoichi 濱田晃一 理論物理 博士(2004.3取得) 量子統計場の理論 Statistical Field Theory Spontaneously Time-Reversal Symmetry Breaking Anisotropic Massless Dirac Fermions 博士論文: http://hosi.phys.s.u-tokyo.ac.jp/~koichi/PhD-thesis.pdf 14
  • 15. hamadakoichi 濱田晃一 文部大臣に褒められた 元 文部大臣・法務大臣 六法全書著者・元法学政治学研究科長 森山眞弓さん 菅野和夫さん 15
  • 16. hamadakoichi 濱田晃一 Los Angelesでプロダンサーに褒められた ・HIP HOP/House ダンス歴13年 ・ダンス開始後 1年半でL.A.でプロダンサーに褒められる Youtube Channel: http://www.youtube.com/hamadakoichi 16
  • 17. hamadakoichi 濱田晃一 毎週末3時間ダンスコーチをしています ■過去、東京と京都でも ダンス部を創設。 コーチをしていました 駒場物理ダンス部 京都大学基礎物理学研究所ダンス部 部長兼コーチ 部長兼コーチ 現在: 毎週末 3時間ダンスコーチ Youtube Channel: http://www.youtube.com/hamadakoichi 17
  • 18. 数理解析手法の実ビジネスへの適用 2004年 博士号取得後 数理解析手法を実ビジネス適用の方法論構築 主な領域 ◆活動の数理モデル化・解析手法 ◆活動の分析手法・再構築手法 ◆活動の実行制御・実績解析システム … 内容抜粋 “Decoupling Executions in Navigating Manufacturing "Unified graph representation of processes Processes for Shortening Lead Time and Its Implementation for scheduling with flexible resource to an Unmanned Machine Shop”, assignment", 18
  • 19. 数理解析手法の実ビジネスへの適用:活動例 活動例 活動の統一グラフモデルを構築・解析 Unified graphical model of processes and resources 青字:割付モデル属性 [ ] : Optional Node ・priority(優先度) Edge ・duration(予定時間) [・earliest(再早開始日時) ] Process Edge Process [・deadline(納期) ] [・or(条件集約数) ] 前プロセスの終了後に後プロセスが プロセスを表す 開始できること表す ・attributes(属性) preemptable(中断可否), successive(引継ぎ可否) Uses Edge workload(作業負荷) Processが使用する uses uses uses uses uses uses Assign Region を表す Assign Region Assigns from Edge 同一Resourceを割付け続ける Assign Regionに assigns from assigns from 指定Resourceの子Resource集合の 範囲を表す assigns assigns 中から割付けることを示す 企業01 [process] has has [startDate(開始日時)] [endDate(終了日時)] Assigns Edge 製品01 組織A StartDateからEndDateまでの間 Resource has Assign RegionにResourceを 割付対象要素を表す has has has has has has 割付けることを表す ・capacity(容量) ・calender(カレンダー) AAA01 AAB02 … 山田さん 田中さん 鈴木さん ・attributes(属性) Has Edge 東さん Resourceの所有関係を表す 19
  • 20. 数理解析手法の実ビジネスへの適用:活動例 一品一様の業務プロセスの 動的なプロセス制御数理体系を構築 全体生産リードタイム中央値を 1/2.7に短縮 設計開始~頭だし出荷リードタイム 体系適用 設計開始~頭だし出荷CT対週集計開始日時の箱ひげ図 500 適用後 設計開始~頭だし出荷CT 400 360.4h(15.0日) 1/2.7 300 200 100 0 0 0 0 0 0 0 0 0 0 0 0 141.6h(5.9日) 0 0 9: 0 9 :0 9:0 9:0 9: 0 9 :0 9:0 9:0 9: 0 9 :0 9 :0 9:0 9: 0 9 :0 0 7 4 1 8 5 1 8 5 2 9 6 3 0 /2 /2 /0 /1 /1 /2 1/0 /0 /1 /2 1/2 /0 /1 /2 09 /09 /10 1 0 /1 0 / 1 0 1 1 1 /1 1 / 1 1 1 1 2 / 12 / 1 2 4/ 4 4 4/ 4 4 4/ 4/ 4 4 4/ 4/ 4 4 2 0 0 2 00 2 00 200 200 200 2 00 200 200 200 2 00 200 200 200 週集計開始日時 20
  • 21. 数理解析手法の実ビジネスへの適用:活動例 ビジネスとともに 学術分野でも貢献 変動性から生じる動的な課題 ・リソースの競合 ・滞留 ・納期遅延 … 一品一様な業務プロセスを含む 統計解析・制御数理モデル ・統計的な有効変数算出 ・統計数理モデル化 -優先順位制御 -実行タイミング制御 -統計フィードバック -適正リソース量算出 ・予測数理体系 論文(体系の一部) M.Nakao, N. Kobayashi, K.Hamada, T.Totsuka, S.Yamada, “Decoupling Executions in Navigating Manufacturing Processes for Shortening Lead Time and Its Implementation to an Unmanned Machine Shop”, CIRP Annals - Manufacturing Technology Volume 56, Issue 1, Pages 171-174 (2007) 21
  • 22. 思い より広く蓄積されたデータを有効活用し 世界の未来をよりよいものにしていきたい データマイニング+WEB勉強会@東京 Google Group: http://groups.google.com/group/webmining-tokyo 22
  • 23. 現在の活動領域 ソーシャルメディアのデータマイニング活用 2000万人以上の人々へ 各人のつながり・楽しみ・好み 個性にあった適切なサービス配信 日々20億以上の活動の活用 Social Media Social Graph Fun Like Personality Objective Process Data Mining Machine Learning 各人のつながり、楽しみ、好み、個性にあった より適切なサービス提供 23
  • 24. よりよい世界の実現 ソーシャル・活動情報の活用により より適切な情報・サービス配信される世界を実現したい Social Media Social Graph Fun Like Personality Objective Process Data Mining Machine Learning 各人のつながり、楽しみ、好み、個性にあった より適切なサービス提供 24
  • 25. よりよい世界の実現 ソーシャル・活動情報の活用により より適切な情報・サービス配信される世界を実現したい 世界中の人々が 個々人のつながり・楽しみ・好みにあった適切な情報・サービスを 自ら探さなくても得ることができる世界 Social Media Social Graph Fun Like Personality Objective Process Data Mining Machine Learning 各人のつながり、楽しみ、好み、個性にあった より適切なサービス提供 25
  • 27. 思うこと 蓄積されたデータを有効活用し 世界の未来をよりよいものにしていきたい データマイニング+WEB勉強会@東京 Google Group: http://groups.google.com/group/webmining-tokyo 27
  • 28. 思うこと 統計解析・データマイニング・機械学習、重要 データマイニング+WEB勉強会@東京 Google Group: http://groups.google.com/group/webmining-tokyo 28
  • 29. 思うこと 統計解析・データマイニング・機械学習、重要 R言語使い 重要 データマイニング+WEB勉強会@東京 Google Group: http://groups.google.com/group/webmining-tokyo 29
  • 31. 課題意識 R言語人材が そのスキルを十分に活かし 活躍できる場が提供されているか? 31
  • 32. 調査結果 早速 R言語での人材募集要項を検索してみた 「R言語 募集要項」 32
  • 33. 調査結果 早速 R言語での人材募集要項を検索してみた 「R言語 募集要項」 SASやSPSS使いは人材募集がある
  • 34. 調査結果 早速 R言語での人材募集要項を検索してみた 「R言語 募集要項」 SASやSPSS使いは人材募集がある R言語の人材募集は見つからなかった。。。 (※海外ではFacebook等、募集)
  • 35. 調査結果 早速 R言語での人材募集要項を検索してみた 「R言語 募集要項」 SASやSPSS使いは人材募集がある R言語の人材募集は見つからなかった。。。 (※海外ではFacebook等、募集) (2011/01/27までは) 35
  • 37. 新たな変化 検索してみると 37
  • 38. 新たな変化 発見! 38
  • 39. 新たな変化 日本初 R言語の人材募集要項 http://www.dena.jp/recruit/sp2/career/guide09.html R言語人材の活躍の場 39
  • 40. 思い 40
  • 41. 思い R言語 人材募集を作った思い 41
  • 42. 思い R言語 人材募集を作った思い 統計解析・データマイニング・機械学習 R言語・R人材の活用・活躍の場を広げたい 42
  • 43. 思い R言語 人材募集を作った思い 統計解析・データマイニング・機械学習 R言語・R人材の活用・活躍の場を広げたい ソーシャル業界全体や、他業界の追従も歓迎 43
  • 44. 思い R言語 人材募集を作った思い 統計解析・データマイニング・機械学習 R言語・R人材の活用・活躍の場を広げたい ソーシャル業界全体や、他業界の追従も歓迎 より広く、蓄積されたデータを有効活用し 世界中のサービスが継続的進化される世界を実現したい 44
  • 45. 思い R言語 人材募集を作った思い 統計解析・データマイニング・機械学習 R言語・R人材の活用・活躍の場を広げたい ソーシャル業界全体や、他業界の追従も歓迎 より広く、蓄積されたデータを有効活用し 世界中のサービスが継続的進化される世界を実現したい ※もちろん、個人としては 一緒に活動し実現できたら嬉しい 45
  • 46. よりよい世界の実現 より蓄積されたデータを有効活用し 世界の未来をよりよいものにしていきたい データマイニング+WEB勉強会@東京 Google Group: http://groups.google.com/group/webmining-tokyo 46
  • 47. よりよい世界の実現 よりよい世界を実現したい 一緒に実現する仲間を募集しています 47
  • 48. よりよい世界の実現 よりよい世界を実現したい 一緒に実現する仲間を募集しています 48
  • 49. よりよい世界の実現 よりよい世界を実現したい 一緒に実現する仲間を募集しています 大規模ソーシャルメディアのデータマイニング (2100万会員 1日20億アクション以上) (※2100万会員モバゲータウンはデータマイニングの宝の山/Tech総研 より抜粋) ・統計解析/データマイニング/機械学習/自然言語処理 ・大規模分散処理 ぜひご連絡下さい koichi.hamada@gmail.com 49
  • 50. よりよい世界の実現 よりよい世界を実現したい 一緒に実現する仲間を募集しています 大規模ソーシャルメディアのデータマイニング (2100万会員 1日20億アクション以上) (※2100万会員モバゲータウンはデータマイニングの宝の山/Tech総研 より抜粋) ・統計解析/データマイニング/機械学習/自然言語処理 ・大規模分散処理 R ぜひご連絡下さい koichi.hamada@gmail.com 50
  • 51. よりよい世界の実現 よりよい世界を実現したい 一緒に実現する仲間を募集しています 大規模ソーシャルメディアのデータマイニング (2100万会員 1日20億アクション以上) (※2100万会員モバゲータウンはデータマイニングの宝の山/Tech総研 より抜粋) ・統計解析/データマイニング/機械学習/自然言語処理 ・大規模分散処理 R Hadoop/Pig/Hive/Zebra ぜひご連絡下さい koichi.hamada@gmail.com 51
  • 52. よりよい世界の実現 よりよい世界を実現したい 一緒に実現する仲間を募集しています 大規模ソーシャルメディアのデータマイニング (2100万会員 1日20億アクション以上) (※2100万会員モバゲータウンはデータマイニングの宝の山/Tech総研 より抜粋) ・統計解析/データマイニング/機械学習/自然言語処理 ・大規模分散処理 R Hadoop/Pig/Hive/Zebra Mahout ぜひご連絡下さい koichi.hamada@gmail.com 52
  • 53. よりよい世界の実現 よりよい世界を実現したい 一緒に実現する仲間を募集しています 大規模ソーシャルメディアのデータマイニング (2100万会員 1日20億アクション以上) (※2100万会員モバゲータウンはデータマイニングの宝の山/Tech総研 より抜粋) ・統計解析/データマイニング/機械学習/自然言語処理 ・大規模分散処理 R Hadoop/Pig/Hive/Zebra Mahout …etc ぜひご連絡下さい koichi.hamada@gmail.com 53
  • 54. AGENDA ◆講師紹介 ◆Random Forestとは ◆決定木 ◆決定木とは ◆R言語での実行 ◆集団学習 ◆Random Forest ◆アルゴリズム ◆R言語での実行 ◆参考資料 ◆最後に
  • 55. Random Forest とは 集団学習により 55
  • 56. Random Forest とは 集団学習により 高精度の分類・予測を実現する 56
  • 57. Random Forest とは 集団学習により 高精度の分類・予測を実現する 機械学習アルゴリズム 57
  • 58. Random Forest とは 集団学習により 高精度の分類・予測を実現する 機械学習アルゴリズム “Random forests” (L. Breiman, 2001) 58
  • 59. Random Forest とは 決定木の集団学習により 高精度の分類・予測を行う 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B 予測対象 Result 1 Result 2 … Result B 分類・予測結果 59
  • 60. Random Forest : 長所 Random Forest の 主な長所 ・精度が高い ・説明変数が数百、数千でも効率的に作動 ・目的変数に対する説明変数の重要度を推定 ・欠損値を持つデータでも有効に動作 ・個体数がアンバランスでもエラーバランスが保たれる 60
  • 61. Random Forest : 長所 決定木、Support Vector Machine(SVM)、等 他分類器に比べ分類・予測精度が高い 例:11人の著者の10テーマ110編の文章分類 精度:高い (49個の特徴語。100回の学習・テストでの比較) Random Forest Bagging AdaBoost F1値平均 ニューラルネット 決定木 (量子ベクトル化) (CART) SVM K近傍法 カーネルK近傍法 引用元: 「ESTRELA」 2009年05月号 統計的テキスト解析(15) ~テキストの分類分析2~ http://mjin.doshisha.ac.jp/R/200905_70.pdf 61
  • 62. Random Forest とは 決定木の集団学習により 高精度の分類・予測を行う 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B 予測対象 Result 1 Result 2 … Result B 分類・予測結果 62
  • 63. Random Forest とは 決定木の集団学習により 高精度の分類・予測を行う 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B 予測対象 Result 1 Result 2 … Result B 分類・予測結果 63
  • 64. Random Forest とは 決定木の集団学習により 高精度の分類・予測を行う 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B 予測対象 Result 1 Result 2 … Result B 分類・予測結果 64
  • 65. AGENDA ◆講師紹介 ◆Random Forestとは ◆決定木 ◆決定木とは ◆R言語での実行 ◆集団学習 ◆Random Forest ◆アルゴリズム ◆R言語での実行 ◆参考資料 ◆最後に
  • 66. AGENDA ◆講師紹介 ◆Random Forestとは ◆決定木 ◆決定木とは ◆R言語での実行 ◆集団学習 ◆Random Forest ◆アルゴリズム ◆R言語での実行 ◆参考資料 ◆最後に
  • 67. 決定木 とは 目的変数に影響が大きい変数・境界値・順序を 算出することができる 67
  • 68. 決定木 とは 目的変数に影響が大きい変数・境界値・順序を 算出することができる 影響大 データ 木構造 68
  • 69. 決定木 とは 目的変数に影響が大きい変数・境界値・順序を 算出することができる 影響大 データ 木構造 今まで気づかなかった重要な条件を知り サービスやプロセスを改良することができる 69
  • 70. 解決する課題 目的変数に影響が大きい変数・境界値・順序を 算出することができる ■丌具合発生率が大きい製造工程にはどのような特徴があるのか? 今まで気づかなかった重要な条件を知り サービスやプロセスを改良することができる 70
  • 71. 解決する課題 目的変数に影響が大きい変数・境界値・順序を 算出することができる ■丌具合発生率が大きい製造工程にはどのような特徴があるのか? ⇒ 丌具合原因の特定・改善 今まで気づかなかった重要な条件を知り サービスやプロセスを改良することができる 71
  • 72. 解決する課題 目的変数に影響が大きい変数・境界値・順序を 算出することができる ■丌具合発生率が大きい製造工程にはどのような特徴があるのか? ⇒ 丌具合原因の特定・改善 ■広告効果が高いユーザーにはどのような特徴があるのか? 今まで気づかなかった重要な条件を知り サービスやプロセスを改良することができる 72
  • 73. 解決する課題 目的変数に影響が大きい変数・境界値・順序を 算出することができる ■丌具合発生率が大きい製造工程にはどのような特徴があるのか? ⇒ 丌具合原因の特定・改善 ■広告効果が高いユーザーにはどのような特徴があるのか? ⇒ 投資対効果の高いターゲット選定 今まで気づかなかった重要な条件を知り サービスやプロセスを改良することができる 73
  • 74. 解決する課題 目的変数に影響が大きい変数・境界値・順序を 算出することができる ■丌具合発生率が大きい製造工程にはどのような特徴があるのか? ⇒ 丌具合原因の特定・改善 ■広告効果が高いユーザーにはどのような特徴があるのか? ⇒ 投資対効果の高いターゲット選定 ■優良ユーザーはどのような楽しみかたをしているか? 今まで気づかなかった重要な条件を知り サービスやプロセスを改良することができる 74
  • 75. 解決する課題 目的変数に影響が大きい変数・境界値・順序を 算出することができる ■丌具合発生率が大きい製造工程にはどのような特徴があるのか? ⇒ 丌具合原因の特定・改善 ■広告効果が高いユーザーにはどのような特徴があるのか? ⇒ 投資対効果の高いターゲット選定 ■優良ユーザーはどのような楽しみかたをしているか? ⇒ より継続的に楽しんでもらえるサービス改良 今まで気づかなかった重要な条件を知り サービスやプロセスを改良することができる 75
  • 76. 解決する課題 目的変数に影響が大きい変数・境界値・順序を 算出することができる ■丌具合発生率が大きい製造工程にはどのような特徴があるのか? ⇒ 丌具合原因の特定・改善 ■広告効果が高いユーザーにはどのような特徴があるのか? ⇒ 投資対効果の高いターゲット選定 ■優良ユーザーはどのような楽しみかたをしているか? ⇒ より継続的に楽しんでもらえるサービス改良 今まで気づかなかった重要な条件を知り サービスやプロセスを改良することができる 76
  • 77. 決定木 とは 木構造の条件分岐で 分類・予測(回帰)を行う 例: 植物の分類 Iris(アヤメ)データ 花葉と花びらの長さ・幅から 種類の分類構造算出 説明変数 目的変数 花葉(長さ・幅) 花びら(長さ・幅) 種類 77
  • 78. 決定木 とは 木構造の条件分岐で 分類・予測(回帰)を行う 例: 植物の分類 分類 花びらの長さ Iris(アヤメ)データ 花葉と花びらの長さ・幅から 花びらの幅 種類の分類構造算出 説明変数 目的変数 花葉(長さ・幅) 花びら(長さ・幅) 種類 setosa virginica versicolor 78
  • 79. 決定木 とは 木構造の条件分岐で 分類・予測(回帰)を行う 例: 植物の分類 分類 花びらの長さ Iris(アヤメ)データ 花葉と花びらの長さ・幅から 花びらの幅 種類の分類構造算出 virginica setosa setosa virginica versicolor virginica versicolor virginica 79
  • 80. 決定木 とは 木構造の条件分岐で 分類・予測(回帰)を行う 例: ブレーキ後 停車距離 予測 carsデータ 車速度と ブレーキ後の停車距離の関係構造算出 説明変数 目的変数 ブレーキ後の 車の速度 停車までの距離 80
  • 81. 決定木 とは 木構造の条件分岐で 分類・予測(回帰)を行う 例: ブレーキ後 停車距離 予測 回帰(予測) スピード(speed) carsデータ 車速度と ブレーキ後の停車距離の関係構造算出 説明変数 目的変数 ブレーキ後の 車の速度 停車までの距離 ブレーキ後の停車距離 81
  • 82. 決定木 とは 木構造の条件分岐で 分類・予測(回帰)を行う 例: ブレーキ後 停車距離 予測 回帰(予測) スピード(speed) carsデータ 車速度と ブレーキ後の停車距離の関係構造算出 ブレーキ後の停車距離 82
  • 83. 決定木: 分岐基準 条件ノード A を条件ノードALとARに分けるとき 以下のΔIを最大化する分割を行う Classification And Regression Trees (CART) (Breiman et al, 1984) 分類木 Entropy GINI係数 ※ :条件ノード A で クラス k をとる確率 回帰木 尤離度(deviance) ※ :条件ノード A での目標変数 t の平均値 83
  • 84. AGENDA ◆講師紹介 ◆Random Forestとは ◆決定木 ◆決定木とは ◆R言語での実行 ◆集団学習 ◆Random Forest ◆アルゴリズム ◆R言語での実行 ◆参考資料 ◆最後に
  • 85. 決定木の実行 パッケージインストール # 決定木のインストール install.packages("mvpart") library(mvpart) 85
  • 86. 決定木の実行 パッケージインストール # 決定木のインストール install.packages("mvpart") library(mvpart) # Species(種類)を分類変数として 樹木モデル を生成 # iris(アヤメ)データを使用 tree <- rpart(Species~., data = iris, method = "class") サンプルデータ iris(アヤメ)データ:よい性質を持ち よく使用される (R環境で標準提供されている) 説明変数 目的変数 花葉(長さ・幅) 花びら(長さ・幅) 種類 Sepal.Length Sepal.Width Petal.Length Petal.Width Species 5.1 3.5 1.4 0.2 setosa 4.9 3.0 1.4 0.2 setosa 4.7 3.2 1.3 0.2 setosa 4.6 3.1 1.5 0.2 setosa 5.0 3.6 1.4 0.2 setosa Iris Sanguinea 86
  • 87. 決定木の実行 生成された決定木の表示 #Tree の表示 (全分岐での分布表示(all=TRUE) 、個数も表示(use.n =TRUE)) plot.rpart(tree) text.rpart(tree, all = TRUE, use.n = TRUE) 花びらの長さ 花びらの幅 setosa versicolor virginica 87
  • 88. 決定木を用いた予測 predtree <- predict(tree, data = newdata, type = "class") 88
  • 89. 決定木の実行 学習・予測データに分け 学習用データで決定木作成 # iris(アヤメ)データを使用 data <- iris # 学習用データとテスト用データをランダムサンプリング ndata <- nrow(data)#データ行数 ridx <- sample(ndata, ndata*0.5) #50%のランダム抽出で学習・予測データ分割 data.learn <- data[ridx,] #学習用データ作成 data.test <- data[-ridx,] #予測用データ作成 # Species(種類)を分類変数として 決定木 を生成 tree <- rpart(Species~., data = data.learn, method = "class") 89
  • 90. 決定木の実行 樹木モデル を用いた予測 # 樹木モデルを用いた予測 (新データ data.test に対する種類分類を予測) predtree <- predict(tree, data.test, type = "class") 90
  • 91. 決定木の実行 樹木モデル を用いた予測 # 決定木を用いた予測 (新データ data.test に対する種類分類を予測) predtree <- predict(tree, data.test, type = "class") # 解との比較 table(predtree,data.test$Species) 予測結果: Tree 予測 predtree setosa versicolor virginica setosa 24 0 0 versicolor 0 22 3 virginica 0 3 23 91
  • 92. Random Forest とは 決定木の集団学習により 高精度の分類・予測を行う 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B 予測対象 Result 1 Result 2 … Result B 分類・予測結果 92
  • 93. Random Forest とは 決定木の集団学習により 高精度の分類・予測を行う 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B 予測対象 Result 1 Result 2 … Result B 分類・予測結果 93
  • 94. AGENDA ◆講師紹介 ◆Random Forestとは ◆決定木 ◆決定木とは ◆R言語での実行 ◆集団学習 ◆Random Forest ◆アルゴリズム ◆R言語での実行 ◆参考資料 ◆最後に
  • 96. 集団学習 とは 複数モデル生成し 結果を統合 精度を向上させる 機械学習のアルゴリズム 96
  • 97. 集団学習 とは 複数モデル生成し 結果を統合 精度を向上させる 機械学習のアルゴリズム ■異なるサンプル、異なる重みの 複数の学習モデルを生成 97
  • 98. 集団学習 とは 複数モデル生成し 結果を統合 精度を向上させる 機械学習のアルゴリズム ■異なるサンプル、異なる重みの 複数の学習モデルを生成 ■各モデルの結果を統合・組合せにより 精度・汎用性を向上 98
  • 99. 集団学習 とは 複数モデル生成し 結果を統合 精度を向上させる 機械学習のアルゴリズム ■異なるサンプル、異なる重みの 複数の学習モデルを生成 ■各モデルの結果を統合・組合せにより 精度・汎用性を向上 結果の統合 ・分類: 多数決 ・回帰: 平均値 99
  • 100. 集団学習 とは 複数モデル生成し 結果を統合 精度を向上させる 機械学習のアルゴリズム ■異なるサンプル、異なる重みの 複数の学習モデルを生成 ■各モデルの結果を統合・組合せにより 精度・汎用性を向上 結果の統合 ・分類: 多数決 ・回帰: 平均値 100
  • 101. AGENDA ◆講師紹介 ◆Random Forestとは ◆決定木 ◆決定木とは ◆R言語での実行 ◆集団学習 ◆Random Forest ◆アルゴリズム ◆R言語での実行 ◆参考資料 ◆最後に
  • 102. AGENDA ◆講師紹介 ◆Random Forestとは ◆決定木 ◆決定木とは ◆R言語での実行 ◆集団学習 ◆Random Forest ◆アルゴリズム ◆R言語での実行 ◆参考資料 ◆最後に
  • 103. Random Forest 樹木モデルの集団学習による 高精度の分類・予測(回帰) 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B 予測対象 Result 1 Result 2 … Result B 分類・予測結果 103
  • 105. Random Forest アルゴリズム: 学習 Random Forest 105
  • 106. Random Forest アルゴリズム: 学習 ブートストラップ サンプリング 学習データから重複を許しランダムに B組のサンプル集合抽出 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest 106
  • 107. Random Forest アルゴリズム: 学習 ランダム抽出変数での決定木生成 各ノード展開で M個の説明変数からm個変数をランダム抽出 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Tree 1 107
  • 108. Random Forest アルゴリズム: 学習 全サンプル集合で 決定木を生成 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Tree 1 Tree 2 … Tree B 108
  • 109. Random Forest アルゴリズム: 学習 複数の木モデル = Forest (森) モデル 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Tree 1 Tree 2 … Tree B 109
  • 110. Random Forest アルゴリズム: 学習 複数の木モデル = Forest (森) モデル 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B 110
  • 112. Random Forest アルゴリズム 全木モデルで 分類・回帰予測の結果算出 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B 予測対象 Result 1 Result 2 … Result B 112
  • 113. Random Forest アルゴリズム 全木モデルの結果を統合する 分類:多数決、回帰予測:平均 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B 予測対象 Result 1 Result 2 … Result B 分類・予測結果 113
  • 114. Random Forest アルゴリズム 木モデルの集団学習による 高精度の分類・予測(回帰) 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B 予測対象 Result 1 Result 2 … Result B 分類・予測結果 114
  • 115. Random Forest : 長所 Random Forest の 主な長所 ・精度が高い ・説明変数が数百、数千でも効率的に作動 ・目的変数に対する説明変数の重要度を推定 ・欠損値を持つデータでも有効に動作 ・個体数がアンバランスでもエラーバランスが保たれる 115
  • 116. Random Forest : 長所 決定木、Support Vector Machine(SVM)、等 他分類器に比べ分類・予測精度が高い 例:11人の著者の10テーマ110編の文章分類 精度:高い (49個の特徴語。100回の学習・テストでの比較) Random Forest Bagging AdaBoost F1値平均 ニューラルネット 樹木モデル (量子ベクトル化) (CART) SVM K近傍法 カーネルK近傍法 引用元: 「ESTRELA」 2009年05月号 統計的テキスト解析(15) ~テキストの分類分析2~ http://mjin.doshisha.ac.jp/R/200905_70.pdf 116
  • 117. AGENDA ◆講師紹介 ◆Random Forestとは ◆決定木 ◆決定木とは ◆R言語での実行 ◆集団学習 ◆Random Forest ◆アルゴリズム ◆R言語での実行 ◆参考資料 ◆最後に
  • 118. Random Forest の実行 パッケージインストール # randomForest のインストール install.packages("randomForest") library(randomForest) 118
  • 119. Random Forest の実行 学習用・予測用データ作成 # iris(アヤメ)データを使用 data <- iris # 学習用データとテスト用データをランダムサンプリング ndata <- nrow(data)#データ行数 ridx <- sample(ndata, ndata*0.5) #50%のランダム抽出で学習・予測データ分割 data.learn <- data[ridx,] #学習用データ作成 data.test <- data[-ridx,] #予測用データ作成 サンプルデータ iris(アヤメ)データ:よい性質を持ち よく使用される (R環境で標準提供されている) 説明変数 目的変数 花葉(長さ・幅) 花びら(長さ・幅) 種類 Sepal.Length Sepal.Width Petal.Length Petal.Width Species 5.1 3.5 1.4 0.2 setosa 4.9 3.0 1.4 0.2 setosa 4.7 3.2 1.3 0.2 setosa 4.6 3.1 1.5 0.2 setosa 5.0 3.6 1.4 0.2 setosa Iris Sanguinea 119
  • 120. Random Forest の実行 Random Forest の生成 # Species(種類)を分類変数として Random Forest を生成 forest <- randomForest(Species~.,data = data.learn) 120
  • 121. Random Forest の実行 Random Forest の生成 # Species(種類)を分類変数として Random Forest を生成 forest <- randomForest(Species~.,data = data.learn) 関数 randomForest(formula, data = NULL, …, ..., subset, na.action=na.fail) 主要な引数 内容 formula モデルの形式 x, y 目的変数と説明変数 (formula 代わりに用いる) data, subset 用いるデータ na.action 欠損値の表記型の指定 ntree 生成する木の数 (デフォルトは 500) mtry 分岐に用いる変数の数 (デフォルト, 分類 √M, 回帰 M/3, M:変数総数) importance 変数の重要度出力 (デフォルトは FALSE) 121
  • 122. Random Forest の実行 生成されたForest を用いた 高精度の予測 # Forestを用いた予測の実行 pred.forest <- predict(forest, newdata = data.test, type = "class") # 解との比較 table(pred.forest, data.test[,5]) 122
  • 123. Random Forest の実行 生成されたForest を用いた 高精度の予測 # Forestを用いた予測の実行 pred.forest <- predict(forest, newdata = data.test, type = "class") # 解との比較 table(pred.forest, data.test[,5]) 予測結果: Random Forest 予測 pred.forest setosa versicolor virginica setosa 27 0 0 versicolor 0 28 0 virginica 0 0 20 分類間違いなし 123
  • 124. Random Forest の実行 生成されたForest を用いた 高精度の予測 # Forestを用いた予測の実行 pred.forest <- predict(forest, newdata = data.test, type = "class") # 解との比較 table(pred.forest, data.test[,5]) 予測結果: Random Forest 予測 ※比較参照 予測結果:分類木 (rpart) pred.forest setosa versicolor virginica pred.dt setosa versicolor virginica setosa 27 0 0 setosa 27 0 0 versicolor 0 28 0 versicolor 0 26 1 virginica 0 0 20 virginica 0 2 19 分類間違いなし 124
  • 125. 樹木モデルとの比較 きわどいところも 分類できている 予測結果: Random Forest 予測 ※比較参照 予測結果:分類木 (rpart) pred.forest setosa versicolor virginica pred.dt setosa versicolor virginica setosa 27 0 0 setosa 27 0 0 versicolor 0 28 0 versicolor 0 26 1 virginica 0 0 20 virginica 0 2 19 分類木のエラー箇所 virginica setosa virginica versicolor 125
  • 126. Random Forest の実行 重要度算出 各変数の目的変数に対する重要度 重要度 グラフ表示 #重要度 グラフ表示 varImpPlot(forest) #重要度 出力 Importance(forest) 重要度 出力 > importance(forest) MeanDecreaseGini Sepal.Length 4.791776 Sepal.Width 2.102875 Petal.Length 20.811569 Petal.Width 20.627166 126
  • 127.
  • 128. AGENDA ◆講師紹介 ◆Random Forestとは ◆決定木 ◆決定木とは ◆R言語での実行 ◆集団学習 ◆Random Forest ◆アルゴリズム ◆R言語での実行 ◆参考資料 ◆最後に
  • 129. 参考資料:R/CART/Random Forest Rによるデータサイエンス Rによる統計解析 ~データ解析の基礎から最新手法まで ~ ■CART: L. Breiman, J. H. Friedman, R. A. Olshen and. C. J. Stone: “Classification and Regression Trees.”, Wadsworth (1984) ■Random Forest: L. Breiman. Random forests. Machine Learning, 45, 5–32 (2001)
  • 130. AGENDA ◆講師紹介 ◆Random Forestとは ◆決定木 ◆決定木とは ◆R言語での実行 ◆集団学習 ◆Random Forest ◆アルゴリズム ◆R言語での実行 ◆参考資料 ◆最後に
  • 131. 最後に 蓄積されたデータを有効活用してきたい 131
  • 132. 最後に 蓄積されたデータを有効活用してきたい Google Group: http://groups.google.com/group/webmining-tokyo 132
  • 133. 最後に データマイニング+WEB勉強会 発表者を募集しています 連絡 Google Group: http://groups.google.com/group/webmining-tokyo Twitter : http://twitter.com/hamadakoichi 133
  • 134. 最後に 134
  • 135. 最後に 日本初 R言語の人材募集要項 http://www.dena.jp/recruit/sp2/career/guide09.html 135
  • 136. よりよい世界の実現 より蓄積されたデータを有効活用し 世界の未来をよりよいものにしていきたい データマイニング+WEB勉強会@東京 Google Group: http://groups.google.com/group/webmining-tokyo 136
  • 137. よりよい世界の実現 よりよい世界を実現したい 137
  • 138. よりよい世界の実現 よりよい世界を実現したい 一緒に実現する仲間を募集しています 大規模ソーシャルメディアのデータマイニング (2100万会員 1日20億アクション以上) (※2100万会員モバゲータウンはデータマイニングの宝の山/Tech総研 より抜粋) ・統計解析/データマイニング/機械学習/自然言語処理 ・大規模分散処理 R Hadoop/Pig/Hive/Zebra Mahout …etc ぜひご連絡下さい koichi.hamada@gmail.com 138
  • 140. AGENDA ◆講師紹介 ◆Random Forestとは ◆決定木 ◆決定木とは ◆R言語での実行 ◆集団学習 ◆Random Forest ◆アルゴリズム ◆R言語での実行 ◆参考資料 ◆最後に