Open skoval opened 3 years ago
The likelihood you wrote down is not a skewed MVN - it is still a regular MVN - this could be the reason of the bias?
I was trying to use a conditional specification for the skewed MVN, where a skew normal Y with shape alpha and covariance parameter Omega is conditonally MVN,
w ~ N(0, 1) Y | w ~ MVN(loc + abs(w) delta, Omega - delta delta')
as in Prop 1 from Azzalini and Capitanio here. But maybe I'm missing something?
I see, I think you can compare x_star to check if the ADVI estimation makes sense.
Looking closer at the Prop 1, it seems that it describes a forward simulation method, for running inference we probability need a close form log_prob function.
Exactly. That's why I went to the conditional approach, which should be an equivalent likelihood, just factorized, p(w) p(y | w)
I am working on a problem that has a multivariate outcome with negative skew. It seemed like a skew MVN model could be a good choice so I've been exploring that. In some initial simulation testing, I was surprised to find that the posterior means in ADVI are way off. I was aware that mean-field based ADVI can often underestimate the variance of rvs but is usually ok for posterior means. It looks like (sadly, for me) this problem may be one of those exceptions. And I've tested full-rank ADVI and see the same behavior.
Sorry that I don't have much idea of a solution here. But I wanted to share it, in case this example might help with ongoing VI development. Or, in the best case, someone might see how a change in my model specs could address the issue.
Skew MVN
Here is my setup and simulated data:
Skew MVN Model
The ELBO trace appears to have converged but not to the true target given the mean summary below.
In this case, the shape parameter for the first dimension is still slightly underestimated, but clearly closer to the target than with VI.
Versions and main components