-
Notifications
You must be signed in to change notification settings - Fork 31
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
Fix for LKJCholesky
#521
Fix for LKJCholesky
#521
Conversation
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
@torfjelde can you take a look at the test error? It seems not related to this PR as I also encountered it in #520. Maybe also consider fixing the chain conversion issue found by @sethaxen |
The CI failed because we were comparing a 1x2 matrix to a 2-length vector using |
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Pull Request Test Coverage Report for Build 6001043985
💛 - Coveralls |
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## master #521 +/- ##
==========================================
+ Coverage 76.36% 80.40% +4.04%
==========================================
Files 24 24
Lines 2771 2776 +5
==========================================
+ Hits 2116 2232 +116
+ Misses 655 544 -111
☔ View full report in Codecov by Sentry. |
Do you know what caused it? The same tests work fine on the master branch so it is a bit weird. |
Good point; I believe it's the change to |
So it definitively has nothing to do with But it's quite strange as DynamicPPL.jl/test/test_util.jl Line 70 in f6f02ac
also results in a |
Maybe it's caused by a change to |
LKJCholesky
is currently not handled correctly in DynamicPPL, as it is missing implementations ofreconstruct
andvectorize
(+ additional bugs in varinfos were exposed now that we're not simply working withAbstractArray{<:Real}
).On
#master
we have:Notice that indexing into the
VarInfo
returns aMatrix{Float64}
(in particular, it returns the lower-triangular used in theCholesky
). This then changes downstream computation paths, for example resulting incholesky
being called inlink!!
and causing issues (https://discourse.julialang.org/t/singular-exception-with-lkjcholesky/85020).On this branch, we now have the correct behavior: