前処理の影響について
#データの理解と前処理
#アルゴリズム
table:前処理による各種ライブラリの動作可否
アルゴリズム:ライブラリ 欠損値処理 目的変数の数値変換 質的変数の数値変換 量的変数のスケール変換
決定木:DecisionTreeClassifier 必要 不要 必要 不要
ランダムフォレスト:RandomForestClassifier 必要 不要 必要 不要
XGBoost:XGBClassifier 不要 必要 必要 不要
ロジスティック回帰:LogisticRegression 必要 不要 必要 必要
サポートベクターマシン:SVC 必要 不要 必要 必要
多層パーセプトロン:MLPClassifier 必要 不要 必要 必要
前処理の影響
scikit-learnの仕様上必要な前処理
欠損値の処理をしないと動かない
目的変数の数値変換(ラベルエンコーディングなど)はしなくても動く
アルゴリズムの性質に即した前処理
決定木系モデルについて
量的変数を正規化・標準化するなどのスケール変換は不要
説明変数の分割は変数のスケールに依存しないため
欠損値の処理や質的変数の数値変換などは、理論的には不要だが、ライブラリによってはプログラム上必要(scikit-learnの場合は必要)
ランダムフォレスト、XGBoost等の決定木アンサンブル手法は決定木を集めたモデルなので、前処理についての特徴は決定木と同じ
ロジスティック回帰、サポートベクターマシン(SVM)、多層パーセプトロンは、量的変数のスケール変換(正規化・標準化など)が必要
学習の処理において、説明変数の線形結合を用いていたり、説明変数空間内での距離を求めたりするアルゴリズムでは、各次元のスケールが合っていないとうまくいかない