統計ロードマップ
2026-04-30·実装·⏱ 約 5

特徴量エンジニアリング 入門 ─ Kaggle 上位の必須スキル

ML モデルの精度の 80% を決める『特徴量エンジニアリング』。カテゴリ・数値・時系列・テキストの代表的な変換手法を実例で整理。

より良いモデルより、より良い特徴量」 ─ Kaggle で何百人もが言うこの格言は本当です。本記事では実務で使う変換テクニックを データ型ごと に整理します。

1. 数値特徴量の変換

  • 対数変換: 右に裾が長い分布(年収・売上・株価)を対称に
  • ビン化(離散化): 連続値を `若年/中年/高齢` のような区分に。決定木以外で有効
  • スケーリング: 標準化(平均 0、標準偏差 1)・正規化(0〜1)。線形モデル・NN・SVM で必須
  • 多項式特徴量: で非線形を線形モデルに導入
  • Box-Cox / Yeo-Johnson 変換: 非正規分布を正規型に

2. カテゴリ特徴量のエンコード

  • One-Hot Encoding: シンプルだがカテゴリが多いと次元爆発
  • Label / Ordinal Encoding: 順序のあるカテゴリに(`小・中・大` → `0,1,2`)
  • Target Encoding: カテゴリ → 平均ターゲット値。強力だがリーク注意(K-fold 内で計算)
  • Frequency Encoding: カテゴリの出現頻度で置換。シンプルかつ効くことが多い
  • Hashing Trick: カテゴリ数が膨大なときの省メモリ手法
  • Embedding: NN で学習する低次元密ベクトル(リコメンドで定番)

3. 時系列特徴量

  • ラグ特徴量: など過去の値
  • 差分: 、季節差分
  • ローリング統計: 7 日平均・30 日標準偏差・最大値
  • カレンダー特徴量: 曜日・月・祝日フラグ・四半期
  • フーリエ特徴量: 季節性を sin/cos の組合せで
  • EWMA(指数加重移動平均): 直近を重く扱う移動平均

4. テキスト特徴量

  • Bag-of-Words / TF-IDF: 古典だが今も実務で十分実用
  • 埋め込みベクトル(BERT / OpenAI / E5): 意味的類似度を捉える
  • 文字数・単語数・大文字比率: シンプルだが効くことが多い(特にスパム検出)
  • 正規表現マッチ: 電話番号・メール・URL の有無

5. 特徴量の評価と選択

  • Permutation Importance: 特徴量をシャッフルして精度低下を測定。最も信頼できる
  • SHAP: 各特徴量の寄与を厳密に算出。可視化も豊富
  • Boruta: ランダム特徴量より重要なものだけを選択
  • 相関フィルタ: 高相関のペアから片方を除く(多重共線性)
💡 ドメイン知識が最強

経験的に ドメイン専門家との議論で生まれた特徴量 が最も効く。例: 不正検出なら『過去 24 時間内の取引回数』『送金先の新しさ』など。アルゴリズムでは生み出せないこの種の特徴量設計が、Kaggle 上位と中位を分ける

Pandas で代表的な特徴量を一気に作る
初回のみ Pyodide(~10MB)を CDN から読み込みます

関連記事

  • [scikit-learn 入門](/blog/sklearn-introduction)
  • [Pandas 実務 Tips](/blog/pandas-tips-for-ml)
  • [Kaggle 始め方](/blog/kaggle-getting-started)
  • [プログラミング入門](/programming) ─ Python・SQL の基礎
Related Articles

関連記事