Skip to content

Refactor EmpiricalGroup to take InferenceData inputs #5884

Open
@michaelosthege

Description

@michaelosthege

To decrease our dependence on MultiTrace, and to improve support for workflows were InferenceData objects are saved to disk, the EmpiricalGroup approximation should be refactored.

Currently it takes only MultiTrace inputs, but that's just because it needs access to transformed posterior draws.
Since the approximation is created inside a modelcontext, it should be no problem to get the transforms from the Model and apply them to untransformed posterior draws.

Steps

  1. Write a function to transform posterior draws given a pm.Model instance and an xarray.Dataset (e.g. idata.posterior) containing untransformed draws.
  2. Refactor EmpiricalGroup to work with that xarray variable instead of a MultiTrace
  3. Maintain backwards-compatibility (with a deprecation warning) by automatically converting MultiTrace inhputs to InferenceData internally

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions