You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hello,
I have a question regarding an issue I encountered using the inference data of my mmm model.
Suppose I want to examine the channel contributions. Using a geometric adstock transformation, a logistic saturation transformation and the presence of positive channel coefficients, I would expect my channel contributions to be monotonically increasing as adstocked spending increases.
If I take the mean / median values for alpha (for the geometric adstock) over all chains and draws from the posterior, take the mean / median lambda (for the logisitic saturation), perform the transformations with it on my original data and then multiply the result of the transformations with my mean / median channel coefficients, I get channel contribution values that show the expected behavior (monotonically increasing as adstocked spend increases).
But when I access the mean / median channel contributions directly from the posterior across all chains and draws, I don't find this monotonic behavior. I sometimes find discontinuities in my data points so no monotonically increasing behavior with increasing adstocked spend.
This is the way I proceed when I talk about drawing mean / median values across chains and draws directly from the posterior.
This is what my response curves (response = channel contribution) look like. The manually calculated contribution is shown in red, and in blue is shown if I take it directly from the channel contribution posterior.
Zoomed in.
I wonder why this is the case?
Am I wrong in any of my assumptions?
Am I missing something?
Is my approach of "manual" calculation of the channel contributions the correct procedure?
Is it wrong to simply draw the channel contributions from the posterior using the mean / median across all chains and draws?
I would highly appreciate an answer to gain clarity.
Thanks a lot!
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Hello,
I have a question regarding an issue I encountered using the inference data of my mmm model.
Suppose I want to examine the channel contributions. Using a geometric adstock transformation, a logistic saturation transformation and the presence of positive channel coefficients, I would expect my channel contributions to be monotonically increasing as adstocked spending increases.
If I take the mean / median values for alpha (for the geometric adstock) over all chains and draws from the posterior, take the mean / median lambda (for the logisitic saturation), perform the transformations with it on my original data and then multiply the result of the transformations with my mean / median channel coefficients, I get channel contribution values that show the expected behavior (monotonically increasing as adstocked spend increases).
But when I access the mean / median channel contributions directly from the posterior across all chains and draws, I don't find this monotonic behavior. I sometimes find discontinuities in my data points so no monotonically increasing behavior with increasing adstocked spend.
This is the way I proceed when I talk about drawing mean / median values across chains and draws directly from the posterior.
mmm.fit_result['channel_contributions'].median(dim=['chain', 'draw']
This is what my response curves (response = channel contribution) look like. The manually calculated contribution is shown in red, and in blue is shown if I take it directly from the channel contribution posterior.
Zoomed in.
I wonder why this is the case?
Am I wrong in any of my assumptions?
Am I missing something?
Is my approach of "manual" calculation of the channel contributions the correct procedure?
Is it wrong to simply draw the channel contributions from the posterior using the mean / median across all chains and draws?
I would highly appreciate an answer to gain clarity.
Thanks a lot!
Beta Was this translation helpful? Give feedback.
All reactions