Sam

Results 28 comments of Sam

Ok, will do. I actually already made a pre-cached [version](https://github.com/ElOceanografo/MarginalLogDensities.jl/blob/cfc209c54ed3be220c795f2f6e698431c364e99e/src/MarginalLogDensities.jl#L90) in MarginalLogDensities, so I'll see if I can adapt that.

+1 for using the `return` statement to define which variables to track. I think it's clean and intuitive, and the ability to marginalize out variables without storing them in a...

Some kind of `NamedTuple`-ish structure or `Tables`-like interface for the chains would be great IMO. One of my common frustrations is fitting a model with array-valued parameters, and then having...

This issue may be worth fixing in PDMats, but note that the `unwhiten_winv!` method for `rand(::Distributions.MvNormalCanon)` currently extracts the Cholesky factor directly, without calling `chol_lower`: https://github.com/JuliaStats/Distributions.jl/blob/50a712acb24cedda4291e26bdf52cd7f2096da89/src/multivariate/mvnormalcanon.jl#L179

I actually went and turned my working example into its own small package: https://github.com/ElOceanografo/FactorLoadingMatrices.jl. There's an example in the readme that illustrates the intended usage. Basically the transformation constructs the...

Ok thanks, good to know. The workaround does not work either, however...defining `ftest` as you suggest produces this error when calling `solve`: ```julia ERROR: DimensionMismatch("dimensions must match: a has dims...

Apologies, I just skipped a version number by mistake. Have been meaning to go back and delete/renumber the releases, but haven't got around to it yet--I wanted to make sure...

Ok, great, then let's go ahead and do that. Thanks! [noblock]

Cool, good to know. So would that that resolve the tracked-array vs. array-of-tracked issue @mohamed82008 was referring to in the discourse thread?

Or, alternatively, the interface could be something like this, more along the lines of how `Gibbs` works for samplers: ```julia scheme = MarginalOptimizer(LBFGS(:a), LaplaceApprox(:y)) opt = optimize(mod, MLE(), scheme) ```