最終更新日:2026年8月16日
ds data-preparation preprocessing
まず結論
特徴量エンジニアリング(Feature Engineering)とは、機械学習モデルが予測に使いやすい形へ、特徴量を作成・変換・選択することです。
DS検定では、アルゴリズムだけでなく、どの情報をどの形でモデルへ渡すかが性能に影響することを理解しているかがポイントです。
直感的な説明
売上予測を考えます。
元データが次の3列だけだとします。
| 日付 | 気温 | 売上 |
|---|---|---|
| 2026-08-01 | 34 | 120 |
日付をそのまま使うより、そこから
- 曜日
- 月
- 祝日かどうか
などを作ると、モデルが「休日は売上が増える」といったパターンを捉えやすくなります。
元データから、予測に役立つ表現を作る
これが特徴量エンジニアリングです。
定義・仕組み
特徴量エンジニアリングでは、主に次のような操作を行います。
| 操作 | 例 | 目的 |
|---|---|---|
| 新しい特徴量を作る | 日付 → 曜日、生年月日 → 年齢 | 情報をモデルが使いやすくする |
| 数値を変換する | 標準化、正規化 | スケールをそろえる |
| カテゴリを数値化する | One-hot encoding | 文字カテゴリをモデルへ入力する |
| 特徴量を選ぶ | 不要な列を除く | ノイズや過学習を抑える |
① 新しい特徴量の作成
例:
- 日付 → 曜日
- 生年月日 → 年齢
- 購入日時 → 朝・昼・夜
② スケーリング
数値の範囲をそろえます。
代表例:
- 標準化
- 正規化
③ カテゴリ変数の変換
文字カテゴリをモデルが扱える数値表現へ変えます。
代表例:
- One-hot encoding
- Label encoding
④ 特徴量選択
予測に不要な特徴量や、ノイズになりやすい特徴量を除きます。
どんな場面で使う?
モデル性能を改善したいとき
同じアルゴリズムでも、入力する特徴量が変わると性能は変わります。
アルゴリズムを複雑にする前に、モデルへ渡している情報が適切かを確認することが重要です。
生データをそのまま使いにくいとき
日付、カテゴリ、文章などは、そのままではモデルが扱いにくい場合があります。
そこで特徴量へ変換します。
前処理の一部として
特徴量エンジニアリングは、広い意味では前処理の一部として扱われます。
ただし試験では、次の違いで整理すると分かりやすいです。
| 概念 | 主な目的 |
|---|---|
| 前処理 | 欠損・形式・スケールなどを整える |
| 特徴量エンジニアリング | 予測に役立つ入力表現を作る |
よくある誤解・混同
❌ モデルを変えれば必ず精度が上がる
必ずしもそうではありません。入力特徴量の作り方が性能を大きく左右することがあります。
❌ 生データはそのまま使えばよい
実務では、日付・カテゴリ・ログなどをモデルが扱いやすい形へ変換することがよくあります。
❌ 予測後に分かる情報を特徴量へ入れてよい
これは特徴量リーク(データリーク)につながります。
予測時点では知ることができない情報を特徴量に入れると、評価時だけ不自然に高い精度が出ることがあります。
まとめ(試験直前用)
- 特徴量エンジニアリング = 特徴量を作成・変換・選択する
- 目的はモデルが予測に使いやすい情報を作ること
- 日付 → 曜日、カテゴリ → 数値などが代表例
- 前処理よりも「予測に役立つ表現を作る」という視点が強い
- 予測時点で使えない情報を入れない
対応スキル項目(データサイエンス力シート)
- 機械学習
- データ前処理
- ★ 特徴量エンジニアリングの役割を理解している
🔗 関連記事
- アノテーションとは?AI学習データの品質を決める作業【DS検定】
- カテゴリ変数とは?数値データとの違いを整理【DS検定】
- データ拡張(Data Augmentation)とは?画像AIの学習データを増やす方法【DS検定】
- データ抽出と集計の違いとは?(SQL・BIで混同しやすい操作)【DS検定】
- データトランスフォーメーションとは?(非構造化データの変換)【DS検定】