はじめに
PCAやLogistic Regressionといった線形モデルで
データ構造を眺めることで、
特徴量設計(FE)に活かせる知見が得られるのではないかと考え、
定番データセットであるAdult Incomeで試してみました。
また、その観察結果を踏まえて
LightGBMでのFE改善もあわせて確認しました
やったこと
今回は Adult Income データセットを対象に、
以下の流れで分析を行いました。
・PCAによる構造の確認
・Logistic Regression(線形モデル)の挙動確認
・LightGBM(非線形モデル)での学習
・観察結果を踏まえたFEの調整
「構造を見る → 線形で見る → 非線形で確認する」
という流れを意識しています。
所見
1. PCAによる構造の確認
PCAにより特徴量間の関係性や分散構造は観察できましたが、
それを具体的な特徴量操作へ落とし込むのは容易ではなく、
FE改善への直接的なヒントは限定的でした。
2. Logistic Regression(線形モデル)の挙動確認
LRは「線形に効く特徴」を見やすいので、FEの当たりを付ける目的で使いました。
係数を見るとcapital-gainが支配的で、分布がゼロ集中+ロングテールなので、極端値が挙動に効きやすいタイプでした。
診断量でも、一部の高影響サンプルが確認できたので、FEは「全体最適」だけでなく、尾部(レア群)をどう扱うかがポイントになりそうです。
3. LightGBMでの確認
非線形モデルとして LightGBM を適用しました。
まずベースラインモデルで学習を行ったところ、
CV(Cross Validation)AUC は 約 0.92 となりました。
その後、PCAおよびLRでの観察を踏まえ、
いくつかのFeature Engineering(FE)を試しました。
FE調整後のCV AUCは概ね同水準で推移し、
性能差は限定的な結果となりました。
少なくとも今回の試行範囲では、
FEによる明確な性能向上は確認できませんでした。
やってみた感想
定番データセットではありますが、
PCA・線形モデル・非線形モデルを並べて眺めることで、
それぞれの見え方や役割の違いを改めて実感しました。
特に、
構造の理解と性能改善が必ずしも一致しない点や、
Feature Engineering の効果を安定して評価する難しさは
印象的でした。
また、
LRでは寄与構造や影響観測が読みやすく、
LightGBMではLRとは異なる挙動が確認できるなど、
モデルごとの特性の違いも興味深いポイントでした。
GitHub
プロジェクト全体・Notebook・コードはこちら: