新規チャネル追加時のMMM更新ベストプラクティス
新チャネル追加の難しさ
既存のMMMモデルに新しい広告チャネル(例:TikTok、CTV、Podcast)を追加する際、大きな課題が生じます:
データ不足問題:
- 新チャネルは数週間〜数ヶ月のデータしかない
- 既存チャネル(104週)と比較してデータ量が不均等
- 少ないデータでは係数推定が不安定
アプローチ1:強い事前分布で補完
データが少ない場合、業界知識を事前分布として反映することで安定した推定が可能です:
import pymc as pm
# TikTok広告の事前知識
# - 短尺動画で即効性が高い → alpha低め
# - 若年層に強い → 特定商品カテゴリで高ROI
# - 業界平均ROIは約2x前後
mmm = MMM(
...,
channel_columns=["tv", "google", "meta", "tiktok"], # tiktokを追加
adstock_prior={
"alpha": {
"tiktok": pm.Beta.dist(alpha=1.5, beta=3), # 低α(即効性)
}
},
saturation_prior={
"lam": {
"tiktok": pm.HalfNormal.dist(sigma=2.0), # 広めの不確実性
}
}
)