Node for exponential random variables.
Gammainstead of this. Exponential(l) is equivalent to Gamma(1, l).
l : gamma-like node or scalar or array
For simplicity, this is just a gamma node with the first parent fixed to one. Note that this is a bit inconsistent with the BayesPy philosophy which states that the node does not only define the form of the prior distribution but more importantly the form of the posterior approximation. Thus, one might expect that this node would have exponential posterior distribution approximation. However, it has a gamma distribution. Also, the moments are gamma moments although only E[x] would be the moment of a exponential random variable. All this was done because: a) gamma was already implemented, so there was no need to implement anything, and b) people might easily use Exponential node as a prior definition and expect to get gamma posterior (which is what happens now). Maybe some day a pure Exponential node is implemented and the users are advised to use Gamma(1,b) if they want to use an exponential prior distribution but gamma posterior approximation.
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.
Return True if the node has a plotter
Set the variable to a random sample from the current distribution.
Compute the log probability density function Q(X) of this node.
Compute E[ log p(X|parents) - log q(X) ]
observe(x, *args[, mask])
Fix moments, compute f and propagate mask. Compute the probability density function of this node.
Plot the node distribution using the plotter of the node
Draw a random sample from the distribution.
Set the parameters of the VB distribution.
Print the distribution using standard parameterization.
Plate multiplier is applied to messages to parents