facebookexperimental / facebookexperimental/Robyn
Budget allocator: Max response gives lower response (-negative %) Bounded than Initial
- 主要言語
- Jupyter Notebook
- スター
- 1.5k
- フォーク
- 433
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
## Project Robyn
## Describe issue
The Allocator function with the maximize response option sometimes provides a lower response for Bounded than the Initial. My assumption was that the optimized result could never be lower than the Initial budget, so would like to seek understanding here. Or whether this is a bug.
Note: The model is trained on **conversions** (not revenue).
## Provide reproducible example
Due to sensitive nature of the data, it would be hard to share, but I hope the bellow Allocator 1-pager shows enough detail.
R code to create the 1 pager (both R and Python API results are the same):
```R
# Example 2: maximize response for latest 40 periods with given spend
AllocatorCollect2 <- robyn_allocator(
InputCollect = InputCollect,
OutputCollect = OutputCollect,
select_model = robyn_model,
date_range = "last_40",
channel_constr_low = 0.7,
channel_constr_up = 1.2,
channel_constr_multiplier = 3,
scenario = "max_response",
export = TRUE
)
```

As you can see,
- Initial: Spend 0% | Resp: 0.00%
- Bounded: Spend +0% | Resp: -2.56%
- Bounded x3: Spend +0% | Resp: +12.60%
This one is the weirdest, with Bounded giving a lower response, but Bounded x3 giving a higher one.
With different settings (different amount of weeks, different constaints), I've also seen:
- Both bounded and bounded x5 being higher than Initial, but bounded giving a higher +% than x5
- Both bounded and bounded x5 being lower, with x5 even lower than bounded
Note: There is a period with 0 spends for some channels in the 40 weeks range. However, when checking only the last 8 weeks (with 1 channel having no spend at all, and 1 channel at some point 0 spend), weird behavior still shows up (Bounded having a higher +% than Bounded x5).
## Environment & Robyn version
Make sure you're using the latest Robyn version before you post an issue.
- Robyn version: `3.10.5.9000`
- R version: R version 4.3.3 (2024-02-29) | Executed as Notebook in JupyterLab
Platform: x86_64-conda-linux-gnu (64-bit)
Running under: Debian GNU/Linux 11 (bullseye)
Matrix products: default
BLAS/LAPACK: /opt/conda/envs/my_env/lib/libopenblasp-r0.3.27.so; LAPACK version 3.12.0
コントリビューションガイド
評価
この issue はまだ評価されていません。