bayespy.nodes.Multinomial¶
- class bayespy.nodes.Multinomial(n, p, **kwargs)[source]¶
Node for multinomial random variables.
Assume there are
categories and
trials each of which leads a success for exactly one of the categories. Given the probabilities
for the categories, multinomial distribution is gives the probability of any combination of numbers of successes for the categories.
The node models the number of successes
in
trials with probability
for success in
categories.
- Parameters:
n (scalar or array) –
, number of trials
p (Dirichlet-like node or (...,K)-array) –
, probabilities of successes for the categories
See also
Methods
__init__
(n, p, **kwargs)Create Multinomial 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