Ottimizzazione per i canali media senza dati su copertura e frequenza

Supponiamo che tu voglia calcolare un'ottimizzazione del budget per \(N_M\) canali media per un insieme di regioni \(G\) e intervalli di tempo \([t_0,t_1]\). Prendi in considerazione qualsiasi vettore di budget \(b=(b_1,\ldots b_{N_M})\) dove \(b_i \geq 0\) indica il budget totale allocato al canale \(i\) in queste regioni e periodi di tempo. Sia \(c_i=\sum\limits_{g \in G} \sum\limits_{t=t_0}^{t_1}\ \ddot{x}^{[M]}_{g,t,i} u_{g,t,i}^{[M]}\) il budget storico effettivo per ogni canale \(i\) nei periodi di tempo e nelle regioni di ottimizzazione. Per ottenere le unità di misura per ogni periodo di tempo e area geografica nel vettore del budget \(b\), moltiplica le unità di misura storiche di ciascun canale per il rapporto\(\frac{b_i}{c_i}\).

Di conseguenza, definisci le unità media non elaborate in base a un determinato vettore di budget \(b\) come:

\( \ddot{x}_{g,t,i}^{[b]} = \dfrac{\ddot{x}^{[M]}_{g,t,i}b_i }{c_i}\) per \(t \in [t_0-L,t_1] \)

e le unità di contenuti multimediali trasformate corrispondenti come:

\( x_{g,t,m}^{[b]} = L_{g,i}^{[M]}\left( \ddot{x}_{g,t,i}^{[b]} \right) = \dfrac{x_{g,t,i}b_i}{c_i} \)

Le unità di misura dei contenuti multimediali sono scalate per tutti i periodi di tempo, inclusi quelli precedenti \(t_0\). Il budget \(C\) corrisponde all'intervallo di tempo \([t_0,t_1],\) e questo scenario acquisisce il risultato previsto generato durante lo stesso intervallo \([t_0,t_1]\). Sono inclusi i risultati generati dai contenuti multimediali eseguiti prima del giorno \(t_0\), ma non l'effetto ritardato dei contenuti multimediali successivi al giorno \(t_0\).\(t_1\)Di conseguenza, il risultato previsto non corrisponde esattamente al budget, ma dovrebbe essere simile se l'intervallo di tempo è lungo o se l'esecuzione dei media durante \([t_0-L,t_0-1]\) è simile a quella durante\([t_1+1,t_1+L]\).

Questa definizione presenta vantaggi e svantaggi, ma un vantaggio è che il risultato previsto non dipende dall'esecuzione futura dei media oltre \(t_1\), che potrebbe essere sconosciuta. Questo è un problema particolarmente grave quando hill_before_adstock=False, in quanto l'esecuzione dei contenuti multimediali dopo\(t_1\) può alterare l'effetto ritardato dei contenuti multimediali eseguiti durante\([t_1+1,t_1+L]\).

Ottimizzazione del budget fisso

Valuta la possibilità di eseguire un'ottimizzazione del budget fisso con budget totale \(C\). Definisci l'insieme di tutti i vettori di budget con questo budget totale come \( B_C = \left\{ b: \sum\limits_{i=1}^{N_M} b_i=C \right\} \). La quantità da ottimizzare è il risultato previsto, definito come segue:

$$ \begin{multline*} \text{ExpectedOutcome}(b) = \sum\limits_{g \in G} \sum\limits_{t=t_0}^{t_1} E \left( \overset \sim Y_{g,t}^{ \left( \left\{ x_{g,t,i}^{[b]} \right\} \right) } \Bigg| \{z_{g,t,i}\} \right) \\ = \sum\limits_{g \in G} \sum\limits_{t=t_0}^{t_1} u_{g,t}^{[Y]}L_{g,t}^{[y]-1} \left( \mu_t + \tau_g + \sum\limits_{i=1}^{N_C} \gamma^{[C]}_{g,i}z_{g,t,i}\ + \sum\limits_{i=1}^{N_M} \beta^{[M]}_{g,i} \text{HillAdstock} \left( \left\{ x_{g,t-s,i}^{[b]} \right\}_{s=0}^L; \alpha^{M}_i, ec^{[M]}_i, \text{slope}^{[M]}_i \right) \right) \end{multline*} $$

I valori veri dei parametri sono sconosciuti. Poiché Meridian è un modello bayesiano, il risultato previsto ha una distribuzione a posteriori. La funzione di obiettivo dell'ottimizzazione del budget viene scelta come la media posteriore del risultato previsto, che è equivalente alla media della distribuzione del risultato previsivo posteriore. Il vettore del budget ottimale è definito come:

$$ \begin{align*} b_{optimal} = \underset{b \in B_C}{\text{argmax}}\ & E\left[ \text{ExpectedOutcome}(b) | \text{Data} \right] \\ = \underset{b \in B_C}{\text{argmax}}\ & \frac{1}{J} \sum\limits_{j=1}^J \sum\limits_{g \in G} \sum\limits_{t=t_0}^{t_1}u_{g,t}^{[y]}L_{g,t}^{[Y]-1} \Biggl( \mu_t^{(j)} + \tau_g^{(j)} + \sum\limits_{i=1}^{N_C} \gamma_{g,i}^{[C](j)}z_{g,t,i} \\& + \sum\limits_{i-1}^{N_M} \beta_{g,i}^{[M](j)} \text{HillAdstock} \left( \left\{ x_{g,t-s,i}^{[b]} \right\}_{s=0}^L; \alpha_i^{[M](j)}, ec_i^{[M](j)}, \text{slope}_i^{[M](j)} \right) \Biggl) \\ = \underset{b \in B_C}{\text{argmax}}\ & \frac{1}{J} \sum\limits_{j=1}^J \sum\limits_{g \in G} \sum\limits_{t=t_0}^{t_1}u_{g,t}^{[Y]}L_{g,t}^{[Y]-1} \left( \sum\limits_{i=1}^{N_M} \beta_{g,i}^{[M](j)} \text{HillAdstock} \left( \left\{ x_{g,t-s,i}^{[b]} \right\}_{s=0}^L; \alpha_i^{[M](j)}, ec_i^{[M](j)}, \text{slope}_i^{[M](j)} \right) \right) \end{align*} $$

Dove:

  • \(J\) è il numero totale di estrazioni posteriori della catena di Markov Monte Carlo (MCMC).
  • Il \(j\)th esito posteriore di ciascun parametro è indicato con il superscritto \(^{(j)}\).

Ottimizzazione del budget flessibile

Per l'ottimizzazione del budget flessibile, il risultato previsto viene ottimizzato, consentendo al contempo di variare il budget totale. L'ottimizzazione è limitata dal ROI marginale minimo o dai vincoli del ROI target.

Vincolo ROI target

Quando viene specificato il ROI target, Meridian ha cercato in tutti i vettori di budget \(b=(b_1,\ldots ,b_{N_M})\) in modo che il ROI totale \(\text{ROI} \geq \text{ROI}_{target}\ \forall m\), pur consentendo di variare il budget totale \(\sum\limits_{i=1}^{N_M} b_i\). Il vettore del budget ottimale è definito come segue:

$$ \begin{align*} b_{optimal} = \underset{b}{\text{argmax}}\ & E\left[ \text{ExpectedOutcome}(b) | \text{Data} \right] \\ = \underset{b}{\text{argmax}}\ & \frac{1}{J} \sum\limits_{j=1}^J \sum\limits_{g \in G} \sum\limits_{t=t_0}^{t_1}u_{g,t}^{[Y]}L_{g,t}^{[Y]-1} \Biggl( \mu_t^{(j)} + \tau_g^{(j)} + \sum\limits_{i=1}^{N_C} \gamma_{g,i}^{[C](j)}z_{g,t,i} \\ & + \sum\limits_{i-1}^{N_M} \beta_{g,i}^{[M](j)} \text{HillAdstock} \left( \left\{ x_{g,t-s,i}^{[b]} \right\}_{s=0}^L; \alpha_i^{[M](j)}, ec^{[M](j)}_i, \text{slope}_i^{[M](j)} \right) \Biggl) \\ = \underset{b}{\text{argmax}}\ & \frac{1}{J} \sum\limits_{j=1}^J \sum\limits_{g \in G} \sum\limits_{t=t_0}^{t_1}u_{g,t}^{[Y]}L_{g,t}^{[Y]-1} \left( \sum\limits_{i=1}^{N_M} \beta_{g,i}^{[M](j)} \text{HillAdstock} \left( \left\{ x_{g,t-s,i}^{[b]} \right\}_{s=0}^L; \alpha_i^{[M](j)},ec_i^{[M](j)},\text{slope}_i^{[M](j)} \right) \right) \\ \end{align*} $$

\( s.t.\ \dfrac{\sum\limits_{i=1}^{N_M} \text{ExpectedOutcome}_i}{ \sum\limits_{i=1}^{N_M} b_i } > \text{ROI}_{target} \)

Se la limitazione del ROI target viene applicata a livello di ROI di marketing totale e non a livello di canale.

Vincolo di mROI minimo

Quando viene specificato il ROI marginale minimo, Meridian esegue una ricerca in tutti gli vettori di budget \(b=(b_1,\dots,b_{N_M})\) in modo che il ROI marginale\(\text{mROI}_i \geq \text{mROI}_{minimal}\ \forall i\), pur consentendo al budget totale \(\sum\limits_{i=1}^{N_M} b_i\) di variare. Il vettore del budget ottimale è definito come segue:

$$ \begin{align*} b_{optimal} = \underset{b}{\text{argmax}}\ & E\left[ \text{ExpectedOutcome}(b) | \text{Data} \right] \\ = \underset{b}{\text{argmax}}\ & \frac{1}{J} \sum\limits_{j=1}^J \sum\limits_{g \in G} \sum\limits_{t=t_0}^{t_1}u_{g,t}^{[Y]}L_{g,t}^{[Y]-1} \Biggl( \mu_t^{(j)} + \tau_g^{(j)} + \sum\limits_{i=1}^{N_C} \gamma_{g,i}^{[C](j)}z_{g,t,i} \\ & + \sum\limits_{i-1}^{N_M} \beta_{g,i}^{[M](j)} \text{HillAdstock} \left( \left\{ x_{g,t-s,i}^{(b)} \right\}_{s=0}^L; \alpha_i^{[M](j)}, ec_i^{[M](j)}, \text{slope}_i^{[M](j)} \right) \Biggl) \\ = \underset{b}{\text{argmax}}\ & \frac{1}{J} \sum\limits_{j=1}^J \sum\limits_{g \in G} \sum\limits_{t=t_0}^{t_1}u_{g,t}^{[Y]}L_{g,t}^{[Y]-1} \left( \sum\limits_{i=1}^{N_M} \beta_{g,i}^{[M](j)} \text{HillAdstock} \left( \left\{ x_{g,t-s,i}^{(b)} \right\}_{s=0}^L; \alpha_i^{[M](j)},ec_i^{[M](j)},\text{slope}_i^{[M](j)} \right) \right) \\ \end{align*} $$

\( s.t.\ \text{mROI}_i(b_i) > \text{mROI}_{minimal}\ \forall i \)

Se il ROI medio minimo viene applicato a livello di canale e non a livello di marketing totale.

Vincoli di spesa a livello di canale

I vincoli di spesa a livello di canale sono disponibili sia per l'ottimizzazione del budget fisso sia per quella del budget flessibile per evitare risultati di ottimizzazione irragionevoli, ad esempio l'allocazione di tutta la spesa in un unico canale. Il vincolo di spesa a livello di canale è definito come:

$$ (b_i^{'} \times LB_i) \leq b_i \leq (b_i{'} \times UB_i) \space \forall i $$

Dove:

  • \(b_i^{'}\) è la spesa non ottimizzata per il canale \(i\).
  • \(LB_i\) è il limite inferiore specificato dall'utente con un valore compreso tra \(0\) e \(1\).
  • \(UB_i\) è il limite superiore specificato dall'utente con un valore maggiore di \(1\).