ReactiveBayes / ExponentialFamily.jl

ExponentialFamily.jl is a Julia package that extends the functionality of Distributions.jl by providing a collection of exponential family distributions and customized implementations.
https://reactivebayes.github.io/ExponentialFamily.jl/
MIT License
12 stars 2 forks source link

The `isproper` check for multivariate Gaussian is not ideal #194

Closed bvdmitri closed 3 months ago

bvdmitri commented 3 months ago

The check we have is this one

ERROR: LoadError: Parameter vector RecursiveArrayTools.ArrayPartition{Float64, Tuple{Vector{Float64}, Matrix{Float64}}}(([2.681307820870243, 2.8111549974135714], [-1.7216965999028715 -0.4320207377364004; -0.43202073773640026 -2.325446169405964])) is not a valid natural parameter for distribution ExponentialFamily.MvNormalMeanCovariance.

The check verifies that the negative of [-1.7216965999028715 -0.4320207377364004; -0.43202073773640026 -2.325446169405964] is posdef. It is a correct check, but due to small differences in off diagonal entries the check fails. This is not ideal.

bvdmitri commented 3 months ago

Duplicate of #145