saturation#
Saturation transformations for the MMM model.
Each of these transformations is a subclass of
pymc_marketing.mmm.components.saturation.SaturationTransformation and defines a function
that takes media and return the saturated media. The parameters of the function
are the parameters of the saturation transformation.
Examples#
Create a new saturation transformation:
from pymc_marketing.mmm import SaturationTransformation
class InfiniteReturns(SaturationTransformation):
def function(self, x, b):
return b * x
default_priors = {"b": {"dist": "HalfNormal", "kwargs": {"sigma": 1}}}
Plot the default priors for a saturation transformation:
from pymc_marketing.mmm import HillSaturation
import matplotlib.pyplot as plt
saturation = HillSaturation()
prior = saturation.sample_prior()
curve = saturation.sample_curve(prior)
saturation.plot_curve(curve)
plt.show()
Define a hierarchical saturation function with only hierarchical parameters for saturation parameter of logistic saturation.
from pymc_marketing.mmm import LogisticSaturation
priors = {
"lam": {
"dist": "Gamma",
"kwargs": {
"alpha": {
"dist": "HalfNormal",
"kwargs": {"sigma": 1},
},
"beta": {
"dist": "HalfNormal",
"kwargs": {"sigma": 1},
},
},
"dims": "channel",
},
"beta": {
"dist": "HalfNormal",
"kwargs": {"sigma": 1},
"dims": "channel",
},
}
saturation = LogisticSaturation(priors=priors)
Classes
|
Wrapper around Hill saturation function. |
|
Wrapper around logistic saturation function. |
|
Wrapper around Michaelis-Menten saturation function. |
|
Subclass for all saturation transformations. |
|
Wrapper around tanh saturation function. |
|
Wrapper around tanh saturation function. |