libqueso / queso

QUESO is a C++ library for doing uncertainty quantification. QUESO stands for Quantification of Uncertainty for Estimation, Simulation and Optimization.
Other
57 stars 40 forks source link

Implement convergence diagnostics #549

Open dmcdougall opened 7 years ago

dmcdougall commented 7 years ago

We already have (I believe) Gelman-Rubin. We could do with implementing these others, however:

  1. Geweke
  2. Raftery-Lewis
  3. Autocorrelations and ESS
pbauman commented 7 years ago

We already have (I believe) Gelman-Rubin

I called it "Brooks-Gelman" and yeah, it's in there, sort of. It's a pretty stupid implementation (I'm the one that did it O_O), honestly, and should be removed IMHO. Instead, I think a ConvergenceDiagnostics or ConvergenceMonitor (or whatever) base class would be the way to go, from which we could subclass implementations and then the user could attach it to the SIP (or sampler, or whatever level is appropriate) to monitor convergence as sampling progresses or just use it to post process convergence. Brooks-Gelman scales O(n_samples^2), so encapsulating it to have options like lagging and only recomputing every m samples would be good to do.