bayespy.nodes.Binomial¶
- class bayespy.nodes.Binomial(n, p, **kwargs)[source]¶
Node for binomial random variables.
The node models the number of successes in trials with probability for success:
- Parameters:
n (scalar or array) – Number of trials
p (beta-like node or scalar or array) – Probability of a success in a trial
Examples
>>> import warnings >>> warnings.filterwarnings('ignore', category=RuntimeWarning) >>> from bayespy.nodes import Binomial, Beta >>> p = Beta([1e-3, 1e-3]) >>> x = Binomial(10, p) >>> x.observe(7) >>> p.update() >>> import bayespy.plot as bpplt >>> import numpy as np >>> bpplt.pdf(p, np.linspace(0, 1, num=100)) [<matplotlib.lines.Line2D object at 0x...>]
See also
Methods
__init__
(n, p, **kwargs)Create binomial node
add_plate_axis
(to_plate)broadcasting_multiplier
(plates, *args)delete
()Delete this node and the children
get_gradient
(rg)Computes gradient with respect to the natural parameters.
get_mask
()Return parameters of the VB distribution.
Computes the Riemannian/natural gradient.
get_shape
(ind)Return True if the node has a plotter
initialize_from_parameters
(*args)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
random
()Draw a random sample from the distribution.
save
(filename)Set the parameters of the VB distribution.
set_plotter
(plotter)show
()Print the distribution using standard parameterization.
update
([annealing])Attributes
Plate multiplier is applied to messages to parents