Skip to content

Releases: pymc-labs/pymc-marketing

0.11.0

21 Jan 09:47
10f34c5

Choose a tag to compare

What's Changed

Major Changes 🛠

New Features 🎉

  • add hdi_list kwarg to plot_posterior_predictive by @drbenvincent in #1096
  • Allow Negative Values in Media Channels by @louismagowan in #1092
  • Add plot_expected_purchases_over_time function by @ColtAllen in #1115
  • Beta geo expected probability no purchase by @DylanZammit in #1094
  • Harmonize prior and posterior predictive plots in MMM module by @juanitorduz in #1170
  • Create load_from_idata method by @wd60622 in #1211
  • Add CLV plot_expected_purchases_ppc by @ColtAllen in #1222
  • Include tvp scaling in contribution grid by @wd60622 in #1253
  • Make optimization based on the entire posterior and not on the marginal mean parameters. by @cetagostini in #1151
  • HSGP as component by @wd60622 in #1246
  • Add Gradient-Free Fit Method to CLV Models by @ColtAllen in #1266
  • Add graphviz method to ModelBuilder class by @ColtAllen in #1284
  • Improved Default Priors for BetaGeoModel by @ColtAllen in #1264
  • Non-centered ZeroSumNormal Prior support by @wd60622 in #1290
  • Allow non-Prior parameters in Prior and media transformations by @wd60622 in #1292
  • Deserialize arbitrary objects by @wd60622 in #1296
  • Modified Beta Geometric model by @PabloRoque in #1301
  • Allow VariableFactory in FourierBase by @aseyboldt in #1304
  • Add Censored wrapper for Prior class by @wd60622 in #1309
  • Register new media transformations automatically by @wd60622 in #1320
  • Add new customer_choice module by @drbenvincent in #803
  • 1314 implement serialization for fourier classes by @wd60622 in #1315
  • Deprecate to/from_json of Prior class in favor of to/from_dict by @wd60622 in #1338
  • Add autologging for CLV models by @wd60622 in #1354
  • Introduce BetaGeoNBD Random Variable by @PabloRoque in #1317
  • MMM Evaluation, Diagnostics and MLFlow Registry by @louismagowan in #1368
  • MLflow logging before slow function calls by @wd60622 in #1393
  • Custom optimizer constraints by @cetagostini in #1358
  • Creating Causal Identification module by @cetagostini in #1166

Bugfixes 🐛

Documentation 📖

Maintenance 🔧

  • Remove duplicate attrs/functions from MMM by @sreekailash in #1336
  • Move fit_result to model_builder.py and remove redundancies from CLV and MMM by @sreekailash in #1344
  • Remove media transformation registration functions by @wd60622 in #1378
  • Add load_from_idata method by @wd60622 in #1379
  • Add tests by @juanitorduz in #1391
  • Implement ModifiedBetaGeoNBD and ModifiedBetaGeoNBDRV by @PabloRoque in #1375

New Contributors

Full Changelog: 0.10.0...0.11.0

0.10.0

18 Oct 02:21
e46f690

Choose a tag to compare

What's Changed

New Features 🎉

Bugfixes 🐛

Documentation 📖

Maintenance 🔧

New Contributors

Full Changelog: 0.9.0...0.10.0

0.9.0

18 Sep 07:25
bc4b248

Choose a tag to compare

What's Changed

New Features 🎉

  • Add user customization to plot_curve methods by @wd60622 in #1018
  • Add BetaGeoBetaBinomModel by @ColtAllen in #1031
  • MLFlow auto logging by @wd60622 #921

Documentation 📖

Maintenance 🔧

Full Changelog: 0.8.0...0.9.0

0.8.0

11 Sep 06:58

Choose a tag to compare

What's Changed

New Features 🎉

  • Prior class to represent distributions by @wd60622 in #759
  • Pull out seasonality as YearlyFourier and MonthlyFourier by @wd60622 in #802
  • Separate Weibull adstock into CDF & PDF by @wd60622 in #810
  • PoC: Use Pydantic as data validator by @juanitorduz in #809
  • Create inverse_scaled_logistic_saturation and the corresponding class by @arthurmello in #827
  • use labs theme as external by @OriolAbril in #830
  • Skip coords with scalar value by @GiannisApost in #868
  • Allow plot MMM components in the original scale by @juanitorduz in #870
  • Add root saturation function (issue #702) by @iraur in #858

Bugfixes 🐛

  • Save & load support for time varying parameters by @wd60622 in #815
  • json.loads with python types bug by @wd60622 in #881
  • Save off media transformations by @wd60622 in #882

Documentation 📖

Maintenance 🔧

  • Make PyMC 5.13.0 the minimum version by @wd60622 in #816
  • Date Validation and MMM Model Hamonization (Pydantic) by @juanitorduz in #824
  • Future-proof prior_linearized method call by @shuvayan in #806
  • Specify 0.9.0 as deprecation version for recent MMM changes by @wd60622 in #849
  • Fixing ruff commands in Makefile #825 by @MuradKhalil in #859
  • Check for missing attrs after sample_prior_predictive and fit by @wd60622 in #867

New Contributors

Full Changelog: 0.7.0...0.8.0

0.7.0

11 Sep 06:59

Choose a tag to compare

What's Changed

This release comes with great new features and improvements! Among many things, we have:

  • Internal MMM refactor to make it customizable!
    • We allow custom adstock and saturation functions.
    • MMM time-varying media-baseline component available!
    • Hierarchical distributions.
  • Streamlit explainer app! See https://pymc-marketing-app.streamlit.app/
  • CLV API standardization
  • RFM segmentation
  • Documentation improvements and new examples!

Major Changes 🛠

New Features 🎉

  • v0 Streamlit MMM Explainer App by @louismagowan in #614
  • Add BetaGeoBetaBinom Distribution Block by @ColtAllen in #431
  • RFM Segmentation by @ColtAllen in #680
  • Media transformation sampling & plotting methods by @wd60622 in #734
  • Hierarchical Model Configuration by @wd60622 in #743
  • Allowing Hierarchical Non Centered Parametrization by @cetagostini in #747
  • Creating Time Base component for Media Contribution by @cetagostini in #752

Bugfixes 🐛

  • Fix related to column renaming after aggregating test frequency by @IvanUgrin in #698
  • model.fit doesn't remove prior samples by @wd60622 in #741
  • Deepcopy of posterior to allow second fit call by @wd60622 in #790
  • Add prior predictive example notebook by @juanitorduz in #787

Documentation 📖

  • Correct BetaGeo docstring example by @wd60622 in #693
  • Fix some ParetoNBDModel docstring typos by @Mews in #731
  • Minor improvements [MMM] by @juanitorduz in #735
  • MMM Component Notebook by @wd60622 in #748
  • start addressing sphinx warnings and rendering issues by @OriolAbril in #750
  • CLV Modeling Domains and Docstrings by @ColtAllen in #785
  • Fix TVP Notebook by @juanitorduz in #793
  • docs: Update model_builder.py to resolve warning in documentation build by @c0d33ngr in #797
  • Time Varying Media Contribution Notebook by @cetagostini in #778

Maintenance 🔧

New Contributors

Full Changelog: 0.6.0...0.7.0

0.6.0

11 Sep 06:59

Choose a tag to compare

What's Changed

New Features 🎉

Bugfixes 🐛

Documentation 📖

New Contributors

Full Changelog: 0.5.0...0.6.0

0.5.0

11 Sep 07:00

Choose a tag to compare

What's Changed

New Features 🎉

Bugfixes 🐛

Documentation 📖

Maintenance 🔧

0.4.2

15 Mar 20:00
c463f7d

Choose a tag to compare

What's Changed

Bugfixes 🐛

  • Fix bug in predictive methods of ParetoNBD model with covariates by @ricardoV94 in #589

Full Changelog: 0.4.1...0.4.2

0.4.1

15 Mar 15:50
d9c19c4

Choose a tag to compare

What's Changed

New Features 🎉

Bugfixes 🐛

Documentation 📖

  • Update resources page by @juanitorduz in #539
  • Add to documentation feature comparison by @wd60622 in #550
  • Make BetaGeoModel docstring example work by @wd60622 in #558
  • Add nbqa-ruff for doc notebooks by @juanitorduz in #561
  • Add other nuts samplers example notebook by @juanitorduz in #579

Maintenance 🔧

  • Use union of default and user provided configs in ModelBuilder by @ricardoV94 in #565
  • Remove scale_preserving_logistic_saturation function by @ulfaslak in #585

New Contributors

Full Changelog: 0.4.0...0.4.1

0.4.0

07 Feb 09:06
0.4.0

Choose a tag to compare

What's Changed

New Features 🎉

  • Handle new data correctly and extend the functionality of MMM posterior predictive methods by @wd60622 in #482
  • Add baselined saturation by @ferrine in #498
  • Add scale preserving saturation function by @ulfaslak in #503
  • Add Weibull CDF and PDF Adstock Transformations by @abdalazizrashid in #499

Bugfixes 🐛

Documentation 📖

  • Add notebook section for out-of-sample predictions by @wd60622 in #504

New Contributors

Full Changelog: 0.3.3...0.4.0