-
Notifications
You must be signed in to change notification settings - Fork 363
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Validation procedure of Robyn #772
Comments
Hi sorry for the late reply, to your question of "budget allocator and initial model not matching", please check this answer from me on another similar issue. Regarding validation, as explained above, you'll get the same spend share as the initial model by doing this. I just picked a random model using the simulated data :
And yes, the effect share is different, which is also explained in the linked comment above. For initial model, the effect share is just the % of all weekly avg. effect, or simply the historical share. For allocator, I need to use the weekly avg. spend to simulate the weekly avg. carryover and then simulate the weekly avg. response. It's a simulation process, NOT the historical share anymore. |
- date_range in robyn_response should only refer to modelling window, not the total dataset. - bump up dev version
@gufengzhou , So given the above example looking at the results for facebook_s. to get the expected total response for the alloted period will be: <style> </style>
|
I ran the validation using my data...Trying to understand the results. Val_response_a: <style> </style>
Val_response_b" <style> </style>
val_response_c: <style> </style>
why is val_response_c so low. Does it divide by 52? (I ran the MMM for 52 weeks) Thanks again for all your help on this. |
The response level is calculated by a given spend on a given historical carryover/adstock. The given spend for response_c is the avg spend of the last 52 weeks, and the given carryover is the avg carryover of the 52 weeks. Without looking into your data, the low response_c is because of the relatively high avg carryover and/or relatively low avg spend, compared to the actual daily levels. it's possible. In your case, I suggest you to experiment with different date_range to find out the appropriate levels. We recommend using rather more recent periods instead of too far backwards to reflect your recent adstocking and saturation behaviour. |
@gufengzhou, shouldn't the response C, init_response_unit = response(immediate) + carryover response? My client's creates budget on a 52 week window. Any suggestions to be able to run allocations on this would be welcome? |
Did you get any better understanding on the budget allocator? Can you share your findings? I have spend so much time and I still don't get what is going on here. |
Hello, I was trying to validate between initial model, robyn_response & robyn_allocator for the very last period (
The initial response (val_response_a) and the response from robyn_response (val_response_b) are identical. However, I’m noticing discrepancies in the results from the robyn_allocator (val_response_c), which I’m unable to account for. Could you provide any insights into why this might be happening? |
Please reopen if necessary. |
Hello @gufengzhou! do you have any updates regarding the point of @gaiaderossinunatac? I see that you closed the issue but there is no response and I have the same problem. Thank you very much! |
Hi team,
Currently, we have finished building the Robyn model and we want to apply the Budget Allocation results to our next month's budget plan. If we apply the model, we need to measure its effectiveness. However, since the Robyn guide doesn't have 'how to do incremental verification of media channels', so I'm asking here.
In the Budget Allocation Onepager, we can see Total Response of Media channel. At first, we simply set Total Response as a target KPI, and tried to see how far we reached that number after a simulation period (ex. 4 weeks). However, we found that the total response obtained through the refresh model was not comparable with the total response obtained through the Initial model. Since two models used different data, they measure the media and non-media channel's contribution differently. So it cannot be used as a validation value.
[Questions]
I'd appreciate if you could expalin abount the validation procedure of Robyn.
Even if it is not a 100% scientific verification method, I would be helpful if you could explain the currently available validation methods.
(Currently, we are not in a situation where we can proceed with Calibration and Geo Lift, so please comment except for that method.)
Thank you!😊
The text was updated successfully, but these errors were encountered: