public class GammaVertex extends DoubleVertex implements Differentiable, ProbabilisticDouble, SamplableWithManyScalars<DoubleTensor>, LogProbGraphSupplier
| Constructor and Description |
|---|
GammaVertex(double theta,
double k) |
GammaVertex(double theta,
DoubleVertex k) |
GammaVertex(DoubleVertex theta,
double k) |
GammaVertex(DoubleVertex theta,
DoubleVertex k)
One to one constructor for mapping some shape of theta and k to matching shaped gamma.
|
GammaVertex(long[] tensorShape,
DoubleVertex theta,
DoubleVertex k)
Theta or k or both driving an arbitrarily shaped tensor of Gamma
|
| Modifier and Type | Method and Description |
|---|---|
java.util.Map<Vertex,DoubleTensor> |
dLogProb(DoubleTensor value,
java.util.Set<? extends Vertex> withRespectTo)
The partial derivatives of the natural log prob.
|
DoubleVertex |
getK() |
DoubleVertex |
getTheta() |
double |
logProb(DoubleTensor value)
This is the natural log of the probability at the supplied value.
|
LogProbGraph |
logProbGraph() |
DoubleTensor |
sampleWithShape(long[] shape,
KeanuRandom random) |
abs, acos, asin, atan, atan2, ceil, concat, cos, div, div, divideBy, divideBy, equalTo, exp, floor, getValue, greaterThan, greaterThanOrEqualTo, lambda, lambda, lessThan, lessThanOrEqualTo, loadValue, log, logGamma, matrixDeterminant, matrixInverse, matrixMultiply, max, min, minus, minus, multiply, multiply, notEqualTo, observe, observe, permute, plus, plus, pow, pow, reshape, reverseDiv, reverseMinus, round, saveValue, setAndCascade, setAndCascade, setValue, setValue, setWithMask, setWithMask, sigmoid, sin, slice, sum, sum, take, tan, times, times, toGreaterThanMask, toGreaterThanMask, toGreaterThanOrEqualToMask, toGreaterThanOrEqualToMask, toInteger, toLessThanMask, toLessThanMask, toLessThanOrEqualToMask, toLessThanOrEqualToMask, transpose, unaryMinusaddChild, addParent, addParents, equals, eval, getChildren, getConnectedGraph, getDegree, getId, getIndentation, getLabel, getObservedValue, getParents, getRank, getReference, getShape, getState, getValue, hashCode, hasValue, isDifferentiable, isObserved, isProbabilistic, lazyEval, observe, observeOwnValue, print, print, removeLabel, save, setAndCascade, setLabel, setLabel, setParents, setParents, setState, setValue, toString, unobserveclone, finalize, getClass, notify, notifyAll, wait, wait, waitforwardModeAutoDifferentiation, reverseModeAutoDifferentiation, withRespectToSelfdLogPdf, dLogPdf, dLogPdf, dLogPdf, dLogPdf, dLogPdf, logPdf, logPdf, logPdfdLogProb, dLogProbAtValue, dLogProbAtValue, getValue, keepOnlyProbabilisticVertices, logProbAtValuegetObservedValue, isObserved, observe, unobservesample, sampleManyScalars, sampleManyScalarssampleWithShapepublic GammaVertex(long[] tensorShape,
DoubleVertex theta,
DoubleVertex k)
If all provided parameters are scalar then the proposed shape determines the shape
tensorShape - the desired shape of the vertextheta - the theta (scale) of the Gamma with either the same shape as specified for this vertexk - the k (shape) of the Gamma with either the same shape as specified for this vertexpublic GammaVertex(DoubleVertex theta, DoubleVertex k)
theta - the theta (scale) of the Gamma with either the same shape as specified for this vertexk - the k (shape) of the Gamma with either the same shape as specified for this vertexpublic GammaVertex(DoubleVertex theta, double k)
public GammaVertex(double theta,
DoubleVertex k)
public GammaVertex(double theta,
double k)
public DoubleVertex getTheta()
public DoubleVertex getK()
public double logProb(DoubleTensor value)
ProbabilisticlogProb in interface Probabilistic<DoubleTensor>value - The supplied value.public LogProbGraph logProbGraph()
logProbGraph in interface LogProbGraphSupplierpublic java.util.Map<Vertex,DoubleTensor> dLogProb(DoubleTensor value, java.util.Set<? extends Vertex> withRespectTo)
ProbabilisticdLogProb in interface Probabilistic<DoubleTensor>value - at a given valuewithRespectTo - list of parents to differentiate with respect topublic DoubleTensor sampleWithShape(long[] shape, KeanuRandom random)
sampleWithShape in interface SamplableWithShape<DoubleTensor>