gov.sandia.cognition.statistics.distribution
Class MultivariatePolyaDistribution.PMF

java.lang.Object
  extended by gov.sandia.cognition.util.AbstractCloneableSerializable
      extended by gov.sandia.cognition.statistics.AbstractDistribution<Vector>
          extended by gov.sandia.cognition.statistics.distribution.MultivariatePolyaDistribution
              extended by gov.sandia.cognition.statistics.distribution.MultivariatePolyaDistribution.PMF
All Implemented Interfaces:
Evaluator<Vector,Double>, VectorInputEvaluator<Vector,Double>, Vectorizable, ClosedFormComputableDiscreteDistribution<Vector>, ClosedFormComputableDistribution<Vector>, ClosedFormDistribution<Vector>, ComputableDistribution<Vector>, DiscreteDistribution<Vector>, Distribution<Vector>, DistributionWithMean<Vector>, ProbabilityFunction<Vector>, ProbabilityMassFunction<Vector>, CloneableSerializable, Serializable, Cloneable
Enclosing class:
MultivariatePolyaDistribution

public static class MultivariatePolyaDistribution.PMF
extends MultivariatePolyaDistribution
implements ProbabilityMassFunction<Vector>, VectorInputEvaluator<Vector,Double>

PMF of the MultivariatePolyaDistribution

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class gov.sandia.cognition.statistics.distribution.MultivariatePolyaDistribution
MultivariatePolyaDistribution.PMF
 
Field Summary
 
Fields inherited from class gov.sandia.cognition.statistics.distribution.MultivariatePolyaDistribution
DEFAULT_DIMENSIONALITY, DEFAULT_NUM_TRIALS, parameters
 
Constructor Summary
MultivariatePolyaDistribution.PMF()
          Creates a new instance of DirichletDistribution
MultivariatePolyaDistribution.PMF(int dimensionality, int numTrials)
          Creates a new instance of MultivariatePolyaDistribution
MultivariatePolyaDistribution.PMF(MultivariatePolyaDistribution other)
          Copy Constructor.
MultivariatePolyaDistribution.PMF(Vector parameters, int numTrials)
          Creates a new instance of MultivariatePolyaDistribution
 
Method Summary
 Double evaluate(Vector input)
          Evaluates the function on the given input and returns the output.
 double getEntropy()
          Gets the entropy of the values in the histogram.
 MultivariatePolyaDistribution.PMF getProbabilityFunction()
          Gets the distribution function associated with this Distribution, either the PDF or PMF.
 double logEvaluate(Vector input)
          Evaluate the natural logarithm of the distribution function.
 
Methods inherited from class gov.sandia.cognition.statistics.distribution.MultivariatePolyaDistribution
clone, convertFromVector, convertToVector, getDomain, getDomainSize, getInputDimensionality, getMean, getNumTrials, getParameters, sample, setNumTrials, setParameters, toString
 
Methods inherited from class gov.sandia.cognition.statistics.AbstractDistribution
sample
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface gov.sandia.cognition.statistics.DiscreteDistribution
getDomain, getDomainSize
 
Methods inherited from interface gov.sandia.cognition.statistics.Distribution
sample, sample
 
Methods inherited from interface gov.sandia.cognition.util.CloneableSerializable
clone
 
Methods inherited from interface gov.sandia.cognition.math.matrix.VectorInputEvaluator
getInputDimensionality
 

Constructor Detail

MultivariatePolyaDistribution.PMF

public MultivariatePolyaDistribution.PMF()
Creates a new instance of DirichletDistribution


MultivariatePolyaDistribution.PMF

public MultivariatePolyaDistribution.PMF(int dimensionality,
                                         int numTrials)
Creates a new instance of MultivariatePolyaDistribution

Parameters:
dimensionality - Dimensionality of the distribution
numTrials - Number of trials in the distribution, must be greater than 0.

MultivariatePolyaDistribution.PMF

public MultivariatePolyaDistribution.PMF(Vector parameters,
                                         int numTrials)
Creates a new instance of MultivariatePolyaDistribution

Parameters:
parameters - Parameters of the Dirichlet distribution, must be at least 2-dimensional and each element must be positive.
numTrials - Number of trials in the distribution, must be greater than 0.

MultivariatePolyaDistribution.PMF

public MultivariatePolyaDistribution.PMF(MultivariatePolyaDistribution other)
Copy Constructor.

Parameters:
other - MultivariatePolyaDistribution to copy.
Method Detail

getProbabilityFunction

public MultivariatePolyaDistribution.PMF getProbabilityFunction()
Description copied from interface: ComputableDistribution
Gets the distribution function associated with this Distribution, either the PDF or PMF.

Specified by:
getProbabilityFunction in interface ComputableDistribution<Vector>
Specified by:
getProbabilityFunction in interface DiscreteDistribution<Vector>
Specified by:
getProbabilityFunction in interface ProbabilityMassFunction<Vector>
Overrides:
getProbabilityFunction in class MultivariatePolyaDistribution
Returns:
Distribution function associated with this Distribution.

logEvaluate

public double logEvaluate(Vector input)
Description copied from interface: ProbabilityFunction
Evaluate the natural logarithm of the distribution function. This is sometimes more efficient than evaluating the distribution function itself, and when evaluating the product of many independent or exchangeable samples.

Specified by:
logEvaluate in interface ProbabilityFunction<Vector>
Returns:
Natural logarithm of the distribution function.

evaluate

public Double evaluate(Vector input)
Description copied from interface: Evaluator
Evaluates the function on the given input and returns the output.

Specified by:
evaluate in interface Evaluator<Vector,Double>
Parameters:
input - The input to evaluate.
Returns:
The output produced by evaluating the input.

getEntropy

public double getEntropy()
Description copied from interface: ProbabilityMassFunction
Gets the entropy of the values in the histogram.

Specified by:
getEntropy in interface ProbabilityMassFunction<Vector>
Returns:
The entropy of the values in the histogram.