GoogleのMMM Meridianの特徴
はじめに
2023年3月、GoogleからMeridianというMarketingMixModel(以下、MMM)のパッケージが一部公開されました。
Googleは以前からLight weight MMMというライブラリをオープンソースで公開していたので、それが更新された形になります。Meridianが一般公開されると、LMMMは廃止されるそうです。
Meridianは、これまでGoogleが投稿してきたMMM系の論文の知見が総結集したようなパッケージになっていて、理解が少し難しいです。本記事では、MMMの基礎についてはある程度知識がある方向けに、Meridianについて説明していきます。
MMMの基本については他に詳しい記事がたくさんありますのでそちらを参考にして頂きたいですが、MMMを簡単に言うと、「目的変数に事業KPI、説明変数にメディア出稿やその他マーケティング施策を設定した重回帰ベースのモデルによって、マーケティング効果検証&予算配分最適化を実行するソリューション」、という程度に捉えて頂ければ問題ないと思います。
本記事のまとめ
最初に、本記事のまとめとして、Meridianの特徴を記載してしまいます。
モデルの構造に特に興味がない方は、下記の要点だけ把握して頂けると良いと思います。
・マーケティングのベースラインが時間によって変化する
・Reach & Frequencyを説明変数に利用したMMMである
・因果推論の考え方を組み込んでいる
・地域粒度のデータに分割したモデリングを推奨している
・ビジネス知見を事前分布としてモデルに反映させやすい
以下では、モデル構造についても少し踏み込んで説明していきます。
一般的なMMMとの共通点
次に、一般的なMMMで実現されている内容との共通点について、簡単に示しておきます。これだけじゃないかもしれませんが。
アドストックの考慮
アドストックは、広告効果が複数期間にわたって残存する性質や、遅延して発生する性質を表現するための考え方です。
一番簡単な考え方だと、1週目に接触した広告の効果が2週目には0.7倍、3週目には0.49倍などと、定数倍で減衰していくgeometric adstock(幾何減衰)の表現があります。
少し発展的な方法としては、Meta社のMMMライブラリであるRobynなどで実装されている、Weibull分布を用いたadstock表現などがあります。Weibull分布と用いることのメリットは、広告効果が最大値を迎えるまでに遅延が発生することを表現できる(delayed adstock)ことです。
Meridianでのアドストックは、geometric adstockのみを採用しているようです。つまり、広告効果が遅れて大きくなることの表現はできません。この部分は少し意外に思いました。というのも、Googleは、例えば(Jin et al. 2017)など、過去の論文でも遅延効果を表現できるアドストックを利用していたためです。
日用消費財であれば広告にあたってすぐ購買するようなことも想定しやすいですが、例えば電化製品やブランド物など、検討期間を長く要する商材に対して、幾何減衰のみでのモデリングというのは、少し不安が残ります。
adstockのみに注目すると、Meridianは柔軟性が高いとは言えないように思います。
広告効果の飽和の表現について
Googleが以前出していたLight weight MMMなどでは、広告効果の飽和に、Hill関数を用いた表現がされていました。Meridianでも同様、Hill関数を用いて広告効果の飽和が表現されています。
具体的には次の式となります。
$$\text{Hill}(x; ec, \text{slope}) = \frac{1}{1 + \left(\frac{x}{ec}\right)^{-\text{slope}}}$$
$ec$は、非負の値で半飽和点(広告効果が最大値の半分に達する点)を意味し、この値が大きいほど広告効果が飽和に達する点が大きくなります。$x=ec$を代入した次式が1/2となることからも確認できます。
$slope$も非負の値であり、$slope \leq 1$のときに飽和曲線がC字曲線(飽和曲線が凹関数)、$slope > 1$のときに飽和曲線がS字曲線(半飽和点までは凸関数、半飽和点以降が凹関数)となります。
Hill関数はC字曲線もS字曲線も表現できるので、柔軟な表現と言ってよいでしょう。
ベイズ推定
アドストックや飽和曲線のパラメータは、MCMCを用いたベイズ推定が用いられます。モデルにビジネス知見を反映させやすいこともあり、MMMのパラメータ推定はベイズ推定が業界標準になっている印象があります。
事前分布の詳細についてはこちらに詳しく記載がある通り、推定するパラメータに応じて様々な種類の分布が用いられていることがわかります。
メディア予算配分の最適化まで実行可能
Meridianでは、予算配分の最適化も実装されています。一定の予算の中で、目的変数の値を最大化する機能があるようです。その際、総予算が一定以下になるような制約や、ROIの値が一定以上になるような制約も加えることが可能です。
Meridian固有の特徴として後述しますが、説明変数の入れ方によっては、最適な予算だけでなく最適なR&Fのアウトプットも可能です。
Meridianの特徴
まずはモデル構造を下記に示します。
\[ y_{g,t} = \mu_t + \tau_g + \sum_{c=1}^{C} \gamma_{c,g} z_{g,t,c} \\ + \sum_{m=1}^{M} \beta_{g,m} \, \text{HillAdstock}\left( \left\{ x_{g,t-s,m} \right\}_{s=0}^{L}; \alpha_m, ec_m, \text{slope}_m \right) \\ + \sum_{n=1}^{N} \beta^{(\text{rf})}_{g,n} \, \text{Adstock}\left( \left\{ r_{g,t-s,n} \cdot \text{Hill}\left( f_{g,t-s,n}; ec^{(\text{rf})}_n, \text{slope}^{(\text{rf})}_n \right) \right\}_{s=0}^{L}; \alpha^{(\text{rf})}_n \right) \\ + \varepsilon_{g,t} \]
こちらをベースに、Meridianの特徴的な部分を深堀していきましょう。
モデルの切片(ベースライン)が時間によって変化する
こちらによると、MMMの回帰の切片は、目的変数のベースラインの推移のことと記載されています。ベースラインとは、マーケティング活動や季節性、その他の目的変数に影響を与える外的要因(新商品リリースや競合の要因など)がない場合のKPIの推移のことを示しているようです。
これまでのMMMでは、切片の値は定数で表現され、時間によって変化しないとされることが多かったように思います。
Meridianでは、切片の値が時間によって変化するものとして表現されます。元論文である(Ng et all 2021)では、切片に加えて回帰係数(メディア効率)も時間によって変化するモデルが提案されており、提案モデルによって、回帰係数の推定誤差が小さくなること、また、目的変数の予測精度が向上することが示されています。
目的変数の予測精度が高まる点、メディア効果の推定精度が高まる点は、Meridianの大きなメリットといって良さそうです。
Reach & Frequencyを説明変数に利用したMMM
一般的なMMMは、説明変数として、各広告媒体のimp数や出稿金額を利用します。
Meridianでは、これらの変数を用いたモデリングはもちろん、Reach & Frequencyのデータを説明変数として用いたモデリングも提供しています(以下、R&F MMM)。
通常は各メディアについてimp数や出稿金額などの1変数を説明変数として用いますが、R&F MMMでは、各メディアについて、ReachとFreaquencyという2変数を説明変数として用いるようです。そのうえで、アドストックと飽和曲線については、通常のMMMで利用される変換と同じものを利用するとのこと。
式を見ると、R&Fデータが集まる媒体についてはR&Fを説明変数として利用し、その他の媒体については通常通り出稿金額などを説明変数として利用する、ということが可能なようです。面白いですね。
R&F MMMの詳細は(Zhang et al. 2023)に記載がありますが、説明変数部分以外のモデルの基本構造は、下に記載しているGBHMMMと同じものが利用されています。
因果推論(Causal Inference)の考え方を組み込んでいる
(Chan and Perry, 2017)や、(安永ら 2022)にも記載がありますが、MMMに因果推論の考え方を取り入れることは、以前からMMMの課題として挙げられていました。
Meridianでは特に検索広告の効果推定の際に、(Chen et al. 2018)で提案されていた手法をベースに、因果推論の考え方を用いることができます。
具体的には、検索連動広告が目的変数(ここでは売上とします)に対して与える影響を計測する際に、検索量(≒潜在的な需要)という変数が交絡因子となって検索連動広告の出稿と売上の双方に影響を与えてしまい、広告効果の推定値にバイアスが発生します。Googleの保有する検索量データを用いて、この部分を補正することが可能となります。
Meridianでは、このデータの利用についてもサポートを行っており、検索量データ/リスティング広告系のデータなど合わせて、こちらから利用申請が可能なようです。
地域粒度のデータに分割したモデリングを推奨している
こちらはGoogleが以前論文を出していた、geo-level Bayesian hierarchical MMM (GBHMMM)の考え方に基づくものです。和訳すると、地域レベル階層ベイズMMM、などでしょうか。
一般的なMMMでは、エリアを細かく分けず、合計値のデータを用いてモデリングされることが多いです。Meridianでは、エリアを複数に分けることでサンプルサイズを増やし、推定精度を向上させることを推奨しています。これまでは全国でまとまった変数情報として利用していたものを、関東・関西・その他、といったような形でデータを分割してモデルに組み込むイメージですね。
エリア粒度のデータは、ただ分割してモデルに組み込むだけではなく、ランダム係数のモデルとして表現されます。下記の通り、メディアmのエリアgの回帰係数であるβm,gが、メディアm全体の係数βmを事前分布の平均にもつとして制御されているという式です。メディアmには全国で共通の傾向がありつつ、エリアによって誤差が生まれることを表現したモデルです。
\[ y_{t,g} = \tau_g + \sum_{m=1}^{M} \beta_{m,g} \text{Hill}(x^*_{t,m,g}, (\alpha_{m, L}); K_{m}, S_{m}) + \sum_{c=1}^{C} \gamma_{c,g} z_{t,c,g} + \epsilon_{t,g}, \] \[ \beta_{m,g} \overset{\mathrm{iid}}{\sim} \text{normal}(\beta_{m}, \eta^2_{m}), \quad m = 1, \ldots, M, \] \[ \gamma_{c,g} \overset{\mathrm{iid}}{\sim} \text{normal}(\gamma_{c}, \xi^2_{c}), \quad c = 1, \ldots, C, \] \[ \tau_{g} \overset{\mathrm{iid}}{\sim} \text{normal}(\tau, \kappa^2), \] \[ \epsilon_{t,g} \overset{\mathrm{iid}}{\sim} \text{normal}(0, \sigma^2) \]
詳細は(Sun et al. 2017)に記載されていますが、上記の手法をとることで、回帰係数の推定値の標準誤差と信頼区間が小さくすることができるようです。一方で、エリア粒度に分けられないメディア情報が増えるほどモデルが悪化するとも記載されているので、できる限り多くの変数をエリア粒度で用意することが必要となります。
ビジネス知見を事前分布としてモデルに反映させやすい
一般的なMMMでも、回帰係数βの事前分布をcalibrationしながら、ビジネス知見をROIに反映させることは実行されていました。しかしそれには、「反復的な処理が必要で時間がかかる」「専門知識が必要となる」というような課題があるということが(Zhang et al. 2023)によって指摘され、改善されています。Meridianでも、ROIの値を直接インプットすることが可能なようです。
(具体的には、ROIとβの変換式をモデル式に反映させることで、ROIを直接事前分布に反映させることを可能にしているよう。このあたり、少し自信がないので、もし間違いなどあればご指摘ください…)
所感
最適化のサポートが、目的変数の最大化のみな点が物足りないことがありそう
こちらをみると、最適化は実装されているようですが、「予算に制約をかけつつ、目的変数を最大化する」という最適化の実装のみのように見えます。
実務では、「目的変数の値が一定以上になるような制約をいれつつ、予算を最小化する」という最適化のニーズも多いです。予算上限というよりは、売上目標から決定するケースあるためです。
Meridianはこの部分のサポートはされていなさそうなので、必要な場合はパッケージ外で再計算する必要がありそうです。
利用の難易度が高そう
R&Fを最適化できるMMM、エリア粒度の情報を用いることで推定精度を向上させられるMMM、因果推論の考え方を取り入れたMMM、という部分だけ聞くと、素晴らしいと思える部分があります。
ただ、それぞれ、用意するデータも今までより増えることには注意しなければなりません。一般的なMMMでも、データを準備するのが非常に骨の折れる作業になることが多いです。そのような状況の中で、これだけ詳細にデータを集めるということを想像すると、正直言ってやりたいとは思えません。
また、モデルの解釈も簡単ではないです。Meridianでは通常のMMMに必要な知見に加えて、エリアの異質性を表現するランダム効果、時変切片、Structual Causal Model周辺の因果推論の知見、…、など、幅広い分析知見が必要になります。オープンソースのパッケージになっているとはいえ、広告会社のプランナーが簡単に使えるツール、ということにはならないでしょう。(そもそもMMMを用いた意思決定と実行・検証が難しいので、簡単に使えるわけないといえばその通り。)
工数と意思決定に必要なデータアウトプットを見極めて、状況に応じて適切なMMMを選択する必要があるように思いました。
まとめ
Meridianには、下記のような特徴がありました。
・マーケティングのベースラインが時間によって変化する
・Reach & Frequencyを説明変数に利用したMMMである
・因果推論の考え方を組み込んでいる
・地域粒度のデータに分割したモデリングを推奨している
・ビジネス知見を事前分布としてモデルに反映させやすい
概念としては素晴らしいMMMのように思いますが、活用の難易度が高まるので、状況に応じて適切なMMM手法を選択するのが必要に思います。時には、これまで実行していた通常のMMMの方が使いやすく、意思決定に直結するようなこともあるでしょう。
今だとこちらからMeridianのearly access申請が可能なようなので、気になった方は申請してみてください。
参考文献
・https://developers.google.com/meridian
・Media Mix Model Calibration With Bayesian Priors
・Bayesian Time Varying Coefficient Model with Applications to Marketing Mix Modeling
・Bias Correction For Paid Search In Media Mix Modeling
・https://www.impressiondigital.com/blog/google-meridian-what-you-need-to-know/