Download Latest Version v3.12.0 [GitHub R] source code.zip (44.7 MB)
Email in envelope

Get an email when there's a new version of Robyn

Home / v3.12.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2024-12-19 3.2 kB
v3.12.0 [GitHub R] source code.tar.gz 2024-12-19 44.6 MB
v3.12.0 [GitHub R] source code.zip 2024-12-19 44.7 MB
Totals: 3 Items   89.3 MB 1

What's Changed

Exposure fitting, curve calibration & reach and frequency allocator (https://github.com/facebookexperimental/Robyn/pull/1132) * feat: enable exposure fitting - Exposures (Imp/GRP etc) will be prioritised over spend for parent model fitting - Deprecate function fit_spend_exposure, incl. Michaelis Menten. Nonlinear fitting between spend and exposure wasn't improving fitting significantly. Instead, future curve calibration feature will aim to improve curve identification. - Use cpe (cost per exposure) as ratio for spend to exposure translation. use cpe_window to scale the whole dataset in order to obtain the right spend scale for modeling period. - remove minpack.lm / nlsLM dependency - update exposure plot

  • feat: The curve calibrator - robyn_calibrate
  • Simulate cumulative R&F dataset with frequency bucket
  • add beta coef besides alpha and gamma to nevergrad hyperparameter to improve curve fit
  • plot with freq_bucket as well as onepager per trial
  • add df_curve_reach_freq as dummy dataset
  • create robyn_calibrate that consumes curve input and outputs hyperparameter ranges as input.
  • Rename previous internal robyn_calibrate function as lift_calibration
  • early stop convergence with while loop
  • update documentation

  • prototype: reach and frequency allocator This is the proof of concept of a R&F allocator that includes

  • Simulated R&F data
  • The R&F hill params are estimated using a multiplicative equation with Nevergrad
  • visualisation of surface
  • R&F allocator with nlopt
  • constrain validation

  • update: checks, input, transformation & website

  • simplify various check functions
  • adapt model.R, incl. reset run_transformations params to have clearer overview of params needed. simplify transformation.R by removing unnecessary checks
  • In model.R & pareto.R: remove decompSpendDist from both scripts to reduce memory leak. Use xDecompAgg subsets instead
  • In transformation.R & response.R: unify transformation namings in run_transformation and robyn_response
  • In response.R: remove exposure extrapolation because it's already done in robyn_input. Also add inflexion point to output.
  • In plots.R: fix onepager saturation plot issues
  • In pareto.R: rewrite run_dt_resp() as response_wrapper and align transformation logic & naming.
  • In pareto: Replace foreach response loop with lapply for simplicity.
  • In pareto.R: Simplify plot data generation process, esp for saturation curve plot, actual vs predicted plot & immediate vs carryover plot.
  • In pareto.R: Remove redundancy in xDecompVecCollect -> remove type rawMedia, rawSpend, predictedExposure, saturatedMedia & saturatedSpendReversed. Only keep adstockedMedia & decompMedia for response curve plotting.
  • add set_default_hyppar for easier testing
  • website update for all above changes

Contributors

@gufengzhou, @laresbernardo

Full Changelog: https://github.com/facebookexperimental/Robyn/compare/v3.11.0...v3.12.0

Source: README.md, updated 2024-12-19