Movatterモバイル変換


[0]ホーム

URL:


Koichi Hamada, profile picture
Uploaded byKoichi Hamada
289,986 views

「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京

「はじめてでもわかるRandomForest (ランダムフォレスト) 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京 濱田晃一 (hamadakoichi)

Related topics:

Embed presentation

第7回データマイニング+WEB勉強会@東京        2010/09/26      はじめてでもわかる Random Forest入門  Introduction to Random Forest  -集団学習による分類・予測-     hamadakoichi       濱田 晃一
AGENDA   ◆自己紹介   ◆Random Forestとは     ◆概要     ◆樹木モデル     ◆集団学習   ◆アルゴリズム   ◆R言語での実行   ◆Mahout:Random Forest   ◆参考資料   ◆最後に
AGENDA   ◆自己紹介   ◆Random Forestとは     ◆概要     ◆樹木モデル     ◆集団学習   ◆アルゴリズム   ◆R言語での実行   ◆Mahout:Random Forest   ◆参考資料   ◆最後に
hamadakoichi   濱田晃一http://iddy.jp/profile/hamadakoichi                                      4
自己紹介:hamadakoichi 濱田晃一                         5
自己紹介:hamadakoichi 濱田晃一データマイニング+WEB勉強会@東京              主催者です                         6
自己紹介: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          7
自己紹介:hamadakoichi 濱田晃一            文部大臣に褒められた   元 文部大臣・法務大臣      六法全書著者・元法学政治学研究科長      森山眞弓さん             菅野和夫さん                                    8
自己紹介:hamadakoichi 濱田晃一         Los Angelesでプロダンサーに褒められた ・HIP HOP/House ダンス歴13年 ・ダンス開始後 1年半でL.A.でプロダンサーに褒められる  Youtube Channel: http://www.youtube.com/hamadakoichi   9
自己紹介:hamadakoichi 濱田晃一          毎週末3時間ダンスコーチをしています           ■過去、東京と京都でも            ダンス部を創設。            コーチをしていました                          駒場物理ダンス部   京都大学基礎物理学研究所ダンス部                          部長兼コーチ     部長兼コーチ  現在: 毎週末 3時間ダンスコーチ  Youtube Channel: http://www.youtube.com/hamadakoichi   10
数理解析手法の実ビジネスへの適用            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",                                                                                                          11
数理解析手法の実ビジネスへの適用:活動例                         活動例                  活動の統一グラフモデルを構築・解析                        Unified graphical model of processes and resources                                                                                                 青字:割付モデル属性                                                                                                 [ ] : OptionalNode             ・priority(優先度)                                                       Edge                 ・duration(予定時間)                 [・earliest(再早開始日時) ]                                                      Process EdgeProcess          [・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の所有関係を表す                                                                                                                   12
数理解析手法の実ビジネスへの適用:活動例                                              一品一様の業務プロセスの                                            動的なプロセス制御数理体系を構築  全体生産リードタイム中央値を                                                                                                                                                                                                 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            0   0               0   0               0   0           0   0            0   0               0   0                                                                                                                                                                                                                                                              141.6h(5.9日)                                                                                                                                                                                                                                                                00 00                                            9:              9:               9:                  9:                  9:              9:               9:                  9:                  9:              9:               9:                  9:                  9:              9:                                   /   20          /   27           /   04              /   11              /   18          /   25           /   01              /   08              /   15          /   22           /   29              /   06              /   13          /   20                          /   09          /   09           /   10           /   10             /   10              /   10           /   11           /   11             /   11              /   11           /   11           /   12             /   12              /   12                       04              04               04               04                 04                  04               04               04                 04                  04               04               04                 04                  04                  20           20                  20               20              20                  20                  20               20              20                  20                  20               20              20                  20                                                                                                                                             週 集 計 開 始 日 時                                                                                                                                                                                                                                                                                                13
数理解析手法の実ビジネスへの適用:活動例                                    ビジネスとともに                                    学術分野でも貢献変動性から生じる動的な課題     ・リソースの競合 ・滞留 ・納期遅延                             …一品一様な業務プロセスを含む統計解析・制御数理モデル     ・統計的な有効変数算出     ・統計数理モデル化        -優先順位制御        -実行タイミング制御        -統計フィードバック        -適正リソース量算出     ・予測数理体系論文(体系の一部)M.Nakao, N. Kobayashi, K.Hamada, T.Totsuka, S.Yamada,“Decoupling Executions in Navigating Manufacturing Processes for Shortening Lead Time and Its Implementationto an Unmanned Machine Shop”,CIRP Annals - Manufacturing Technology Volume 56, Issue 1, Pages 171-174 (2007)                         14
参加者  自己紹介Time(1分以内ずつ:計30分程度)                  15
AGENDA   ◆自己紹介   ◆Random Forestとは     ◆概要     ◆樹木モデル     ◆集団学習   ◆アルゴリズム   ◆R言語での実行   ◆Mahout:Random Forest   ◆参考資料   ◆最後に
AGENDA   ◆自己紹介   ◆Random Forestとは     ◆概要     ◆樹木モデル     ◆集団学習   ◆アルゴリズム   ◆R言語での実行   ◆Mahout:Random Forest   ◆参考資料   ◆最後に
AGENDA   ◆自己紹介   ◆Random Forestとは     ◆概要     ◆樹木モデル     ◆集団学習   ◆アルゴリズム   ◆R言語での実行   ◆Mahout:Random Forest   ◆参考資料   ◆最後に
Random Forest とは                   集団学習により                             19
Random Forest とは                   集団学習により         高精度の分類・予測を実現する                             20
Random Forest とは                   集団学習により         高精度の分類・予測を実現する             機械学習アルゴリズム                             21
Random Forest とは                樹木モデルの集団学習により                 高精度の分類・予測を行う                学習用データ  Random      Sampling 1   Sampling 2   …   Sampling B   Forest            Forest                Tree 1      Tree 2      …     Tree B予測対象               Result 1     Result 2    …    Result B               分類・予測結果                                   22
Random Forest とは                樹木モデルの集団学習により                 高精度の分類・予測を行う                学習用データ  Random      Sampling 1   Sampling 2   …   Sampling B   Forest            Forest                Tree 1      Tree 2      …     Tree B予測対象               Result 1     Result 2    …    Result B               分類・予測結果                                   23
Random Forest とは                樹木モデルの集団学習により                 高精度の分類・予測を行う                学習用データ  Random      Sampling 1   Sampling 2   …   Sampling B   Forest            Forest                Tree 1      Tree 2      …     Tree B予測対象               Result 1     Result 2    …    Result B               分類・予測結果                                   24
AGENDA   ◆自己紹介   ◆Random Forestとは     ◆概要     ◆樹木モデル     ◆集団学習   ◆アルゴリズム   ◆R言語での実行   ◆Mahout:Random Forest   ◆参考資料   ◆最後に
樹木モデル とは                木構造の条件分岐で               分類・予測(回帰)を行う例: 植物の分類Iris(アヤメ)データ花葉と花びらの長さ・幅から種類の分類構造算出 説明変数                  目的変数花葉(長さ・幅)   花びら(長さ・幅)    種類                              26
樹木モデル とは                木構造の条件分岐で               分類・予測(回帰)を行う例: 植物の分類                      分類        花びらの長さIris(アヤメ)データ花葉と花びらの長さ・幅から                                       花びらの幅種類の分類構造算出 説明変数                  目的変数花葉(長さ・幅)   花びら(長さ・幅)    種類                              setosa                                                      virginica                                       versicolor                                                            27
樹木モデル とは                    木構造の条件分岐で                   分類・予測(回帰)を行う例: 植物の分類                                   分類        花びらの長さIris(アヤメ)データ花葉と花びらの長さ・幅から                                                         花びらの幅種類の分類構造算出                         virginica         setosa        setosa                                                                             virginica                 versicolor    virginica                                                    versicolor   virginica                                                                                   28
樹木モデル とは               木構造の条件分岐で              分類・予測(回帰)を行う例: ブレーキ後 停車距離 予測carsデータ車速度とブレーキ後の停車距離の関係構造算出  説明変数    目的変数          ブレーキ後の  車の速度          停車までの距離                             29
樹木モデル とは               木構造の条件分岐で              分類・予測(回帰)を行う例: ブレーキ後 停車距離 予測    回帰(予測)   スピードcarsデータ車速度とブレーキ後の停車距離の関係構造算出  説明変数    目的変数          ブレーキ後の  車の速度          停車までの距離                     ブレーキ後の停車距離                                    30
樹木モデル とは             木構造の条件分岐で            分類・予測(回帰)を行う例: ブレーキ後 停車距離 予測    回帰(予測)   スピード(speed)carsデータ車速度とブレーキ後の停車距離の関係構造算出                     ブレーキ後の停車距離                                           31
樹木モデル: 分岐基準      条件ノード A を条件ノードALとARに分けるとき        以下のΔIを最大化する分割を行う                Classification And Regression Trees (CART)                            (Breiman et al, 1984)分類木      Entropy      GINI係数      ※             :条件ノード A で クラス k をとる確率回帰木      尤離度(deviance)      ※          :条件ノード A での目標変数 t の平均値                      32
Random Forest とは                樹木モデルの集団学習により                 高精度の分類・予測を行う                学習用データ  Random      Sampling 1   Sampling 2   …   Sampling B   Forest            Forest                Tree 1      Tree 2      …     Tree B予測対象               Result 1     Result 2    …    Result B               分類・予測結果                                   33
Random Forest とは                樹木モデルの集団学習により                 高精度の分類・予測を行う                学習用データ  Random      Sampling 1   Sampling 2   …   Sampling B   Forest            Forest                Tree 1      Tree 2      …     Tree B予測対象               Result 1     Result 2    …    Result B               分類・予測結果                                   34
AGENDA   ◆自己紹介   ◆Random Forestとは     ◆概要     ◆樹木モデル     ◆集団学習   ◆アルゴリズム   ◆R言語での実行   ◆Mahout:Random Forest   ◆参考資料   ◆最後に
集団学習 とは          36
集団学習 とは       複数モデル生成し 結果を統合    精度を向上させる 機械学習のアルゴリズム                           37
集団学習 とは       複数モデル生成し 結果を統合    精度を向上させる 機械学習のアルゴリズム     ■異なるサンプル、異なる重みの      複数の学習モデルを生成                           38
集団学習 とは       複数モデル生成し 結果を統合    精度を向上させる 機械学習のアルゴリズム     ■異なるサンプル、異なる重みの      複数の学習モデルを生成     ■各モデルの結果を統合・組合せにより      精度・汎用性を向上                           39
集団学習 とは       複数モデル生成し 結果を統合    精度を向上させる 機械学習のアルゴリズム     ■異なるサンプル、異なる重みの      複数の学習モデルを生成     ■各モデルの結果を統合・組合せにより      精度・汎用性を向上          結果の統合   ・分類: 多数決                  ・回帰: 平均値                             40
集団学習 とは       複数モデル生成し 結果を統合    精度を向上させる 機械学習のアルゴリズム     ■異なるサンプル、異なる重みの      複数の学習モデルを生成     ■各モデルの結果を統合・組合せにより      精度・汎用性を向上          結果の統合   ・分類: 多数決                  ・回帰: 平均値                             41
AGENDA   ◆自己紹介   ◆Random Forestとは     ◆概要     ◆樹木モデル     ◆集団学習   ◆アルゴリズム   ◆R言語での実行   ◆Mahout:Random Forest   ◆参考資料   ◆最後に
Random Forest                Tree Modelの集団学習による                 高精度の分類・予測(回帰)                学習用データ  Random      Sampling 1   Sampling 2   …   Sampling B   Forest            Forest                Tree 1      Tree 2      …     Tree B予測対象               Result 1     Result 2    …    Result B               分類・予測結果                                   43
学習と予測学習        44
Random Forest アルゴリズム: 学習  Random   Forest                           45
Random Forest アルゴリズム: 学習               ブートストラップ サンプリング  学習データから重複を許しランダムに B組のサンプル集合抽出              学習用データ  Random    Sampling 1   Sampling 2   …   Sampling B   Forest                                                       46
Random Forest アルゴリズム: 学習            ランダム抽出変数での樹木モデル生成   各ノード展開で M個の説明変数からm個変数をランダム抽出               学習用データ  Random     Sampling 1   Sampling 2   …   Sampling B   Forest               Tree 1                                                        47
Random Forest アルゴリズム: 学習                         全サンプル集合で                         樹木モデルを生成              学習用データ  Random    Sampling 1   Sampling 2   …   Sampling B   Forest              Tree 1      Tree 2      …     Tree B                                                       48
Random Forest アルゴリズム: 学習                        複数の樹木モデル                       = Forest (森) モデル              学習用データ  Random    Sampling 1   Sampling 2   …   Sampling B   Forest              Tree 1      Tree 2      …     Tree B                                                       49
Random Forest アルゴリズム: 学習                          複数の樹木モデル                         = Forest (森) モデル                学習用データ  Random      Sampling 1   Sampling 2   …   Sampling B   Forest            Forest                Tree 1      Tree 2      …     Tree B                                                         50
学習と予測予測        51
Random Forest アルゴリズム                     全樹木モデルで                  分類・回帰予測の結果算出                学習用データ  Random      Sampling 1   Sampling 2   …   Sampling B   Forest            Forest                Tree 1      Tree 2      …     Tree B予測対象               Result 1     Result 2    …    Result B                                                         52
Random Forest アルゴリズム              全Tree Model の結果を統合する                     分類:多数決、回帰予測:平均                学習用データ  Random      Sampling 1   Sampling 2   …   Sampling B   Forest            Forest                Tree 1      Tree 2      …     Tree B予測対象               Result 1     Result 2    …    Result B               分類・予測結果                                   53
Random Forest アルゴリズム                Tree Modelの集団学習による                 高精度の分類・予測(回帰)                学習用データ  Random      Sampling 1   Sampling 2   …   Sampling B   Forest            Forest                Tree 1      Tree 2      …     Tree B予測対象               Result 1     Result 2    …    Result B               分類・予測結果                                   54
Random Forest                Random Forest の                    主な特長   ・精度が高い   ・説明変数が数百、数千でも効率的に作動   ・目的変数に対する説明変数の重要度を推定   ・欠損値を持つデータでも有効に動作   ・個体数がアンバランスでもエラーバランスが保たれる                                  55
AGENDA   ◆自己紹介   ◆Random Forestとは     ◆概要     ◆樹木モデル     ◆集団学習   ◆アルゴリズム   ◆R言語での実行   ◆Mahout:Random Forest   ◆参考資料   ◆最後に
Random Forest の実行                       パッケージインストール # randomForest のインストール install.packages("randomForest") library(randomForest)                                     57
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                                                                  58
Random Forest の実行                     Random Forest の生成 # Species(種類)を分類変数として Random Forest を生成 forest <- randomForest(Species~.,data = data.learn)                                                       59
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)                                                                         60
Random Forest の実行                     生成されたForest を用いた                        高精度の予測 # Forestを用いた予測の実行 pred.forest <- predict(forest, newdata = data.test, type = "class") # 解との比較 table(pred.forest, data.test[,5])                                                                       61
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                    分類間違いなし                                                                       62
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                    分類間違いなし                                                                                       63
樹木モデルとの比較                                    きわどいところも                                    分類できている 予測結果: 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                                                                                       64
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                                             65
AGENDA   ◆自己紹介   ◆Random Forestとは     ◆概要     ◆樹木モデル     ◆集団学習   ◆アルゴリズム   ◆R言語での実行   ◆Mahout:Random Forest   ◆参考資料   ◆最後に
Mahoutとは         Open Sourceでスケーラブルな       機械学習・データマイニングのライブラリ     ・Apache プロジェクト     ・機械学習・データマイニングのライブラリ     ・Java オープンソース     ・Hadoop(大規模 分散処理基盤)上で動作      (Hadoop:象, Mahout: 象使い)             http://mahout.apache.org                                        67
Mahoutとは         Open Sourceでスケーラブルな       機械学習・データマイニングのライブラリ     ・Apache プロジェクト     ・機械学習・データマイニングのライブラリ     ・Java オープンソース     ・Hadoop(大規模 分散処理基盤)上で動作      (Hadoop:象, Mahout: 象使い)             http://mahout.apache.org                                        68
Mahoutとは         Open Sourceでスケーラブルな       機械学習・データマイニングのライブラリ     ・Apache プロジェクト     ・機械学習・データマイニングのライブラリ     ・Java オープンソース     ・Hadoop(大規模 分散処理基盤)上で動作      (Hadoop:象, Mahout: 象使い)             http://mahout.apache.org                                        69
Mahoutとは         Open Sourceでスケーラブルな       機械学習・データマイニングのライブラリ     ・Apache プロジェクト     ・機械学習・データマイニングのライブラリ     ・Java オープンソース     ・Hadoop(大規模 分散処理基盤)上で動作      (Hadoop:象, Mahout: 象使い)             http://mahout.apache.org                                        70
Mahoutとは         Open Sourceでスケーラブルな       機械学習・データマイニングのライブラリ     ・Apache プロジェクト     ・機械学習・データマイニングのライブラリ     ・Java オープンソース     ・Hadoop(大規模 分散処理基盤)上で動作      (Hadoop:象, Mahout: 象使い)             http://mahout.apache.org                                        71
Mahoutとは         Open Sourceでスケーラブルな       機械学習・データマイニングのライブラリ     ・Apache プロジェクト     ・機械学習・データマイニングのライブラリ     ・Java オープンソース     ・Hadoop(大規模 分散処理基盤)上で動作     ・Hadoop:象, Mahout: 象使い           http://mahout.apache.org                                      72
Mahoutとは         Open Sourceでスケーラブルな       機械学習・データマイニングのライブラリ     ・Apache プロジェクト     ・機械学習・データマイニングのライブラリ     ・Java オープンソース     ・Hadoop(大規模 分散処理基盤)上で動作     ・Hadoop:象, Mahout: 象使い           http://mahout.apache.org                                      73
Mahoutとは           Open Sourceでスケーラブルな         機械学習・データマイニングのライブラリ                               Applications                                                           Examples                Freq.    Genetic     Pattern     Classification    Clustering    Recommenders                Mining                            Math     Utilities                                     Collections    Apache                            Vectors/Matrices/     Lucene/Vectorizer                             (primitives)   Hadoop                            SVD      http://cwiki.apache.org/confluence/display/MAHOUT/Algorithms      http://www.slideshare.net/gsingers/intro-to-apache-mahout            74
Mahout : Random Forest   mahout.df(Decision Forest) Packageで実装されている                                                75
Mahout : Random Forest   mahout.df(Decision Forest) Packageで実装されている 主要クラス   Decision Tree構築:        org.apache.mahout.df.builder.TreeBuilder      Interface            内容      TreeBuilder          樹木モデル(Decision Tree)構築のInterface      Class                内容      DefaultTreeBuilder   樹木モデル(Decision Tree)構築の実装クラス   Forest予測:               org.apache.mahout.df.callback      Class                内容      ForestPredictions    Decision Forestの予測結果を算出する   Decision Forest構築: org.apache.mahout.df.mapreduce      Class                内容      Builder              Decision Forestを構築する   Decision Forest:        org.apache.mahout.df.DecisionForest      Interface            内容      DecisionForest       Decision Forest (Decision Tree 集合) 表現・データ取得   76
AGENDA   ◆自己紹介   ◆Random Forestとは     ◆概要     ◆樹木モデル     ◆集団学習   ◆アルゴリズム   ◆R言語での実行   ◆Mahout:Random Forest   ◆参考資料   ◆最後に
参考資料:R / Random Forest                          Rによるデータサイエンス                          ~データ解析の基礎から最新手法まで ~■CART元論文:Breiman, L. , et.al, "Classification and Regression Trees", Wadsworth (1984)■Random Forest元論文:Breiman, L., et.al, “Random Forests”, Machine Learning (2001)
参考資料:Mahout/Hadoop/Recommendationhttp://www.slideshare.net/hamadakoichi/mahoutweb http://www.slideshare.net/karubi/web-mining-0620http://www.slideshare.net/yanaoki/hadoop-4683332 http://www.slideshare.net/hamadakoichi/ss-4552939
AGENDA   ◆自己紹介   ◆Random Forestとは     ◆概要     ◆樹木モデル     ◆集団学習   ◆アルゴリズム   ◆R言語での実行   ◆Mahout:Random Forest   ◆参考資料   ◆最後に
最後に      蓄積されたデータを有効活用してきたい                           81
最後に      蓄積されたデータを有効活用してきたい  Google Group: http://groups.google.com/group/webmining-tokyo                                                                 82
最後に               データマイニング+WEB勉強会                発表者を募集しています 連絡  Google Group: http://groups.google.com/group/webmining-tokyo  Twitter     : http://twitter.com/hamadakoichi                                                                 83
ご清聴ありがとうございました                 84
AGENDA   ◆自己紹介   ◆Random Forestとは     ◆概要     ◆樹木モデル     ◆集団学習   ◆アルゴリズム   ◆R言語での実行   ◆Mahout:Random Forest   ◆参考資料   ◆最後に

