public class Dirichlet<E> extends java.lang.Object implements ConjugatePrior<Multinomial<E>,E>
| Modifier and Type | Method and Description |
|---|---|
Multinomial<E> |
drawSample(java.util.Random random) |
static <F> Multinomial<F> |
drawSample(java.util.Random random,
Counter<F> parameters) |
static double[] |
drawSample(java.util.Random random,
double[] parameters) |
Dirichlet<E> |
getPosteriorDistribution(Counter<E> counts)
Gets the ConjugatePrior which results from conditioning on all of these evidence.
|
double |
getPosteriorPredictiveLogProbability(Counter<E> counts,
E object) |
double |
getPosteriorPredictiveProbability(Counter<E> counts,
E object)
Gets the posterior probability of the observation, after conditioning on all of the evidence.
|
double |
getPredictiveLogProbability(E object) |
double |
getPredictiveProbability(E object)
Marginalizes over all possible likelihood distributions to give the marginal probability of
the observation.
|
double |
logProbabilityOf(Multinomial<E> object) |
double |
probabilityOf(Multinomial<E> object) |
static double |
sampleBeta(double a,
double b,
java.util.Random random) |
java.lang.String |
toString() |
static double |
unnormalizedLogProbabilityOf(double[] mult,
double[] params) |
public Multinomial<E> drawSample(java.util.Random random)
drawSample in interface ProbabilityDistribution<Multinomial<E>>public static <F> Multinomial<F> drawSample(java.util.Random random, Counter<F> parameters)
public static double[] drawSample(java.util.Random random,
double[] parameters)
public static double sampleBeta(double a,
double b,
java.util.Random random)
public double getPredictiveProbability(E object)
ConjugatePriorgetPredictiveProbability in interface ConjugatePrior<Multinomial<E>,E>public double getPredictiveLogProbability(E object)
getPredictiveLogProbability in interface ConjugatePrior<Multinomial<E>,E>public Dirichlet<E> getPosteriorDistribution(Counter<E> counts)
ConjugatePriorgetPosteriorDistribution in interface ConjugatePrior<Multinomial<E>,E>public double getPosteriorPredictiveProbability(Counter<E> counts, E object)
ConjugatePriorgetPosteriorPredictiveProbability in interface ConjugatePrior<Multinomial<E>,E>public double getPosteriorPredictiveLogProbability(Counter<E> counts, E object)
getPosteriorPredictiveLogProbability in interface ConjugatePrior<Multinomial<E>,E>public double probabilityOf(Multinomial<E> object)
probabilityOf in interface ProbabilityDistribution<Multinomial<E>>public static double unnormalizedLogProbabilityOf(double[] mult,
double[] params)
public double logProbabilityOf(Multinomial<E> object)
logProbabilityOf in interface ProbabilityDistribution<Multinomial<E>>public java.lang.String toString()
toString in class java.lang.Object