Skip to content

Add support functions for Mixture IS LOO #270

@avehtari

Description

@avehtari

We have the Mix-IS-LOO vignette https://mc-stan.org/loo/articles/loo2-mixis.html, but it would be useful to add support for creating a loo object from mixture posterior log_lik. Assuming the Stan model code implements the mixture distribution and generates log_lik variable, Mix-IS-LOO elpd_loo estimate is given by

log_lik_mix <- extract(fit_mix)$log_lik
l_common_mix <- rowLogSumExps(-log_lik_mix)
log_weights <- -log_lik_mix - l_common_mix
elpd_mixis <- logSumExp(-l_common_mix) - rowLogSumExps(t(log_weights))

We can also compute Pareto-k's for each pointwise elpd, but there is a difference that the mixture posterior elpd itself is already different from the regular posterior, so the error of Mix-IS-LOO tend to be smaller than regular PSIS-LOO.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions