メインコンテンツへスキップ
データ分析Basic

MMMのデータ準備:変数の正規化・標準化の実践ガイド

TV広告費5000万円 vs メール費10万円──スケールの異なる変数を正しく処理しないとMCMCが不安定になります。実践的な正規化・標準化の手法を解説します。

MMM Lab 編集部2026/2/233分で読める6

MMMのデータ準備:変数の正規化・標準化の実践ガイド

なぜスケール調整が必要か?

MMMで複数チャネルを扱う際、変数間のスケール差異が問題になります:

  • TV広告費:週次 5,000万円
  • メール広告費:週次 10万円

この500倍の差がある変数をそのままMCMCに投入すると、サンプリングが非常に不安定になります。

3つの変換手法

1. 最大値正規化(Max Normalization)

X_normalized = X / X.max()  # 値域:[0, 1]

用途:スペンド変数のデフォルト選択 メリット:直感的で解釈しやすい デメリット:外れ値に敏感

2. z-score 標準化

X_std = (X - X.mean()) / X.std()  # 平均0、標準偏差1

用途:気温・競合指数などのコントロール変数 メリット:正規分布に近い変数で最も安定 デメリット:負の値が出るのでスペンドには不自然

3. ログ変換

import numpy as np
X_log = np.log1p(X)  # log(x + 1)でゼロ値を安全処理

用途:右裾が重い売上データや広告費 デメリット:係数の解釈が乗法的になる

続きはBasicプランで読めます

この先の内容(詳細な分析結果・具体的な数値・施策の全容)はBasicプラン以上のメンバー限定です。

関連記事