Learn how to select the best priors for your Bayesian Marketing Mix Modeling in Morpheus. Understand what each hyperparameter controls and how to fine-tune them for better marketing insights.
Introduction
When building a Marketing Mix Model (MMM) in Morpheus, one of the most important steps is setting the right priors, also known as hyperparameters. These values define how your model behaves before it sees the actual data, and they can make a big difference—especially when your dataset is small or noisy.
In this article, we'll explain in simple terms:
-
What priors are,
-
What each Morpheus hyperparameter does,
-
And how to adjust them based on your marketing knowledge.
What Are Priors in Marketing Mix Modeling?
In Bayesian modeling (which Morpheus uses), priors express our expectations before analyzing the data. For example:
-
If you believe TV usually has a small, delayed effect, you can use a prior that reflects this.
-
If you’re unsure about a parameter, you can leave it “open” using a weak or neutral prior.
Think of priors as guidelines for the model. The more confident you are, the stronger your guideline should be.
Default Morpheus Priors Explained
Here’s a breakdown of the default priors used by Morpheus and what they mean in plain language:
Hyperparameter | What it controls | Default Prior | What it means for marketers |
---|---|---|---|
intercept | Base level of sales without media or trend | Normal(0.2, 2) | Expected baseline sales; broad range to let data decide |
saturation_beta | How fast channels reach saturation | HalfNormal | Ensures the curve bends (diminishing returns); can't be negative |
saturation_lam | How sharp the saturation curve is | Gamma(3, 1) | Moderate curve steepness; higher values = faster saturation |
gamma_control | Effect of control variables (e.g. price, season) | Laplace(2, 0.2) | Strong but sparse influence expected from control variables |
gamma_fourier | Strength of seasonality | Normal(0, 0.3) | Seasonality is centered around 0 but allowed moderate influence |
likelihood | Noise or uncertainty in observed data | Normal | Assumes errors are normally distributed around predicted values |
adstock_alpha | Decay of media effect over time | Beta(2, 2) | Assumes carryover, but not too persistent or too short |
peak_effect_delay | Delay until media impact peaks | Beta(1, 4) | Most impact is assumed to happen early, within a few days |
coef_trend | Long-term trend component | Normal(0, 1.5) | Allows for slow, steady trends (positive or negative) |
How to Adjust Priors Based on Your Marketing Knowledge
1. Use Your Campaign Experience
If you’ve run campaigns before, you probably have some expectations:
-
TV takes time to build impact → set a higher delay or stronger adstock.
-
Facebook Ads quickly drive conversions but saturate → set lower saturation lam.
You can modify these priors in Morpheus to reflect your intuition, especially if the data sample is small.
2. Start Simple, Then Refine
If you're not sure about a parameter:
-
Use the default prior.
-
Run your model and check the results.
-
Then adjust one prior at a time to see how results change.
This approach is especially useful for sensitivity analysis, which helps confirm your model is stable and not overly dependent on any one assumption.
3. Avoid Making Priors Too Tight
Don’t try to force the model to confirm your belief by setting extremely narrow priors. For example:
-
A Normal(0.2, 0.01) prior on the intercept tells the model: “I’m 100% sure baseline sales are exactly 0.2” — which might be risky.
-
Instead, use something like Normal(0.2, 2) to say: “I think it’s around 0.2, but I’m open to a wide range.”
4. Test What Happens When You Change Priors
Good practice in MMM includes testing:
-
What happens if you increase the variance in a prior?
-
Does the media ROI change drastically?
-
If yes, your model might be too sensitive and needs more data or better regularization.
Common Pitfalls to Avoid
Problem | What’s Happening | What to Do |
---|---|---|
Model results change too much | Priors too strong or too weak | Try using more moderate priors |
Unstable or weird results | Data can’t guide the model enough | Use more informative priors or simplify model |
Channels show zero effect | Over-regularized priors (too tight) | Loosen the prior (increase standard deviation) |
Model ignores control vars | Prior assumes they’re irrelevant | Use a more neutral or wider prior (e.g. Laplace(0,1)) |
Auto-adjusting Hyperparameters with New Data
One of the most powerful upcoming features in Morpheus will be the ability for your model to auto-adjust hyperparameters as new data becomes available.
Currently, each time you retrain a model with new data, you manually review or reset your priors. But in the near future, Morpheus will support incremental learning, meaning:
-
You train your model once with initial priors.
-
As new data (e.g. monthly performance) is added, Morpheus will update the priors based on what it has learned.
-
This creates a smarter, adaptive modeling process without starting from scratch.
Why this matters:
-
Saves time for recurring MMM analyses.
-
Builds better long-term insights as the model “learns” from ongoing campaigns.
-
Reduces risk of overfitting on small datasets, since past knowledge is preserved and refined.
Summary
Choosing priors in Morpheus doesn’t require deep statistical knowledge—but it does require marketing intuition. Ask yourself:
-
What do I already know about how this channel works?
-
Should the model have flexibility, or do I want to guide it more?
-
Am I testing how my assumptions affect the outcome?
By understanding what each hyperparameter controls, and how it relates to marketing behavior, you can fine-tune your models for better, more reliable results.