SnapCrab_2017-2-9_8-49-19_No-00

こんにちは!大学教員ブロガーのねこしです。

データ解析の手順』における
6.外れ値処理・変数処理・ノイズ処理を行いながら回帰モデルもしくはクラス分類モデルを完成させる。
についてです。なお実行するためのプログラムについてはこちらをご覧ください。

公開中のプログラム・コード一覧(実用的かつ実践的なデータ解析・機械学習・データマイニング) : 大学教授のブログ (データ分析相談所)

今回は、重要な説明変数(記述子・特徴量・入力変数)を選択する方法についてです。変数選択の方法はたくさんありますが、その中のどれを使ったほうがいいのでしょうか。

答えは、多くの手法を使うしかない、です。

それぞれの変数選択手法は、異なるアルゴリズム・評価方法・評価値により変数の組み合わせを最適化しています。データセットごとに特徴が異なりますので、適したアルゴリズム・評価方法・評価値も異なります。あるデータセットがあるとき、各手法のアルゴリズム・評価方法・評価値がそのデータセットに適しているかどうかは、誰も分かりません。事前に、”最適な変数の組み合わせ”という答えがあれば、選択された結果がよかったか悪かったかの検討ができますが、残念ながらそのような答えはありません (答えがないからこそ変数選択をしているわけです)。

そこで、いくつかの変数選択手法を実行して、どんな変数が何回選ばれたかを確認するのです。異なるアルゴリズム・評価方法・評価値によるたくさんの変数選択手法で選ばれた変数は、それだけ本当に重要な変数である確率は高いです。逆に、一回も選ばれなかった変数は大事ではない、といえます。

本当に大事な変数だけ選びたいときは、複数の変数選択手法を用いることが大切です。

複数の変数選択手法を実行できるのプログラムを簡単に入手できます!

それぞれのURLからお求めください!noteでもSPIKEでも言語が同じであれば同じものです。

R: note SPIKE

Python: note SPIKE

変数選択手法の一例です。

  • 相関係数による変数選択
    すべての変数の間で相関係数を計算し、その絶対値が大きい変数の組の一方を削除する手法。相関係数の絶対値としては、0.8, 0.9, 0.99など。
  • Variable Importance in Projection (VIP)
    Partial Least Squares (PLS) を実施した後のVIPという指標を用いて、VIPの値が大きい変数を選択する手法。平均が1になる指標であり、1より大きい変数を選択することが多い。
  • PLS-β
    PLSを実施した後の標準回帰係数の絶対値を用いて、その値が大きい変数を選択する手
  • PLSの繰り返しによる変数選択
    不要な変数を一つずつ削除しながら、ダブルクロスバリデーションの結果が良くなるように変数を選択する手法。詳しくはこちら
  • Least Absolute Shrinkage and Selection Operator (LASSO)
    LASSOではモデルに寄与しない変数の標準回帰係数の値が0になりやすいため、標準回帰係数の値が0でない変数のみ選択する。
  • Elastic Net (EN)
    ENでもLASSOと同様に標準回帰係数の値が0になりやすい。0でない変数を選択する。
  • Random Forest (RF) の変数の重要度に基づく変数選択
    RFを実行した後の変数の重要度が大きい変数を選択する手法
  • Stepwise法
    モデル構築を繰り返して、変数を1つずつ削除したり1つずつ追加したりしながら適した変数の組み合わせを選択する手法。評価値として、赤池情報量規準 (Akaike’s Information Criterion, AIC・ベイズ情報量規準 (Bayesian Information Criterion, BIC)・クロスバリデーション後のRoot Mean Squared Error (RMSE)などがある。
  • Genetic Algorithm-based Partial Least Squares (GAPLS)
    生物の進化の仮定を模倣して、PLSのクロスバリデーションの結果がよくなるような変数の組み合わせを選択する手法。初期値依存性がある。

ここまでお読みいただきありがとうございます。ぜひ上の複数の変数選択手法のプログラムもご活用ください。

これを書いた人

ブログ:http://univprof.com/

note : https://note.mu/univprof

コード・プログラムのショップ : https://spike.cc/shop/univprof

twitter:https://twitter.com/univprofblog1

ぜひフォローをお願い致します。

データ解析の質問 募集中!

こちらへお願いします!

ご案内。

オススメ記事セレクション。

twitterでも発信中。

この記事に興味を持っていただけましたら、ぜひフォローをお願いします!


無料メルマガでブログにない情報を配信中。

データ解析・分析に興味がありましたらぜひ登録をお願いします!
無料メルマガの登録はこちら