# bayespy.inference.vmp.nodes.expfamily.ExponentialFamily¶

class bayespy.inference.vmp.nodes.expfamily.ExponentialFamily(*args, **kwargs)[source]

A base class for nodes using natural parameterization phi.

phi

Sub-classes must implement the following static methods:

Sub-classes may need to re-implement: 1. If they manipulate plates:

_compute_weights_to_parent(index, weights) _compute_plates_to_parent(self, index, plates) _compute_plates_from_parent(self, index, plates)

__init__(*args, **kwargs)[source]

Methods

 `__init__`(*args, **kwargs) `add_plate_axis`(to_plate) `broadcasting_multiplier`(plates, *args) Delete this node and the children Computes gradient with respect to the natural parameters. Return parameters of the VB distribution. Computes the Riemannian/natural gradient. `get_shape`(ind) Return True if the node has a plotter Set the variable to a random sample from the current distribution. `initialize_from_value`(x, *args) `load`(filename) `logpdf`(X[, mask]) Compute the log probability density function Q(X) of this node. `lower_bound_contribution`([gradient, ...]) Compute E[ log p(X|parents) - log q(X) ] `move_plates`(from_plate, to_plate) `observe`(x, *args[, mask]) Fix moments, compute f and propagate mask. `pdf`(X[, mask]) Compute the probability density function of this node. `plot`([fig]) Plot the node distribution using the plotter of the node Draw a random sample from the distribution. `save`(filename) Set the parameters of the VB distribution. `set_plotter`(plotter) Print the distribution using standard parameterization. `update`([annealing])

Attributes

 `dims` `plates` `plates_multiplier` Plate multiplier is applied to messages to parents