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