Recommended

PDF
計量経済学と 機械学習の交差点入り口 (公開用)
PDF
[DL輪読会]Scalable Training of Inference Networks for Gaussian-Process Models
PDF
合成変量とアンサンブル:回帰森と加法モデルの要点
PDF
統計的因果推論への招待 -因果構造探索を中心に-
PPTX
ベイズ統計学の概論的紹介
PDF
ガウス過程回帰の導出 ( GPR : Gaussian Process Regression )
PPTX
社会心理学者のための時系列分析入門_小森
PPTX
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
PDF
MCMCによるベイズ因子分析法について
PDF
第4回DARM勉強会 (構造方程式モデリング)
PDF
科学と機械学習のあいだ:変量の設計・変換・選択・交互作用・線形性
PDF
幾何を使った統計のはなし
PDF
負の二項分布について
PDF
階層ベイズと自由エネルギー
PDF
2 3.GLMの基礎
PDF
coordinate descent 法について
PPTX
ようやく分かった!最尤推定とベイズ推定
PDF
PCAの最終形態GPLVMの解説
PDF
階層ベイズとWAIC
PPTX
StanとRでベイズ統計モデリングに関する読書会(Osaka.stan) 第四章
PDF
機会学習ハッカソン:ランダムフォレスト
PDF
星野「調査観察データの統計科学」第1&2章
PDF
階層モデルの分散パラメータの事前分布について
 
PDF
星野「調査観察データの統計科学」第3章
PPTX
変分ベイズ法の説明
PDF
Stanでガウス過程
PPTX
心理学者のためのGlmm・階層ベイズ
PDF
臨床疫学研究における傾向スコア分析の使い⽅ 〜観察研究における治療効果研究〜
PDF
ランダムフォレスト
KEY
アンサンブル学習

More Related Content

PDF
計量経済学と 機械学習の交差点入り口 (公開用)
PDF
[DL輪読会]Scalable Training of Inference Networks for Gaussian-Process Models
PDF
合成変量とアンサンブル:回帰森と加法モデルの要点
PDF
統計的因果推論への招待 -因果構造探索を中心に-
PPTX
ベイズ統計学の概論的紹介
PDF
ガウス過程回帰の導出 ( GPR : Gaussian Process Regression )
PPTX
社会心理学者のための時系列分析入門_小森
PPTX
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)
計量経済学と 機械学習の交差点入り口 (公開用)
[DL輪読会]Scalable Training of Inference Networks for Gaussian-Process Models
合成変量とアンサンブル:回帰森と加法モデルの要点
統計的因果推論への招待 -因果構造探索を中心に-
ベイズ統計学の概論的紹介
ガウス過程回帰の導出 ( GPR : Gaussian Process Regression )
社会心理学者のための時系列分析入門_小森
マルコフ連鎖モンテカルロ法 (2/3はベイズ推定の話)

What's hot

PDF
MCMCによるベイズ因子分析法について
PDF
第4回DARM勉強会 (構造方程式モデリング)
PDF
科学と機械学習のあいだ:変量の設計・変換・選択・交互作用・線形性
PDF
幾何を使った統計のはなし
PDF
負の二項分布について
PDF
階層ベイズと自由エネルギー
PDF
2 3.GLMの基礎
PDF
coordinate descent 法について
PPTX
ようやく分かった!最尤推定とベイズ推定
PDF
PCAの最終形態GPLVMの解説
PDF
階層ベイズとWAIC
PPTX
StanとRでベイズ統計モデリングに関する読書会(Osaka.stan) 第四章
PDF
機会学習ハッカソン:ランダムフォレスト
PDF
星野「調査観察データの統計科学」第1&2章
PDF
階層モデルの分散パラメータの事前分布について
 
PDF
星野「調査観察データの統計科学」第3章
PPTX
変分ベイズ法の説明
PDF
Stanでガウス過程
PPTX
心理学者のためのGlmm・階層ベイズ
PDF
臨床疫学研究における傾向スコア分析の使い⽅ 〜観察研究における治療効果研究〜
MCMCによるベイズ因子分析法について
第4回DARM勉強会 (構造方程式モデリング)
科学と機械学習のあいだ:変量の設計・変換・選択・交互作用・線形性
幾何を使った統計のはなし
負の二項分布について
階層ベイズと自由エネルギー
2 3.GLMの基礎
coordinate descent 法について
ようやく分かった!最尤推定とベイズ推定
PCAの最終形態GPLVMの解説
階層ベイズとWAIC
StanとRでベイズ統計モデリングに関する読書会(Osaka.stan) 第四章
機会学習ハッカソン:ランダムフォレスト
星野「調査観察データの統計科学」第1&2章
階層モデルの分散パラメータの事前分布について
 
星野「調査観察データの統計科学」第3章
変分ベイズ法の説明
Stanでガウス過程
心理学者のためのGlmm・階層ベイズ
臨床疫学研究における傾向スコア分析の使い⽅ 〜観察研究における治療効果研究〜

Viewers also liked

PDF
ランダムフォレスト
KEY
アンサンブル学習
PDF
機械学習によるデータ分析まわりのお話
PDF
パターン認識 第10章 決定木
PDF
機械学習チュートリアル@Jubatus Casual Talks
PDF
バンディットアルゴリズム入門と実践
PDF
決定木学習
PDF
Random Forestsとその応用
PDF
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
PDF
一般向けのDeep Learning
PPTX
Random Forest による分類
PDF
ロジスティック回帰の考え方・使い方 - TokyoR #33
PDF
scikit-learnを用いた機械学習チュートリアル
PPTX
SVMについて
PDF
トピックモデルを用いた 潜在ファッション嗜好の推定
PPTX
Pythonとdeep learningで手書き文字認識
PPTX
Simple perceptron by TJO
PDF
Pythonで機械学習入門以前
PDF
はじめてでもわかるベイズ分類器 -基礎からMahout実装まで-
PDF
今日から使える! みんなのクラスタリング超入門
ランダムフォレスト
アンサンブル学習
機械学習によるデータ分析まわりのお話
パターン認識 第10章 決定木
機械学習チュートリアル@Jubatus Casual Talks
バンディットアルゴリズム入門と実践
決定木学習
Random Forestsとその応用
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
一般向けのDeep Learning
Random Forest による分類
ロジスティック回帰の考え方・使い方 - TokyoR #33
scikit-learnを用いた機械学習チュートリアル
SVMについて
トピックモデルを用いた 潜在ファッション嗜好の推定
Pythonとdeep learningで手書き文字認識
Simple perceptron by TJO
Pythonで機械学習入門以前
はじめてでもわかるベイズ分類器 -基礎からMahout実装まで-
今日から使える! みんなのクラスタリング超入門

Similar to 「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京

PDF
ベイジアンネットとレコメンデーション -第5回データマイニング+WEB勉強会@東京
PDF
「R言語による Random Forest 徹底入門 -集団学習による分類・予測-」 - #TokyoR #11
PDF
R言語による アソシエーション分析-組合せ・事象の規則を解明する-(第5回R勉強会@東京)
PDF
Introduction to Mahout Clustering - #TokyoWebmining #6
PDF
Mahout Canopy Clustering - #TokyoWebmining 9
PDF
Mahout JP - #TokyoWebmining 11th #MahoutJP
PDF
Large Scale Data Mining of the Mobage Service - #PRMU 2011 #Mahout #Hadoop
PDF
ソーシャルウェブ と レコメンデーション -第4回データマイニング+WEB勉強会@東京
PDF
『モバゲーの大規模データマイニング基盤におけるHadoop活用』-Hadoop Conference Japan 2011- #hcj2011
PDF
Modeling in the Agile Age and casual astah models
PDF
アジャイル開発の始め方
PDF
[R勉強会][データマイニング] プロセス・リソース・グラフと数理統計解析
PDF
Using Mind Maping And UML Effectively in Software Development
PDF
Project Facilitation at Kanazawa.rb
PDF
コンチェルト CCPM工程表入門
PDF
MapReduce解説
PDF
"Mahout Recommendation" - #TokyoWebmining 14th
PDF
ソーシャルデザインパターン -評判と情報収集-
PDF
Agile 459 | 11/17 資料
PDF
【Agile Forum in Gifu】 Visual Studio 2010 でみる、アジャイル開発における開発支援ツールの活用
ベイジアンネットとレコメンデーション -第5回データマイニング+WEB勉強会@東京
「R言語による Random Forest 徹底入門 -集団学習による分類・予測-」 - #TokyoR #11
R言語による アソシエーション分析-組合せ・事象の規則を解明する-(第5回R勉強会@東京)
Introduction to Mahout Clustering - #TokyoWebmining #6
Mahout Canopy Clustering - #TokyoWebmining 9
Mahout JP - #TokyoWebmining 11th #MahoutJP
Large Scale Data Mining of the Mobage Service - #PRMU 2011 #Mahout #Hadoop
ソーシャルウェブ と レコメンデーション -第4回データマイニング+WEB勉強会@東京
『モバゲーの大規模データマイニング基盤におけるHadoop活用』-Hadoop Conference Japan 2011- #hcj2011
Modeling in the Agile Age and casual astah models
アジャイル開発の始め方
[R勉強会][データマイニング] プロセス・リソース・グラフと数理統計解析
Using Mind Maping And UML Effectively in Software Development
Project Facilitation at Kanazawa.rb
コンチェルト CCPM工程表入門
MapReduce解説
"Mahout Recommendation" - #TokyoWebmining 14th
ソーシャルデザインパターン -評判と情報収集-
Agile 459 | 11/17 資料
【Agile Forum in Gifu】 Visual Studio 2010 でみる、アジャイル開発における開発支援ツールの活用

More from Koichi Hamada

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

「はじめてでもわかる RandomForest 入門-集団学習による分類・予測 -」 -第7回データマイニング+WEB勉強会@東京

  • 1.
    第7回データマイニング+WEB勉強会@東京 2010/09/26 はじめてでもわかる Random Forest入門 Introduction to Random Forest -集団学習による分類・予測- hamadakoichi 濱田 晃一
  • 2.
    AGENDA◆自己紹介 ◆Random Forestとは ◆概要 ◆樹木モデル ◆集団学習 ◆アルゴリズム ◆R言語での実行 ◆Mahout:Random Forest ◆参考資料 ◆最後に
  • 3.
    AGENDA◆自己紹介 ◆Random Forestとは ◆概要 ◆樹木モデル ◆集団学習 ◆アルゴリズム ◆R言語での実行 ◆Mahout:Random Forest ◆参考資料 ◆最後に
  • 4.
    hamadakoichi濱田晃一http://iddy.jp/profile/hamadakoichi 4
  • 5.
  • 6.
  • 7.
    自己紹介: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 7
  • 8.
    自己紹介:hamadakoichi 濱田晃一 文部大臣に褒められた 元 文部大臣・法務大臣 六法全書著者・元法学政治学研究科長 森山眞弓さん 菅野和夫さん 8
  • 9.
    自己紹介:hamadakoichi 濱田晃一 Los Angelesでプロダンサーに褒められた ・HIP HOP/House ダンス歴13年 ・ダンス開始後 1年半でL.A.でプロダンサーに褒められる Youtube Channel: http://www.youtube.com/hamadakoichi 9
  • 10.
    自己紹介:hamadakoichi 濱田晃一 毎週末3時間ダンスコーチをしています ■過去、東京と京都でも ダンス部を創設。 コーチをしていました 駒場物理ダンス部 京都大学基礎物理学研究所ダンス部 部長兼コーチ 部長兼コーチ 現在: 毎週末 3時間ダンスコーチ Youtube Channel: http://www.youtube.com/hamadakoichi 10
  • 11.
    数理解析手法の実ビジネスへの適用 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", 11
  • 12.
    数理解析手法の実ビジネスへの適用:活動例 活動例 活動の統一グラフモデルを構築・解析 Unified graphical model of processes and resources 青字:割付モデル属性 [ ] : OptionalNode ・priority(優先度) Edge ・duration(予定時間) [・earliest(再早開始日時) ] Process EdgeProcess [・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の所有関係を表す 12
  • 13.
    数理解析手法の実ビジネスへの適用:活動例 一品一様の業務プロセスの 動的なプロセス制御数理体系を構築 全体生産リードタイム中央値を 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 0 0 0 0 0 0 0 0 0 0 0 0 141.6h(5.9日) 00 00 9: 9: 9: 9: 9: 9: 9: 9: 9: 9: 9: 9: 9: 9: / 20 / 27 / 04 / 11 / 18 / 25 / 01 / 08 / 15 / 22 / 29 / 06 / 13 / 20 / 09 / 09 / 10 / 10 / 10 / 10 / 11 / 11 / 11 / 11 / 11 / 12 / 12 / 12 04 04 04 04 04 04 04 04 04 04 04 04 04 04 20 20 20 20 20 20 20 20 20 20 20 20 20 20 週 集 計 開 始 日 時 13
  • 14.
    数理解析手法の実ビジネスへの適用:活動例 ビジネスとともに 学術分野でも貢献変動性から生じる動的な課題 ・リソースの競合 ・滞留 ・納期遅延 …一品一様な業務プロセスを含む統計解析・制御数理モデル ・統計的な有効変数算出 ・統計数理モデル化 -優先順位制御 -実行タイミング制御 -統計フィードバック -適正リソース量算出 ・予測数理体系論文(体系の一部)M.Nakao, N. Kobayashi, K.Hamada, T.Totsuka, S.Yamada,“Decoupling Executions in Navigating Manufacturing Processes for Shortening Lead Time and Its Implementationto an Unmanned Machine Shop”,CIRP Annals - Manufacturing Technology Volume 56, Issue 1, Pages 171-174 (2007) 14
  • 15.
  • 16.
    AGENDA◆自己紹介 ◆Random Forestとは ◆概要 ◆樹木モデル ◆集団学習 ◆アルゴリズム ◆R言語での実行 ◆Mahout:Random Forest ◆参考資料 ◆最後に
  • 17.
    AGENDA◆自己紹介 ◆Random Forestとは ◆概要 ◆樹木モデル ◆集団学習 ◆アルゴリズム ◆R言語での実行 ◆Mahout:Random Forest ◆参考資料 ◆最後に
  • 18.
    AGENDA◆自己紹介 ◆Random Forestとは ◆概要 ◆樹木モデル ◆集団学習 ◆アルゴリズム ◆R言語での実行 ◆Mahout:Random Forest ◆参考資料 ◆最後に
  • 19.
    Random Forest とは 集団学習により 19
  • 20.
    Random Forest とは 集団学習により 高精度の分類・予測を実現する 20
  • 21.
    Random Forest とは 集団学習により 高精度の分類・予測を実現する 機械学習アルゴリズム 21
  • 22.
    Random Forest とは 樹木モデルの集団学習により 高精度の分類・予測を行う 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B予測対象 Result 1 Result 2 … Result B 分類・予測結果 22
  • 23.
    Random Forest とは 樹木モデルの集団学習により 高精度の分類・予測を行う 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B予測対象 Result 1 Result 2 … Result B 分類・予測結果 23
  • 24.
    Random Forest とは 樹木モデルの集団学習により 高精度の分類・予測を行う 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B予測対象 Result 1 Result 2 … Result B 分類・予測結果 24
  • 25.
    AGENDA◆自己紹介 ◆Random Forestとは ◆概要 ◆樹木モデル ◆集団学習 ◆アルゴリズム ◆R言語での実行 ◆Mahout:Random Forest ◆参考資料 ◆最後に
  • 26.
    樹木モデル とは 木構造の条件分岐で 分類・予測(回帰)を行う例: 植物の分類Iris(アヤメ)データ花葉と花びらの長さ・幅から種類の分類構造算出 説明変数 目的変数花葉(長さ・幅) 花びら(長さ・幅) 種類 26
  • 27.
    樹木モデル とは 木構造の条件分岐で 分類・予測(回帰)を行う例: 植物の分類 分類 花びらの長さIris(アヤメ)データ花葉と花びらの長さ・幅から 花びらの幅種類の分類構造算出 説明変数 目的変数花葉(長さ・幅) 花びら(長さ・幅) 種類 setosa virginica versicolor 27
  • 28.
    樹木モデル とは 木構造の条件分岐で 分類・予測(回帰)を行う例: 植物の分類 分類 花びらの長さIris(アヤメ)データ花葉と花びらの長さ・幅から 花びらの幅種類の分類構造算出 virginica setosa setosa virginica versicolor virginica versicolor virginica 28
  • 29.
    樹木モデル とは 木構造の条件分岐で 分類・予測(回帰)を行う例: ブレーキ後 停車距離 予測carsデータ車速度とブレーキ後の停車距離の関係構造算出 説明変数 目的変数 ブレーキ後の 車の速度 停車までの距離 29
  • 30.
    樹木モデル とは 木構造の条件分岐で 分類・予測(回帰)を行う例: ブレーキ後 停車距離 予測 回帰(予測) スピードcarsデータ車速度とブレーキ後の停車距離の関係構造算出 説明変数 目的変数 ブレーキ後の 車の速度 停車までの距離 ブレーキ後の停車距離 30
  • 31.
    樹木モデル とは 木構造の条件分岐で 分類・予測(回帰)を行う例: ブレーキ後 停車距離 予測 回帰(予測) スピード(speed)carsデータ車速度とブレーキ後の停車距離の関係構造算出 ブレーキ後の停車距離 31
  • 32.
    樹木モデル: 分岐基準 条件ノード A を条件ノードALとARに分けるとき 以下のΔIを最大化する分割を行う Classification And Regression Trees (CART) (Breiman et al, 1984)分類木 Entropy GINI係数 ※ :条件ノード A で クラス k をとる確率回帰木 尤離度(deviance) ※ :条件ノード A での目標変数 t の平均値 32
  • 33.
    Random Forest とは 樹木モデルの集団学習により 高精度の分類・予測を行う 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B予測対象 Result 1 Result 2 … Result B 分類・予測結果 33
  • 34.
    Random Forest とは 樹木モデルの集団学習により 高精度の分類・予測を行う 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B予測対象 Result 1 Result 2 … Result B 分類・予測結果 34
  • 35.
    AGENDA◆自己紹介 ◆Random Forestとは ◆概要 ◆樹木モデル ◆集団学習 ◆アルゴリズム ◆R言語での実行 ◆Mahout:Random Forest ◆参考資料 ◆最後に
  • 36.
  • 37.
    集団学習 とは 複数モデル生成し 結果を統合 精度を向上させる 機械学習のアルゴリズム 37
  • 38.
    集団学習 とは 複数モデル生成し 結果を統合 精度を向上させる 機械学習のアルゴリズム ■異なるサンプル、異なる重みの 複数の学習モデルを生成 38
  • 39.
    集団学習 とは 複数モデル生成し 結果を統合 精度を向上させる 機械学習のアルゴリズム ■異なるサンプル、異なる重みの 複数の学習モデルを生成 ■各モデルの結果を統合・組合せにより 精度・汎用性を向上 39
  • 40.
    集団学習 とは 複数モデル生成し 結果を統合 精度を向上させる 機械学習のアルゴリズム ■異なるサンプル、異なる重みの 複数の学習モデルを生成 ■各モデルの結果を統合・組合せにより 精度・汎用性を向上 結果の統合 ・分類: 多数決 ・回帰: 平均値 40
  • 41.
    集団学習 とは 複数モデル生成し 結果を統合 精度を向上させる 機械学習のアルゴリズム ■異なるサンプル、異なる重みの 複数の学習モデルを生成 ■各モデルの結果を統合・組合せにより 精度・汎用性を向上 結果の統合 ・分類: 多数決 ・回帰: 平均値 41
  • 42.
    AGENDA◆自己紹介 ◆Random Forestとは ◆概要 ◆樹木モデル ◆集団学習 ◆アルゴリズム ◆R言語での実行 ◆Mahout:Random Forest ◆参考資料 ◆最後に
  • 43.
    Random Forest Tree Modelの集団学習による 高精度の分類・予測(回帰) 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B予測対象 Result 1 Result 2 … Result B 分類・予測結果 43
  • 44.
  • 45.
  • 46.
    Random Forest アルゴリズム:学習 ブートストラップ サンプリング 学習データから重複を許しランダムに B組のサンプル集合抽出 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest 46
  • 47.
    Random Forest アルゴリズム:学習 ランダム抽出変数での樹木モデル生成 各ノード展開で M個の説明変数からm個変数をランダム抽出 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Tree 1 47
  • 48.
    Random Forest アルゴリズム:学習 全サンプル集合で 樹木モデルを生成 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Tree 1 Tree 2 … Tree B 48
  • 49.
    Random Forest アルゴリズム:学習 複数の樹木モデル = Forest (森) モデル 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Tree 1 Tree 2 … Tree B 49
  • 50.
    Random Forest アルゴリズム:学習 複数の樹木モデル = Forest (森) モデル 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B 50
  • 51.
  • 52.
    Random Forest アルゴリズム 全樹木モデルで 分類・回帰予測の結果算出 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B予測対象 Result 1 Result 2 … Result B 52
  • 53.
    Random Forest アルゴリズム 全Tree Model の結果を統合する 分類:多数決、回帰予測:平均 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B予測対象 Result 1 Result 2 … Result B 分類・予測結果 53
  • 54.
    Random Forest アルゴリズム Tree Modelの集団学習による 高精度の分類・予測(回帰) 学習用データ Random Sampling 1 Sampling 2 … Sampling B Forest Forest Tree 1 Tree 2 … Tree B予測対象 Result 1 Result 2 … Result B 分類・予測結果 54
  • 55.
    Random Forest Random Forest の 主な特長 ・精度が高い ・説明変数が数百、数千でも効率的に作動 ・目的変数に対する説明変数の重要度を推定 ・欠損値を持つデータでも有効に動作 ・個体数がアンバランスでもエラーバランスが保たれる 55
  • 56.
    AGENDA◆自己紹介 ◆Random Forestとは ◆概要 ◆樹木モデル ◆集団学習 ◆アルゴリズム ◆R言語での実行 ◆Mahout:Random Forest ◆参考資料 ◆最後に
  • 57.
    Random Forest の実行 パッケージインストール # randomForest のインストール install.packages("randomForest") library(randomForest) 57
  • 58.
    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 58
  • 59.
    Random Forest の実行 Random Forest の生成 # Species(種類)を分類変数として Random Forest を生成 forest <- randomForest(Species~.,data = data.learn) 59
  • 60.
    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) 60
  • 61.
    Random Forest の実行 生成されたForest を用いた 高精度の予測 # Forestを用いた予測の実行 pred.forest <- predict(forest, newdata = data.test, type = "class") # 解との比較 table(pred.forest, data.test[,5]) 61
  • 62.
    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 分類間違いなし 62
  • 63.
    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 分類間違いなし 63
  • 64.
    樹木モデルとの比較 きわどいところも 分類できている 予測結果: 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 64
  • 65.
    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 65
  • 66.
    AGENDA◆自己紹介 ◆Random Forestとは ◆概要 ◆樹木モデル ◆集団学習 ◆アルゴリズム ◆R言語での実行 ◆Mahout:Random Forest ◆参考資料 ◆最後に
  • 67.
    Mahoutとは Open Sourceでスケーラブルな 機械学習・データマイニングのライブラリ ・Apache プロジェクト ・機械学習・データマイニングのライブラリ ・Java オープンソース ・Hadoop(大規模 分散処理基盤)上で動作 (Hadoop:象, Mahout: 象使い) http://mahout.apache.org 67
  • 68.
    Mahoutとは Open Sourceでスケーラブルな 機械学習・データマイニングのライブラリ ・Apache プロジェクト ・機械学習・データマイニングのライブラリ ・Java オープンソース ・Hadoop(大規模 分散処理基盤)上で動作 (Hadoop:象, Mahout: 象使い) http://mahout.apache.org 68
  • 69.
    Mahoutとは Open Sourceでスケーラブルな 機械学習・データマイニングのライブラリ ・Apache プロジェクト ・機械学習・データマイニングのライブラリ ・Java オープンソース ・Hadoop(大規模 分散処理基盤)上で動作 (Hadoop:象, Mahout: 象使い) http://mahout.apache.org 69
  • 70.
    Mahoutとは Open Sourceでスケーラブルな 機械学習・データマイニングのライブラリ ・Apache プロジェクト ・機械学習・データマイニングのライブラリ ・Java オープンソース ・Hadoop(大規模 分散処理基盤)上で動作 (Hadoop:象, Mahout: 象使い) http://mahout.apache.org 70
  • 71.
    Mahoutとは Open Sourceでスケーラブルな 機械学習・データマイニングのライブラリ ・Apache プロジェクト ・機械学習・データマイニングのライブラリ ・Java オープンソース ・Hadoop(大規模 分散処理基盤)上で動作 (Hadoop:象, Mahout: 象使い) http://mahout.apache.org 71
  • 72.
    Mahoutとは Open Sourceでスケーラブルな 機械学習・データマイニングのライブラリ ・Apache プロジェクト ・機械学習・データマイニングのライブラリ ・Java オープンソース ・Hadoop(大規模 分散処理基盤)上で動作 ・Hadoop:象, Mahout: 象使い http://mahout.apache.org 72
  • 73.
    Mahoutとは Open Sourceでスケーラブルな 機械学習・データマイニングのライブラリ ・Apache プロジェクト ・機械学習・データマイニングのライブラリ ・Java オープンソース ・Hadoop(大規模 分散処理基盤)上で動作 ・Hadoop:象, Mahout: 象使い http://mahout.apache.org 73
  • 74.
    Mahoutとは Open Sourceでスケーラブルな 機械学習・データマイニングのライブラリ Applications Examples Freq. Genetic Pattern Classification Clustering Recommenders Mining Math Utilities Collections Apache Vectors/Matrices/ Lucene/Vectorizer (primitives) Hadoop SVD http://cwiki.apache.org/confluence/display/MAHOUT/Algorithms http://www.slideshare.net/gsingers/intro-to-apache-mahout 74
  • 75.
    Mahout : RandomForest mahout.df(Decision Forest) Packageで実装されている 75
  • 76.
    Mahout : RandomForest mahout.df(Decision Forest) Packageで実装されている 主要クラス Decision Tree構築: org.apache.mahout.df.builder.TreeBuilder Interface 内容 TreeBuilder 樹木モデル(Decision Tree)構築のInterface Class 内容 DefaultTreeBuilder 樹木モデル(Decision Tree)構築の実装クラス Forest予測: org.apache.mahout.df.callback Class 内容 ForestPredictions Decision Forestの予測結果を算出する Decision Forest構築: org.apache.mahout.df.mapreduce Class 内容 Builder Decision Forestを構築する Decision Forest: org.apache.mahout.df.DecisionForest Interface 内容 DecisionForest Decision Forest (Decision Tree 集合) 表現・データ取得 76
  • 77.
    AGENDA◆自己紹介 ◆Random Forestとは ◆概要 ◆樹木モデル ◆集団学習 ◆アルゴリズム ◆R言語での実行 ◆Mahout:Random Forest ◆参考資料 ◆最後に
  • 78.
    参考資料:R / RandomForest Rによるデータサイエンス ~データ解析の基礎から最新手法まで ~■CART元論文:Breiman, L. , et.al, "Classification and Regression Trees", Wadsworth (1984)■Random Forest元論文:Breiman, L., et.al, “Random Forests”, Machine Learning (2001)
  • 79.
  • 80.
    AGENDA◆自己紹介 ◆Random Forestとは ◆概要 ◆樹木モデル ◆集団学習 ◆アルゴリズム ◆R言語での実行 ◆Mahout:Random Forest ◆参考資料 ◆最後に
  • 81.
    最後に 蓄積されたデータを有効活用してきたい 81
  • 82.
    最後に 蓄積されたデータを有効活用してきたい Google Group: http://groups.google.com/group/webmining-tokyo 82
  • 83.
    最後に データマイニング+WEB勉強会 発表者を募集しています 連絡 Google Group: http://groups.google.com/group/webmining-tokyo Twitter : http://twitter.com/hamadakoichi 83
  • 84.
  • 85.
    AGENDA◆自己紹介 ◆Random Forestとは ◆概要 ◆樹木モデル ◆集団学習 ◆アルゴリズム ◆R言語での実行 ◆Mahout:Random Forest ◆参考資料 ◆最後に

[8]ページ先頭

©2009-2025 Movatter.jp