機械学習モデルを構築するとき、「どんなデータを入力に使うか」は最も重要なポイントのひとつです。
その入力データを指すのが 説明変数(explanatory variable) です。別名で「特徴量(feature)」や「入力変数」とも呼ばれ、モデルが目的変数(予測したい値)を推定・説明するための基礎になります。
この記事では、説明変数の定義から種類、前処理、選定方法まで、実務にも使えるレベルで詳しく解説します。
説明変数とは何か
説明変数とは、目的変数と関係があると考えられる入力データのことです。
モデルはこれらの説明変数をもとに、「目的変数をどのように予測できるか」を学習します。
| 例 | 説明変数 | 目的変数 |
|---|---|---|
| 不動産価格予測 | 立地、築年数、間取り、最寄駅からの距離 | 価格 |
| 売上予測 | 広告費、季節、曜日、天気 | 売上高 |
| 顧客離反予測 | 年齢、利用頻度、契約期間、クレーム履歴 | 離反(0 or 1) |
機械学習の文脈では、「説明変数」「特徴量」「入力変数」はほぼ同じ意味で使われます。
ただし統計学的には微妙な差異があり、厳密には「独立変数」と区別されることもあります。
説明変数の種類
説明変数にはさまざまなタイプがあり、変数の種類によって前処理や変換の方法が変わります。
数値変数(Quantitative Variables)
- 連続値:実数として扱う(例:売上、気温、身長など)
- 離散値:整数カウント(例:購入回数、訪問回数など)
これらはモデル学習時にスケール差があると不安定になるため、標準化(平均0・分散1)や正規化(0〜1スケーリング)がよく使われます。
カテゴリ変数(Categorical Variables)
- ラベルデータ(例:性別、地域、商品カテゴリなど)
- モデルは文字列を直接扱えないため、One-Hotエンコーディングやラベルエンコーディングによって数値化します。
時間変数(Temporal Variables)
- 例:日時、購入日、アクセス時刻など。
- 日付そのものを数値にするよりも、「月」「曜日」「時間帯」などに分解して特徴を抽出した方が多くのモデルで効果的です。
非構造データ(テキスト・画像・音声)
- 文章、画像、音声などの複雑なデータは、TF-IDF、Word2Vec、CNNなどによって特徴ベクトル(説明変数)に変換します。
現代ではBERTやVision Transformerの埋め込みもよく使われます。
説明変数の前処理(特徴量エンジニアリング)
説明変数はそのままでは使えないことが多く、精度を高めるためにさまざまな前処理が行われます。
| 処理名 | 内容 | 目的 |
|---|---|---|
| 標準化 | 平均0・分散1にスケーリング | スケール差を除去 |
| 正規化 | 値を0〜1にスケーリング(またはL2正規化) | 勾配学習を安定化 |
| エンコーディング | カテゴリを数値に変換 | モデルで扱える形に |
| 欠損値補完 | 欠損データを平均や中央値で補完 | 学習を安定化 |
| 特徴量生成 | 変数の組み合わせから新特徴を作る | モデル精度の向上 |
説明変数の選び方(特徴量選択)
すべての変数を使えばよいわけではありません。
不要な変数が多すぎると、過学習や解釈の難化を招きます。
以下のような方法で有効な説明変数を選定します。
相関分析
目的変数と強く相関する変数を選ぶ。
(例:Pearson相関係数、スピアマン順位相関)
統計的検定
カテゴリ変数の場合、カイ二乗検定などで関連度を評価。
モデルベースの選定
ランダムフォレストやXGBoostなどでは、feature_importances_から変数重要度を確認可能。
正則化手法
Lasso回帰(L1正則化)は不要な変数の係数を0にして自動的に特徴選択を行います。
サンプル数とのバランスを考慮
説明変数の数は多ければ良いわけではなく、サンプル数に対して多すぎると不安定になります。
特に回帰系モデルでは「サンプル数 ≫ 特徴量数」を意識するのが基本です。
説明変数の重要度と解釈
モデルがどの説明変数を重視しているかを知ることは、信頼性の高い分析につながります。
- 線形モデル:係数の符号や大きさが影響方向・強度を示す
- 決定木系モデル:
feature_importances_によって重要度を算出 - SHAP値 / LIME:非線形モデルでも「個々の予測に対してどの変数が影響したか」を説明可能
実務での注意点
- 因果関係と相関の混同に注意
説明変数は目的変数と「関連がある」ことを示すものであり、必ずしも「原因」ではありません。 - 多重共線性に気をつける
線形回帰モデルでは、変数同士の強い相関が係数推定を不安定にします。
決定木系では予測精度への影響は小さいものの、変数重要度の解釈には注意が必要です。 - ドメイン知識の活用
データ分析だけでなく、ビジネスや業務の知見を反映した変数設計が精度向上の鍵になります。
まとめ
| 観点 | 内容 |
|---|---|
| 定義 | モデルが目的変数を予測するための入力データ |
| 別名 | 特徴量、入力変数 |
| 主な種類 | 数値・カテゴリ・時間・非構造データ |
| 前処理 | 標準化・正規化・エンコーディング・欠損補完 |
| 選定方法 | 相関分析・モデル重要度・正則化など |
| 注意点 | 因果関係の誤解、多重共線性、変数の選びすぎに注意 |
以上、機械学習の説明変数についてでした。
最後までお読みいただき、ありがとうございました。
