Submit Search
Upload
Randomforestで高次元の変数重要度を見る #japanr LT
•
6 likes
•
12,547 views
Akifumi Eguchi
Follow
JapanR 2016でのLT資料です
Read less
Read more
Data & Analytics
Report
Share
Report
Share
1 of 17
Download now
Download to read offline
Recommended
パターン認識と機械学習入門
パターン認識と機械学習入門
Momoko Hayamizu
最近のRのランダムフォレストパッケージ -ranger/Rborist-
最近のRのランダムフォレストパッケージ -ranger/Rborist-
Shintaro Fukushima
因果探索: 基本から最近の発展までを概説
因果探索: 基本から最近の発展までを概説
Shiga University, RIKEN
PRMLの線形回帰モデル(線形基底関数モデル)
PRMLの線形回帰モデル(線形基底関数モデル)
Yasunori Ozaki
Attentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門まで
AGIRobots
不均衡データのクラス分類
不均衡データのクラス分類
Shintaro Fukushima
Jubatus Casual Talks #2 異常検知入門
Jubatus Casual Talks #2 異常検知入門
Shohei Hido
XAI (説明可能なAI) の必要性
XAI (説明可能なAI) の必要性
西岡 賢一郎
Recommended
パターン認識と機械学習入門
パターン認識と機械学習入門
Momoko Hayamizu
最近のRのランダムフォレストパッケージ -ranger/Rborist-
最近のRのランダムフォレストパッケージ -ranger/Rborist-
Shintaro Fukushima
因果探索: 基本から最近の発展までを概説
因果探索: 基本から最近の発展までを概説
Shiga University, RIKEN
PRMLの線形回帰モデル(線形基底関数モデル)
PRMLの線形回帰モデル(線形基底関数モデル)
Yasunori Ozaki
Attentionの基礎からTransformerの入門まで
Attentionの基礎からTransformerの入門まで
AGIRobots
不均衡データのクラス分類
不均衡データのクラス分類
Shintaro Fukushima
Jubatus Casual Talks #2 異常検知入門
Jubatus Casual Talks #2 異常検知入門
Shohei Hido
XAI (説明可能なAI) の必要性
XAI (説明可能なAI) の必要性
西岡 賢一郎
機械学習による統計的実験計画(ベイズ最適化を中心に)
機械学習による統計的実験計画(ベイズ最適化を中心に)
Kota Matsui
PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説
弘毅 露崎
機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明
Satoshi Hara
ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定
Akira Masuda
変数同士の関連_MIC
変数同士の関連_MIC
Shushi Namba
LDA入門
LDA入門
正志 坪坂
SHAP値の考え方を理解する(木構造編)
SHAP値の考え方を理解する(木構造編)
Kazuyuki Wakasugi
コサインクラスタリング
コサインクラスタリング
osamu morimoto
機械学習モデルのハイパパラメータ最適化
機械学習モデルのハイパパラメータ最適化
gree_tech
条件付き確率場の推論と学習
条件付き確率場の推論と学習
Masaki Saito
MICの解説
MICの解説
logics-of-blue
データサイエンス概論第一 5 時系列データの解析
データサイエンス概論第一 5 時系列データの解析
Seiichi Uchida
関数データ解析の概要とその方法
関数データ解析の概要とその方法
Hidetoshi Matsui
はじめよう多変量解析~主成分分析編~
はじめよう多変量解析~主成分分析編~
宏喜 佐野
画像処理AIを用いた異常検知
画像処理AIを用いた異常検知
Hideo Terada
“機械学習の説明”の信頼性
“機械学習の説明”の信頼性
Satoshi Hara
全力解説!Transformer
全力解説!Transformer
Arithmer Inc.
深層学習の非常に簡単な説明
深層学習の非常に簡単な説明
Seiichi Uchida
グラフィカルモデル入門
グラフィカルモデル入門
Kawamoto_Kazuhiko
時系列問題に対するCNNの有用性検証
時系列問題に対するCNNの有用性検証
Masaharu Kinoshita
Random Forest による分類
Random Forest による分類
Ken'ichi Matsui
高速・省メモリにlibsvm形式で ダンプする方法を研究してみた
高速・省メモリにlibsvm形式で ダンプする方法を研究してみた
Keisuke Hosaka
More Related Content
What's hot
機械学習による統計的実験計画(ベイズ最適化を中心に)
機械学習による統計的実験計画(ベイズ最適化を中心に)
Kota Matsui
PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説
弘毅 露崎
機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明
Satoshi Hara
ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定
Akira Masuda
変数同士の関連_MIC
変数同士の関連_MIC
Shushi Namba
LDA入門
LDA入門
正志 坪坂
SHAP値の考え方を理解する(木構造編)
SHAP値の考え方を理解する(木構造編)
Kazuyuki Wakasugi
コサインクラスタリング
コサインクラスタリング
osamu morimoto
機械学習モデルのハイパパラメータ最適化
機械学習モデルのハイパパラメータ最適化
gree_tech
条件付き確率場の推論と学習
条件付き確率場の推論と学習
Masaki Saito
MICの解説
MICの解説
logics-of-blue
データサイエンス概論第一 5 時系列データの解析
データサイエンス概論第一 5 時系列データの解析
Seiichi Uchida
関数データ解析の概要とその方法
関数データ解析の概要とその方法
Hidetoshi Matsui
はじめよう多変量解析~主成分分析編~
はじめよう多変量解析~主成分分析編~
宏喜 佐野
画像処理AIを用いた異常検知
画像処理AIを用いた異常検知
Hideo Terada
“機械学習の説明”の信頼性
“機械学習の説明”の信頼性
Satoshi Hara
全力解説!Transformer
全力解説!Transformer
Arithmer Inc.
深層学習の非常に簡単な説明
深層学習の非常に簡単な説明
Seiichi Uchida
グラフィカルモデル入門
グラフィカルモデル入門
Kawamoto_Kazuhiko
時系列問題に対するCNNの有用性検証
時系列問題に対するCNNの有用性検証
Masaharu Kinoshita
What's hot
(20)
機械学習による統計的実験計画(ベイズ最適化を中心に)
機械学習による統計的実験計画(ベイズ最適化を中心に)
PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説
機械学習モデルの判断根拠の説明
機械学習モデルの判断根拠の説明
ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定
変数同士の関連_MIC
変数同士の関連_MIC
LDA入門
LDA入門
SHAP値の考え方を理解する(木構造編)
SHAP値の考え方を理解する(木構造編)
コサインクラスタリング
コサインクラスタリング
機械学習モデルのハイパパラメータ最適化
機械学習モデルのハイパパラメータ最適化
条件付き確率場の推論と学習
条件付き確率場の推論と学習
MICの解説
MICの解説
データサイエンス概論第一 5 時系列データの解析
データサイエンス概論第一 5 時系列データの解析
関数データ解析の概要とその方法
関数データ解析の概要とその方法
はじめよう多変量解析~主成分分析編~
はじめよう多変量解析~主成分分析編~
画像処理AIを用いた異常検知
画像処理AIを用いた異常検知
“機械学習の説明”の信頼性
“機械学習の説明”の信頼性
全力解説!Transformer
全力解説!Transformer
深層学習の非常に簡単な説明
深層学習の非常に簡単な説明
グラフィカルモデル入門
グラフィカルモデル入門
時系列問題に対するCNNの有用性検証
時系列問題に対するCNNの有用性検証
Viewers also liked
Random Forest による分類
Random Forest による分類
Ken'ichi Matsui
高速・省メモリにlibsvm形式で ダンプする方法を研究してみた
高速・省メモリにlibsvm形式で ダンプする方法を研究してみた
Keisuke Hosaka
20161127 doradora09 japanr2016_lt
20161127 doradora09 japanr2016_lt
Nobuaki Oshiro
Tidyverseとは
Tidyverseとは
yutannihilation
統計的因果推論勉強会 第1回
統計的因果推論勉強会 第1回
Hikaru GOTO
木と電話と選挙(causalTree)
木と電話と選挙(causalTree)
Shota Yasui
てかLINEやってる? (Japan.R 2016 LT) #JapanR
てかLINEやってる? (Japan.R 2016 LT) #JapanR
cancolle
傾向スコア:その概念とRによる実装
傾向スコア:その概念とRによる実装
takehikoihayashi
相関と因果について考える:統計的因果推論、その(不)可能性の中心
相関と因果について考える:統計的因果推論、その(不)可能性の中心
takehikoihayashi
星野「調査観察データの統計科学」第3章
星野「調査観察データの統計科学」第3章
Shuyo Nakatani
星野「調査観察データの統計科学」第1&2章
星野「調査観察データの統計科学」第1&2章
Shuyo Nakatani
Rで学ぶ 傾向スコア解析入門 - 無作為割り当てが出来ない時の因果効果推定 -
Rで学ぶ 傾向スコア解析入門 - 無作為割り当てが出来ない時の因果効果推定 -
Yohei Sato
Viewers also liked
(12)
Random Forest による分類
Random Forest による分類
高速・省メモリにlibsvm形式で ダンプする方法を研究してみた
高速・省メモリにlibsvm形式で ダンプする方法を研究してみた
20161127 doradora09 japanr2016_lt
20161127 doradora09 japanr2016_lt
Tidyverseとは
Tidyverseとは
統計的因果推論勉強会 第1回
統計的因果推論勉強会 第1回
木と電話と選挙(causalTree)
木と電話と選挙(causalTree)
てかLINEやってる? (Japan.R 2016 LT) #JapanR
てかLINEやってる? (Japan.R 2016 LT) #JapanR
傾向スコア:その概念とRによる実装
傾向スコア:その概念とRによる実装
相関と因果について考える:統計的因果推論、その(不)可能性の中心
相関と因果について考える:統計的因果推論、その(不)可能性の中心
星野「調査観察データの統計科学」第3章
星野「調査観察データの統計科学」第3章
星野「調査観察データの統計科学」第1&2章
星野「調査観察データの統計科学」第1&2章
Rで学ぶ 傾向スコア解析入門 - 無作為割り当てが出来ない時の因果効果推定 -
Rで学ぶ 傾向スコア解析入門 - 無作為割り当てが出来ない時の因果効果推定 -
More from Akifumi Eguchi
PlaidML Kerasでやっていく #TokyoR 73
PlaidML Kerasでやっていく #TokyoR 73
Akifumi Eguchi
High-order factorization machines with R #tokyor 61
High-order factorization machines with R #tokyor 61
Akifumi Eguchi
統計的学習の基礎6章前半 #カステラ本
統計的学習の基礎6章前半 #カステラ本
Akifumi Eguchi
Dslt祭り2夜
Dslt祭り2夜
Akifumi Eguchi
環境化学データ解析入門: 愛媛大講演資料 160728
環境化学データ解析入門: 愛媛大講演資料 160728
Akifumi Eguchi
統計的学習の基礎, 副読本紹介: An Introduction to Statistical Learning
統計的学習の基礎, 副読本紹介: An Introduction to Statistical Learning
Akifumi Eguchi
Mxnetで回帰 #TokyoR 53th
Mxnetで回帰 #TokyoR 53th
Akifumi Eguchi
子どもたちの未来を支える機械学習: 定量的構造活性相関 (QSAR) による有機ハロゲン化合物の母子間移行率予測
子どもたちの未来を支える機械学習: 定量的構造活性相関 (QSAR) による有機ハロゲン化合物の母子間移行率予測
Akifumi Eguchi
ぞくパタ最終回: 13章「共クラスタリング」
ぞくパタ最終回: 13章「共クラスタリング」
Akifumi Eguchi
Deep learningもくもくハッカソンまとめup用
Deep learningもくもくハッカソンまとめup用
Akifumi Eguchi
Tokyo webmining 43 "化学物質汚染のデータ解析・リスク評価についての私見"
Tokyo webmining 43 "化学物質汚染のデータ解析・リスク評価についての私見"
Akifumi Eguchi
第2回ぞくパタ
第2回ぞくパタ
Akifumi Eguchi
第一回ぞくパタ
第一回ぞくパタ
Akifumi Eguchi
ぞくパタ はじめに
ぞくパタ はじめに
Akifumi Eguchi
Tokyo.r #44 lt.pptx
Tokyo.r #44 lt.pptx
Akifumi Eguchi
Tokyo r #43
Tokyo r #43
Akifumi Eguchi
みどりぼん9章前半
みどりぼん9章前半
Akifumi Eguchi
みどりぼん3章前半
みどりぼん3章前半
Akifumi Eguchi
Tokyo R #39
Tokyo R #39
Akifumi Eguchi
More from Akifumi Eguchi
(19)
PlaidML Kerasでやっていく #TokyoR 73
PlaidML Kerasでやっていく #TokyoR 73
High-order factorization machines with R #tokyor 61
High-order factorization machines with R #tokyor 61
統計的学習の基礎6章前半 #カステラ本
統計的学習の基礎6章前半 #カステラ本
Dslt祭り2夜
Dslt祭り2夜
環境化学データ解析入門: 愛媛大講演資料 160728
環境化学データ解析入門: 愛媛大講演資料 160728
統計的学習の基礎, 副読本紹介: An Introduction to Statistical Learning
統計的学習の基礎, 副読本紹介: An Introduction to Statistical Learning
Mxnetで回帰 #TokyoR 53th
Mxnetで回帰 #TokyoR 53th
子どもたちの未来を支える機械学習: 定量的構造活性相関 (QSAR) による有機ハロゲン化合物の母子間移行率予測
子どもたちの未来を支える機械学習: 定量的構造活性相関 (QSAR) による有機ハロゲン化合物の母子間移行率予測
ぞくパタ最終回: 13章「共クラスタリング」
ぞくパタ最終回: 13章「共クラスタリング」
Deep learningもくもくハッカソンまとめup用
Deep learningもくもくハッカソンまとめup用
Tokyo webmining 43 "化学物質汚染のデータ解析・リスク評価についての私見"
Tokyo webmining 43 "化学物質汚染のデータ解析・リスク評価についての私見"
第2回ぞくパタ
第2回ぞくパタ
第一回ぞくパタ
第一回ぞくパタ
ぞくパタ はじめに
ぞくパタ はじめに
Tokyo.r #44 lt.pptx
Tokyo.r #44 lt.pptx
Tokyo r #43
Tokyo r #43
みどりぼん9章前半
みどりぼん9章前半
みどりぼん3章前半
みどりぼん3章前半
Tokyo R #39
Tokyo R #39
Randomforestで高次元の変数重要度を見る #japanr LT
1.
Randomforestで高次元の変数重要度を見る Janitza, S., Celik, E., & Boulesteix, A. L. (2015). A computaAonally fast variable importance test for random forests for high-dimensional data. 20161127: Japan.R LT @Yahoo!: TwiTer: @siero5335
2.
機械学習で重要な課題といえば? 特徴量の抽出! 特にデータが高次元の場合、 どれが重要な特徴量なのかわかりにくい
3.
機械学習で重要な課題といえば? 特徴量の抽出! 特にデータが高次元の場合、 どれが重要な特徴量なのかわかりにくい 特徴量抽出についての参考資料 hTp://www.slideshare.net/Keiku322/r48rtokyor hTp://www.slideshare.net/sercantahaahi/feature- selecAon-with-r-in-jp XgboostのGBDT feature, FeatureHashing詳細 RFのジニ係数から特徴選択
4.
機械学習で重要な課題といえば? 特徴量の抽出! 特にデータが高次元の場合、 どれが重要な特徴量なのかわかりにくい 特徴量抽出についての参考資料 RFだとGini係数あるいはpermutaAonから出す変数重要度 があるが今回はpermutaAonの変数重要度に基づいた手法 hTp://www.slideshare.net/Keiku322/r48rtokyor hTp://www.slideshare.net/sercantahaahi/feature- selecAon-with-r-in-jp XgboostのGBDT feature, FeatureHashing詳細 RFのジニ係数から特徴選択
5.
変数重要度の分布を計算できれば仮説検定もできるはず Randomforestで高次元の変数重要度を見る Janitza, S., Celik, E., & Boulesteix, A. L. (2015). A computaAonally fast variable importance test for random forests for high-dimensional data.
6.
どうやって使うの? hTps://cran.r-project.org/web/packages/vita/index.html randomforestとvita packageを組み合わせて使うのが普通だが、 ranger内に関数が用意されてて早くて楽なので今回はそっちを使う
7.
どうやって使うの?rangerのすがた library(ranger) # > version 0.5.0 library(mlbench) data(Sonar, package="mlbench") Sonar[,61] = as.numeric(Sonar[,61])-1 Sonar <- as.data.frame(Sonar) testRF <- ranger(Class ~ ., data = Sonar, mtry = 5, importance = "permutaAon")
8.
どうやって使うの?rangerのすがた library(ranger) # > version 0.5.0 library(mlbench) data(Sonar, package="mlbench") Sonar[,61] = as.numeric(Sonar[,61])-1 Sonar <- as.data.frame(Sonar) testRF <- ranger(Class ~ ., data = Sonar, mtry = 5, importance = "permutaAon") importance_pvalues(testRF, method = "janitza", conf.level = 0.95) importanceが信頼区間, p-value付きででてくる
9.
どうやって使うの?caretのすがた library(ranger) library(caret) library(mlbench) data(Sonar, package="mlbench") train.x = data.matrix(Sonar[train.ind, 1:60]) train.y = Sonar[train.ind, 61] tr = trainControl(method = "repeatedcv”, number = 5, repeats = 5) grid = expand.grid(mtry = 1:20) set.seed(71) ranger_fit = train(train.x, train.y, method = "ranger", tuneGrid = grid, trControl=tr, importance = "permutaAon") importance_pvalues(ranger_fit$finalModel, method = "janitza", conf.level = 0.95)
10.
おおまかなしくみ VIj: 変数Xjの変数重要度, 0以上であれば判別に寄与してる (Xjを使うより、Xjの独立したコピーであるXj*を使ったほうが 誤分類率が高い) 通常であれば下記のように、OOBから変数重要度を求める
11.
おおまかなしくみ Hold-outなら2個, CVならk個のモデルをつくり、 それぞれのモデルにおける変数重要度を求めることもできる Slを使って算出 Holdout K-fold CV (目的変数がカテゴリの場合)
12.
おおまかなしくみ Hold-outなら2個, CVならk個のモデルをつくり、 それぞれのモデルにおける変数重要度を求めることもできる Slを使って算出 Holdout K-fold CV (目的変数がカテゴリの場合) 今回はこっちを使う Vita packageだと kも指定できる
13.
おおまかなしくみ 1. 元データをランダムに半分こ 2. 下記の感じでF^ 0を算出する 3.
p-valueを より算出 例: 変数重要度が負のやつ全て 例: 変数重要度が0のやつ全て 例: 変数重要度が負のモノすべて に-1を掛けた値 : empirical cumulaAve distribuAon funcAon 馴染み深いp-valueが出てくるので カットオフラインがわかりやすい
14.
どうでもいいこと 著者はメディカルインフォマティクス畑の人 D論が出てるので熱心な方は以下参照(今年の? hTps://edoc.ub.uni-muenchen.de/19671/1/Janitza_Silke.pdf
15.
Enjoy feature selecAon !
16.
17.
どうやって使うの?vitaのすがた hTps://cran.r-project.org/web/packages/vita/index.html randomforestとvita packageを組み合わせて使うのが普通だが、 ranger内に関数が用意されてて早くて楽なので今回はそっちを使う Vita packageの場合の使い方 cv_vi = CVPVI(X,y,k = 2,mtry = 3, ntree = 1000,ncores = 4) cv_p = NTA(cv_vi$cv_varim) summary(cv_p,pless = 0.1) cl.rf = randomForest(X,y,mtry = 3,ntree = 500, importance = TRUE) pvi_p = NTA(importance(cl.rf, type=1, scale=FALSE)) summary(pvi_p) または
Download now