pyhgf.updates.posterior.exponential.posterior_update_exponential_family#
- pyhgf.updates.posterior.exponential.posterior_update_exponential_family(attributes: Dict, edges: Tuple[AdjacencyLists, ...], node_idx: int, sufficient_stats_fn: Callable, **args) Dict[int | str, Dict] [source]#
Update the parameters of an exponential family distribution.
Assuming that \(nu\) is fixed, updating the hyperparameters of the distribution is given by:
\[\xi \leftarrow \xi + \frac{1}{\nu + 1}(t(x)-\xi)\]- Parameters:
- attributes
The attributes of the probabilistic nodes.
- edges
The edges of the probabilistic nodes as a tuple of
pyhgf.typing.Indexes
. The tuple has the same length as the node number. For each node, the index lists the value and volatility parents and children.- node_idx
Pointer to the value parent node that will be updated.
- sufficient_stats_fn
Compute the sufficient statistics of the probability distribution. This should be one of the method implemented in the distribution class in
pyhgf.math.Normal
, for a univariate normal.
- Returns:
- attributes
The updated attributes of the probabilistic nodes.
References
[1]Mathys, C., & Weber, L. (2020). Hierarchical Gaussian Filtering of Sufficient Statistic Time Series for Active Inference. In Active Inference (pp. 52–58). Springer International Publishing. https://doi.org/10.1007/978-3-030-64919-7_7