MMMBuilder#
- class pymc_marketing.mmm.types.MMMBuilder(*args, **kwargs)[source]#
Protocol for objects that can build MMM models.
Any object passed to
TimeSliceCrossValidator.run(mmm=...)must implement this protocol.- Attributes:
- None
Methods
build_model(X, y)
Build and return an MMM instance ready for fitting.
See also
pymc_marketing.mmm.TimeSliceCrossValidatorCross-validator that uses this protocol.
Examples
Create a custom builder that implements the protocol:
>>> class MyMMMBuilder: ... def __init__(self, config): ... self.config = config ... ... def build_model(self, X, y): ... # Build and return an MMM instance ... mmm = MMM(...) ... return mmm >>> builder = MyMMMBuilder(config={"channels": ["tv", "radio"]}) >>> cv = TimeSliceCrossValidator( ... n_init=100, forecast_horizon=10, date_column="date" ... ) >>> combined_idata = cv.run(X, y, mmm=builder)
Methods
MMMBuilder.__init__(*args, **kwargs)MMMBuilder.build_model(X, y)Build and return an MMM instance.