elsur.jpn.org >

« 読了:Olden, Koy, & Death (2004) ニューラル・ネットワークの説明変数の重要性を測る最良の方法(それは意外にも...) | メイン | 読了:「パンティストッキングのような空の下」「花のズボラ飯」 »

2015年12月17日 (木)

 なんというかその、判別モデルや回帰モデルを組んだ時、「で、どの説明変数が重要でしたか?」って聞かれること、あるじゃないですか。いやいや、ひとことで「重要」っていってもいろいろありましてですね... と交互作用や非線形性の話をしても、ある意味、煙に巻くようなもんじゃないですか。素朴な気持ちとしては、こっちも内心では 「いやあこの変数は効くなあ」なんて思っているわけだし。なんだかんだいいながら、どうにかして変数を選ばないといけないわけだし。
 魚心あれば水心で、世の中には実にいろんな変数重要度指標があり、誠に困ったことである。さらに困ったことに、こういう話は仕事の中で不意に顔を出すので、いつかきちんと調べます、では間に合わない。
 とりあえず、いろんなタイプの予測モデルを統合したパッケージである、R の caret パッケージが実装している重要性指標についてメモしておこう。出典はこちら。純粋に自分用の覚え書です。

 まずは、モデルに依存しないタイプの指標。

モデルに依存するタイプの指標。

 ふうん...
 ランダムフォレストのような協調学習の分野では、変数重要性をpermutationベースで求めるとき、ふつうにその変数だけかきまぜちゃっていいのか (いわばmarginalな重要度になる)、それとも共変量で層別して層の中だけでかきまぜるべきか (conditionalな重要度になる)、という議論があるらしい。これは他の手法でもいえることであって、その辺のところが知りたいんだけど、caretパッケージではさすがにそこまで面倒はみてくれないようだ。

雑記:データ解析 - 説明変数の重要度指標のいろいろ (by caretの中の人)