Skip to content
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

add design doc to align on MCMC options enhancements #472

Merged

Conversation

danielinteractive
Copy link
Contributor

Hi @gowerc and team,
please find inside a design doc to start alignment on MCMC options improvements. Thoughts/comments/concerns?
Thank you,
Daniel

Copy link
Contributor

github-actions bot commented Jan 20, 2025

✅ All contributors have signed the CLA
Posted by the CLA Assistant Lite bot.

@danielinteractive
Copy link
Contributor Author

I have read the CLA Document and I hereby sign the CLA

@gowerc
Copy link
Collaborator

gowerc commented Jan 30, 2025

Hey @danielinteractive - Sorry was just wondering what your planned timeline was for implementing this ? I ask just because we had a CRAN test failure and need to upload a new patch version before 2025-02-10. Was wondering if you wanted me to hold off for you to add this in? If not I'll just submit the new patch version now.

@danielinteractive
Copy link
Contributor Author

Thanks @gowerc for asking, as soon as we have an aligned design in place (i.e. this PR merged) then I would code this asap, within a few days. On the other hand, we might need further adjustments downstream for handling the multiple chain output (not sure). But at least this part from this design doc we could fold into this CRAN update I think.

@gowerc
Copy link
Collaborator

gowerc commented Jan 30, 2025

@danielinteractive - Thanks for updating this, I just did another full review and added a few comments I think all of which are minor. Once they are resolved I am happy to merge

danielinteractive and others added 2 commits January 31, 2025 22:30
Co-authored-by: Craig Gower-Page <[email protected]>
Signed-off-by: Daniel Sabanes Bove <[email protected]>
@danielinteractive
Copy link
Contributor Author

Thanks @gowerc , all comments are addressed now, the only conversation remaining is about the seed, can you please have a look, thanks

@bailliem
Copy link

bailliem commented Feb 4, 2025

Re: the seed discussion, I think it makes more sense as it is now implemented using set.seed() explicitly. As @gowerc mentioned, it is more consistent across the various methods. @luwidmer , any concerns?

@danielinteractive
Copy link
Contributor Author

Re: the seed discussion, I think it makes more sense as it is now implemented using set.seed() explicitly. As @gowerc mentioned, it is more consistent across the various methods. @luwidmer , any concerns?

Thanks @bailliem for chipping in! I think the current implementation with hardcoding the rstan seed is suboptimal, because it conflicts with the rest of the control function design, where you can override all arguments from the user side. I would like to highlight that also in the current design doc proposal the user can and should use set.seed() in their script/code, which will set the rstan seed as in the current implementation - in that sense it is consistent still with other rbmi methods. However, expert users will have the chance to set the seed argument for rstan explicitly if they need to - which aligns with the control function design.

@bailliem
Copy link

bailliem commented Feb 4, 2025

Re: the seed discussion, I think it makes more sense as it is now implemented using set.seed() explicitly. As @gowerc mentioned, it is more consistent across the various methods. @luwidmer , any concerns?

Thanks @bailliem for chipping in! I think the current implementation with hardcoding the rstan seed is suboptimal, because it conflicts with the rest of the control function design, where you can override all arguments from the user side. I would like to highlight that also in the current design doc proposal the user can and should use set.seed() in their script/code, which will set the rstan seed as in the current implementation - in that sense it is consistent still with other rbmi methods. However, expert users will have the chance to set the seed argument for rstan explicitly if they need to - which aligns with the control function design.

@danielinteractive , I agree. The UX experience and further control here makes sense. Happy with this proposal

@gowerc
Copy link
Collaborator

gowerc commented Feb 4, 2025

I'm honestly indifferent here (both sides have equal benefits and trade offs to me) so am happy to proceed with Daniels proposal if that is the desired direction

@danielinteractive
Copy link
Contributor Author

Thanks @bailliem and @gowerc

@gowerc gowerc merged commit 393c50c into insightsengineering:main Feb 4, 2025
1 check passed
@github-actions github-actions bot locked and limited conversation to collaborators Feb 4, 2025
@danielinteractive danielinteractive deleted the add_design_mcmc_options branch February 5, 2025 08:26
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants