標準のメリディアン モデルは地域レベルの階層モデルで、メディア変数に非線形パラメータ変換が適用されます。ランダム係数が地理的地域間の異質性を考慮します。
地域レベルのデータを使って、推定の信頼性を高めることをおすすめします。全国モデル(本質的に単一地域モデル)は、地域レベルのデータが利用できない場合に使用できます。詳しくは、全国レベルのモデリングをご覧ください。
メリディアン モデルは、過去に提案されたベイズモデル(Jin et al. 2017 および Sun et al. 2017)の拡張版です。拡張版では、リーチとフリークエンシーのデータが使用され(Zhang et al. 2023)、傾向と季節性をモデル化するため時間変動切片項(Ng et al. 2021 による傾向と季節性のモデリング関連)が追加されています。また、メディア以外のトリートメント変数とオーガニック メディア変数も追加されています。
このモデルは次のように表されます。
基本情報
基本情報は次のとおりです。
- インデックス変数(入力データの中で定義): - \(g=1,\ldots,G\) は、地理的単位をインデックスに登録
- \(t=1,\ldots,T\) は、時間単位をインデックスに登録
- \(i=1,\ldots,N_C\) はコントロール変数をインデックスに登録します。
- \(i=1,\ldots,N_N\) は、メディア以外のトリートメントをインデックスに登録します。
- \(i=1,\ldots,N_M\) は、リーチとフリークエンシーのデータがない有料メディア チャネルをインデックスに登録します。
- \(i=1,\ldots, N_{OM}\) は、リーチとフリークエンシーのデータがないオーガニック メディア チャネルをインデックスに登録します。
- \(i=1,\ldots,N_{RF}\) は、リーチとフリークエンシーのデータがある有料メディア チャネルをインデックスに登録します。
- \(i=1,\ldots, N_{ORF}\) は、リーチとフリークエンシーのデータがあるオーガニック メディア チャネルをインデックスに登録します。
 
- \(\tau_b = 0\) は、一部のベースライン地域 \(b\)の識別可能性を示します。 - baseline_group引数を使用すると、任意の地域をベースラインとして設定できます。
- \(\{q_{t-s}\}^L_{s=0}\) は、ベクトル\((q_t, q_{t-1}, \ldots, q_{t-L})\)を表します。この表記は、Adstock 関数の入力値を表すために使用されます。 
- 整数値 \(L\) は、メディアの効果が現れるまでの最長時間です(メディア効果の最長継続時間など)。このパラメータは、 - max_lag引数を使用して設定できます。
- \(\text{Hill}()\) 関数と \(\text{Adstock}()\)関数については、次の点にご留意ください。詳しくは、メディアの飽和と遅延と adstock_decay_spec パラメータを設定するをご覧ください。 $$ \text{Adstock} \left( \left\{ q_{t-s} \right\}^L_{s=0},\ \alpha \right) = \dfrac{\sum\limits^{L}_{s=0}\ w(s; \alpha) q_{t-s} }{\sum\limits^L_{s=0}\ w(s; \alpha)} $$- ここで - \(q>0\)
- \(w(s; \alpha) \) は減衰のパラメータ化です。
- \(\alpha\ \in\ [0, 1]\) は減衰パラメータです。
 $$ \text{Hill} \left( q, ec, \text{slope} \right) = \left( 1 + \left( \dfrac{q}{ec} \right)^{- \text{slope} } \right)^{-1} $$- ここで - \(q>0,\ ec>0,\ \text{slope} > 0\)
- \(ec, \text{slope}\) は Hill 関数の形状と傾きのパラメータです。
 
- \(\text{HillAdstock}()\) 関数は - hill_before_adstock引数に依存します。- デフォルトが hill_before_adstock = Falseなら、\(\text{HillAdstock}(q;\ \alpha, ec, \text{slope}) = \text{Hill}(\text{Adstock}(q;\ \alpha);\ ec, \text{slope})\)
- hill_before_adstock = Trueなら、\(\text{HillAdstock}(q;\ \alpha, ec, \text{slope}) = \text{Adstock}(\text{Hill}(q;\ ec, \text{slope}); \alpha)\)
 
- デフォルトが 
\( \mu_t \) パラメータ
\(\mu_t\) パラメータは時間変動する切片で、傾向と季節性の要素をモデルに加えます。
- \(\mu_t\) は、対応するタイムポイント\(s_1,s_2,\dots,s_K\)に配置される一連の - knotパラメータ\(b_1,b_2,\dots,b_K\) によって決まります。
- タイムポイント $s_1,\dots,s_K$ は \(1\) と \(T\) の間に位置し、 - knots引数で指定されます。- ノットの位置のリストを指定することも、ノットの数だけを指定することもできます。 
- ノットの数を指定する場合、ノットは等間隔で配置され、エンドポイント($s_1=1$ と $s_K=T$)に 2 つのノットが配置されます。 
- 複数の地域(\(G>1\))がある場合は、デフォルトで各タイムポイント($s_1=1,s_2=2,\dots,s_K=T$、なお $K=T$)にノットが配置されます。 
- \(G=1\) (全国レベルのモデルなど)の場合、デフォルトは単一のノット(実質的にすべての期間で共通の切片)です。 
 
