TuringLang / ParetoSmooth.jl

An implementation of PSIS algorithms in Julia.
http://turinglang.org/ParetoSmooth.jl/
MIT License
19 stars 12 forks source link

Support MCMCDiagnosticTools 0.3 and MCMCChains 6 #79

Closed devmotion closed 1 year ago

devmotion commented 1 year ago

This PR updates the MCMCDiagnosticTools and MCMCChains compat entries and improves relative_ess.

If you have time, maybe you could have a quick look @sethaxen since you implemented the recent improvements of ess in MCMCDiagnosticTools?

Closes #73.

codecov[bot] commented 1 year ago

Codecov Report

Patch coverage: 50.00% and project coverage change: -0.29 :warning:

Comparison is base (25f28fe) 84.28% compared to head (6fc0d1f) 84.00%.

Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #79 +/- ## ========================================== - Coverage 84.28% 84.00% -0.29% ========================================== Files 11 11 Lines 401 400 -1 ========================================== - Hits 338 336 -2 - Misses 63 64 +1 ``` | [Impacted Files](https://app.codecov.io/gh/TuringLang/ParetoSmooth.jl/pull/79?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=TuringLang) | Coverage Δ | | |---|---|---| | [src/ESS.jl](https://app.codecov.io/gh/TuringLang/ParetoSmooth.jl/pull/79?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=TuringLang#diff-c3JjL0VTUy5qbA==) | `71.42% <50.00%> (-10.39%)` | :arrow_down: | ... and [1 file with indirect coverage changes](https://app.codecov.io/gh/TuringLang/ParetoSmooth.jl/pull/79/indirect-changes?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=TuringLang)

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.

devmotion commented 1 year ago

It won't be possible to keep running the full test suite with Turing on Julia 1.6 since Turing decided to drop support for Julia 1.6 - but only very ancient versions of it are compatible with MCMCChains 6 (they won't work but according to Project.toml at least).

I would suggest removing Turing from the tests completely - instead one could just save the output of a sample run for all relevant model. The @models can still be defined since this only requires DynamicPPL - which has much less dependencies and hence fewer package conflicts and better Julia compat.

devmotion commented 1 year ago

I would suggest removing Turing from the tests completely - instead one could just save the output of a sample run for all relevant model.

I will go with this option and update the PR accordingly.

devmotion commented 1 year ago

Tests pass now, and the cached samples seem to yield similar results as the current runs on the master branch.