-
Notifications
You must be signed in to change notification settings - Fork 4
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
RealVariableProcessor--CODA plot excludes observations #4
Comments
Profiling some test examples has shown that This feature is likely useful for debugging or to retrieve preliminary results before the sampler is finished, but I think we should have the ability to turn off writing until the end. For cross product parameter runs, this could add a significant amount of computation time. I propose to include in |
Hey Sean, I'm not sure if it's your commit, but after I sync'd today it looks like I am getting a compilation error in blang.validation.CheckStationarity at line 353 (in collectStatistics method). Can you verify if you also get the compilation error? Thanks. |
…ion to RealVariableProcessor to effectively turn off CODA plotting for stationary testing.
Thanks for reminding me to check newly produced code against all of the JUnit tests via Importantly, for all distribution tests, you now need to add a line in the test:
which tells the processor not to generate the CODA plots. Otherwise, the test could take an incredibly long time to complete due to the processor consistently plotting on the last iterate. If anyone has any comments or suggestions please let me know. |
The fix does not seem to work universally. See for example |
One potential spot for confusion in reading CODA plots generated by blang arises when the number of samples
N
on the histogram does not match thenMCMCSweeps
. This is a side effect of writing the CODA files on iterations which are a power of 2. In particular, the last iterations are not written to file (interval
is bigger thancurrent
, butcurrent
does not reachinterval
by mcmc completion). For large nMCMCSweeps the difference is rather large (2^n grows quickly).An easy fix is to write to file for every iteration st
mcmcIteration
modulothinningPeriod
= 0. That is, when the processor is called. It does not look like the processor has access tonMCMCSweeps
, and I am not convinced this is a detail we want to pass. One other alternative might be to force a final write on the last iteration.The text was updated successfully, but these errors were encountered: