O Meridian exige que as distribuições sejam transmitidas para a calibragem do ROI. Definir distribuições a priori personalizadas usando resultados de experimentos anteriores é uma boa abordagem, mas há muitas nuances a serem consideradas. Exemplos:
O tempo do experimento em relação à janela de tempo da MMM: talvez os resultados não estejam relacionados se o experimento tiver sido realizado antes ou depois da janela da MMM.
A duração do experimento: talvez experimentos de curta duração não capturem bem os efeitos de longo prazo da eficácia do marketing.
A complexidade do experimento: se ele envolver uma mistura de canais, é possível que os resultados não forneçam insights claros sobre a performance de cada canal.
Diferenças na estimação usada em experimentos e na MMM. Por exemplo, o contrafactual da MMM é gasto nulo, mas pode ser diferente em alguns experimentos, como gasto reduzido.
Diferenças na população: a segmentação no experimento e na MMM pode não ser a mesma.
Recomendamos definir as distribuições a priori de acordo com sua confiança na eficácia de um canal. Uma crença a priori pode ser baseada em vários fatores, como experimentos ou outras análises confiáveis. Use a solidez dela para informar o desvio padrão da distribuição a priori:
Se você realmente acredita na eficácia de um canal, use um fator de ajuste no desvio padrão da distribuição a priori para refletir isso. Por exemplo, suponha que você realizou vários experimentos para um canal e todos geraram estimativas de ponto de ROI semelhantes ou que tenha dados históricos de análises anteriores da MMM que comprovem a eficácia desse canal. Nesse caso, defina um desvio padrão menor para que a distribuição não varie muito, indicando que você confia nos resultados experimentais.
Por outro lado, é possível que o experimento não seja traduzido para a MMM, considerando algumas das nuances já listadas. Nesse caso, aplique um fator de ajuste ao desvio padrão da distribuição a priori. Por exemplo, você pode definir um desvio maior dependendo do seu nível de ceticismo.
Considere usar o argumento roi_calibration_period
em ModelSpec
. Para mais informações, consulte Definir o período de calibragem do ROI.
É comum usar a distribuição a priori LogNormal
. O exemplo de código a seguir pode ser usado para transformar a média e o erro padrão do experimento na distribuição a priori LogNormal
:
import numpy as np
def estimate_lognormal_dist(mean, std):
"""Reparameterization of lognormal distribution in terms of its mean and std."""
mu_log = np.log(mean) - 0.5 * np.log((std/mean)**2 + 1)
std_log = np.sqrt(np.log((std/mean)**2 + 1))
return [mu_log, std_log]
No entanto, se os resultados de experimentos anteriores forem próximos de zero, considere se as suas crenças a priori são representadas com acurácia por uma distribuição não negativa, como a LogNormal
. Recomendamos representar a distribuição a priori para confirmar se ela corresponde às suas intuições antes de prosseguir com a análise. O exemplo de código a seguir mostra como receber novos parâmetros LogNormal
, definir a distribuição e extrair amostras dela.
import tensorflow as tf
import tensorflow_probability as tfp
# Get reparameterized LogNormal distribution parameters
mu_log, std_log = estimate_lognormal_dist(mean, std)
mu_log = tf.convert_to_tensor(mu_log, dtype=tf.float32)
std_log = tf.convert_to_tensor(std_log, dtype=tf.float32)
# Define the LogNormal distribution
lognormal_dist = tfp.distributions.LogNormal(mu_log, std_log)
# Draw 10,000 samples
lognormal_samples = lognormal_dist.sample(10000).numpy()