- \(\mu_t\) 値は、隣接する 2 つのノットの加重平均です。近いノットほど重み付けが高くなります(たとえば、タイムポイント 9 とタイムポイント 18 にノットが配置されているとします。$\mu_{16}$ の推定値は、タイムポイント 9 のノットとタイムポイント 18 のノットの両方の影響を受けますが、タイムポイント 18 のノットにはより大きな重みが付けられます)。正確な重み付けの計算方法は次のとおりです。すべての \(t\)について、次のように定義します。 - $\ell(t)$ と $u(t)$ は、最も隣接するノットのノット インデックスを表します。通常は $\ell(t) < u(t)$ ですが、$t$ がノットの位置と完全に一致する場合、または $t$ が最初のノットの前または最後のノットの後にある場合(カスタム ノットの位置が設定されている場合や、1 つのノットのみを使用している場合など)は、$\ell(t) = u(t)$ になります。 - \(\ell(t) = \max \{\{1\} \cup \{k: s_k \leq t\}\}\) - 注: $t < s_1$ の場合は $\ell(t) = 1$ になります。
 
- \(u(t) = \min \{\{K\} \cup \{k: s_k > t\}\}\) - 注: $u(t) = $t > s_K$ の場合は K$ になります。
 
 
- \(\ell(t) = u(t)\) の場合は\(w(t) = 1\) になります。それ以外の場合は\(w(t) = \dfrac{s_{u(t)}-t}{s_{u(t)}-s_{\ell(t)}}\)になります。 
- \(\mu_t = w(t)b_{\ell(t)} + (1-w(t))b_{u(t)}\) 
 
- ノット値 \(b_1,b_2,\dots,b_K\) は、ユーザー指定の事前分布を持ちます。 
この手法は、ベイズ時変係数モデルとマーケティング ミックス モデリングへの応用に基づいていますが、その論文とは別の重み関数を使用していること、事前分布が異なること、自己回帰が存在しないことなど、いくつか重要な違いがあります。
ノットの設定について詳しくは、knots 引数の仕組みをご覧ください。
その他のパラメータの分布
その他のパラメータの分布は次のとおりです。
- なお、ここで Meridian は、正規分布をその平均と標準偏差を用いてパラメータ化しています。 - \(\gamma_{g,i}^{[C]} \sim \text{Normal}(\gamma_i^{[C]},\xi_i^{[C]})\)
- \(\gamma_{g,i}^{[N]} \sim \text{Normal}(\gamma_i^{[N]},\xi_i^{[N]})\)
 
- \(\beta\) 分布は、次のように - media_effects_dist引数によって異なります。- \(log(\beta_{g,i}^{[M]})\sim \text{Normal}( \beta_i^{[M]},\eta_i^{[M]})\)
- \(log(\beta_{g,i}^{[OM]})\sim \text{Normal}( \beta_{i}^{[OM]},\eta_{i}^{[OM]})\)
- \(log(\beta_{g,i}^{[RF]})\sim \text{Normal}( \beta_{i}^{[RF]},\eta_{i}^{[RF]})\)
- \(log(\beta_{g,i}^{[ORF]})\sim \text{Normal}( \beta_{i}^{[ORF]},\eta_{i}^{[ORF]})\) - media_effects_dist = LOG_NORMALの場合
- \(\beta_{g,i}^{[M]} \sim \text{Normal}( \beta_i^{[M]},\eta_i^{[M]})\) 
- \(\beta_{g,i}^{[OM]} \sim \text{Normal}( \beta_{i}^{[OM]},\eta_{i}^{[OM]})\) 
- \(\beta_{g,i}^{[RF]} \sim \text{Normal}( \beta_{i}^{[RF]},\eta_{i}^{[RF]})\) 
- \(\beta_{g,i}^{[ORF]} \sim \text{Normal}( \beta_{i}^{[ORF]},\eta_{i}^{[ORF]})\) - media_effects_dist = NORMALの場合
 
- \(\epsilon_{g,t}\sim \text{Normal}(0,\sigma_g)\): - 残差は相互に独立しており、すべてのメディア変数と制御変数、すべてのモデル パラメータから独立しています。 
- unique_sigma_for_each_geo = False(デフォルト)の場合は、\(\sigma_1=\sigma_2=\cdots=\sigma_G=\sigma\)です。
 
- 残りのパラメータはすべて、ユーザー指定の事前分布を持ちます。 - \( \{\gamma_i^{[C]}\}, \{\gamma_i^{[N]}\}, \{\xi_i^{[C]}\}, \{\xi_i^{[N]}\}, \) - \( \{\beta_i^{[M]}\}, \{ \beta_{i}^{[OM]} \}, \{ \beta_{i}^{[RF]} \}, \{ \beta_{i}^{[ORF]} \}, \) - \( \{\eta_i^{[M]}\}, \{ \eta_{i}^{[OM]} \}, \{\eta_{i}^{[RF]}\}, \{ \eta_{i}^{[ORF]} \}, \) - \( \{\alpha_i^{[M]}\}, \{ \alpha_{i}^{[OM]} \}, \{\alpha_{i}^{[RF]}\}, \{ \alpha_{i}^{[ORF]} \}, \) - \( \{ec_i^{[M]}\}, \{ ec_{i}^{[OM]} \}, \{ec_{i}^{[RF]}\}, \{ ec_{i}^{[ORF]} \}, \) - \( \{slope_i^{[M]}\}, \{ slope_{i}^{[OM]} \}, \{slope_{i}^{[RF]}\}, \{ slope_{i}^{[ORF]} \}, \) - \( \{\tau_g\}, \{\sigma_g\}. \) 
モデル仕様の一部は、以降のセクション(メディアの飽和と遅延、リーチとフリークエンシー、有料検索、ROI 事前分布と調整、adstock_decay_spec パラメータを設定する、max_lag パラメータを設定する、ノットを設定する)で説明されているモデリング オプションに基づいて変更できます。また、デフォルトの事前分布をカスタマイズすることもできます。
