Skip to content

Releases: facebookexperimental/Robyn

v3.7.0 - Total recoding, UX feats, and combined errors fix

27 Jul 19:18
390a7f9
Compare
Choose a tag to compare

Relevant changes on v3.7.0:

  • Recode: got rid of data.table dependency for r2py wrapper and removed all globalVariables associated noise
  • Recode: all code is now clean and formatted under the tidyverse code style for better code reading and standardization
  • Feat: trimmed functionality for response curves on one-pagers outputs to have coherent ranges plotted
  • Feat: enabled channels removal on robyn_allocator() by setting their constraints to 0 #411
  • Feat: when manually selecting refresh models in robyn_refresh(), re-ask user until valid solID is provided, instead of crashing
  • Feat: new plot and improved print methods for robyn_refresh() outputs
  • Feat: include time units used in adstock plots for clarity
  • Feat: enabled organic media variables to be calibrated (no spend)
  • Fix: when best model based on minimum combined errors was tied with other models, inconsistent outputs (one-pagers / clustering). Standardized combined errors methodology with new errors_scores() function, especially normalizing errors before filtering models. The largest the "error_score", the better the model's performance #428
  • Fix: show blue dots on top of grey dots in Pareto plots #420
  • Fix: positive/negative colour palette on waterfall plot when all values are positive
  • Fix: set prophet's print as disabled when prophet_vars input is NULL (off)
  • Docs: added CRAN, site, and FB group badges on README files
  • Docs: several typos and documentation updates

Full Changelog: v3.6.3...v3.7.0

v3.6.3 - CRAN version, site revamp, more inputs flexibility

06 May 14:57
Compare
Choose a tag to compare

Relevant changes on v3.6.3:

  • CRAN: First Robyn version available via CRAN. From now on, install CRAN's for stable version, GitHub's for dev version.
  • Docs: Site revamp #372, documentation updates and demo enrichment
  • Feat: Added version_prompt parameter to robyn_refresh() #375
  • Feat: Added new calibration checks to ensure quality experiments usage
  • Feat: New date_min and date_max parameters on robyn_allocator() to pick non-0 means window
  • Feat: New robyn_update() function
  • Feat: More checks and warnings included to push users to follow best practices.
  • Refactor: Changed 1 to 3 Pareto fronts as default to enrich robyn_clusters() results
  • Refactor: Changed default thresholds on robyn_converge() to be more flexible
  • Fix: Several bugs squashed

New Contributors

Full Changelog: v3.6.2...v3.6.3

v3.6.2: Allocation and plot improvements, new warnings, bugs fixed

31 Mar 16:46
edf5067
Compare
Choose a tag to compare

Relevant changes on v3.6.2:

  • Viz: removed redundant information on plots and standardized styles and contents on all visualizations.
  • Feat: new date_min and date_max parameters on robyn_allocator() to pick specific date range to consider mean spend values (user request).
  • Feat: new plot methods for robyn_allocator() and robyn_save() outputs, and print method for robyn_inputs() with and without hyperparameters.
  • Feat: provide recommendations on calibration inputs depending on the experiments' confidence, spending, and KPI measured (#307).
  • Feat: warn and avoid weekly trend input when data granularity is larger than "week".
  • Fix: issues on several robyn_allocator() specific cases (#349, #344, #345), especially when some coefficients were 0.
  • Fix: bug with Weibull adstock scenario (#353).
  • Docs: fixed some typos, updated, and standardized internal documentation.

Commits log

New Contributors

Full Changelog: v3.6.0...v3.6.2

v3.6.0 - Add new hyperparameter, new convergence metric, improved response function, prints and better allocation stability

22 Feb 11:42
Compare
Choose a tag to compare

What's New in v3.6.0

  • New hyperparameter "lambda" finds MOO-optimal lambda and thus removes the need of manual lambda selection.
  • New optional hyperparameter penalty.factor that further extends hyperparameter spaces and thus potentially better fit.
  • New optimisation convergence rules & plots for each objective function showing if set iterations have converged or not (NRMSE, DECOMP.RSSD, and MAPE if calibrated)
  • Improved response function now also returns the response for exposure metrics (response on imps, GRP, newsletter sendings, etc) and plots. Note that argument names and output class has changed. See updated demo.R for more details.
  • More budget allocation stability by defaulting fitting media variables from paid_media_vars to paid_media_spends. Spend exposure fitting with Michaelis Menten function will only serve robyn_response() function output and plotting. robyn_allocator() now only relies on direct spend - response transformation.
  • Default beta coefficient signs: positive for paid & organic media and unconstrained for the rest. Users can still set signs manually.
  • New print methods for robyn_inputs(), robyn_run(), robyn_outputs(), and robyn_allocator() outputs to enable visibility on each step's results and objects content.

Full Changelog: v3.5.1...v3.6.0

v3.5.0 - Add clustering method for model selection and split robyn_run()

01 Feb 16:04
4b3d829
Compare
Choose a tag to compare

What's New in v3.5.0

  • New robyn_clusters() function to reduce the number of models to select from after Pareto front solutions are picked
  • Auto-select K clusters given a minimum WSS variance on robyn_clusters()
  • Split robyn_run() functionalities into robyn_outputs() for more control over modelings results and exporting process
  • Enabled custom prophet inputs to be used in modeling and refreshing models
  • Enabled users to use all outputs without the need of exporting results (Shiny devs)
  • New hyper_limits() helper function with permitted hyper-parameters limits
  • New quiet mode to reduce prints and messages, few recoding, and overall improvements

Full Changelog: v3.4.8...v3.5.0

v3.4.8 - Add parallel in plotting and improve parallel in model loop

25 Nov 19:48
Compare
Choose a tag to compare
  • 20% - 40% faster in the major modelling loop
  • 50% fasterr in plotting loop for linux & windows users

v3.4.4 - fixed loading old model & refresh bug

03 Nov 13:46
Compare
Choose a tag to compare

v3.4.3 - New ROAS convergence plot & various updates

02 Nov 13:42
Compare
Choose a tag to compare
  • Added ROAS convergence plot
  • Adapted weibull adstock plots in one-pager
  • Added csv_out parameter in robyn_run() to allow all iteration csv output
  • Fixed refresh plot level limits and added robyn_palette()

v3.3.2 - Adapt allocator histSpendShare

27 Oct 12:39
Compare
Choose a tag to compare

v3.3.1 - Add seed for reproducible results

27 Oct 07:38
Compare
Choose a tag to compare

What's Changed

  • For reproducible results, a new seed parameter was included into robyn_mmm() and robyn_run() to set numpy's seed before running any py operation within robyn_mmm().