gov.sandia.cognition.statistics.bayesian.conjugate
Interface ConjugatePriorBayesianEstimator<ObservationType,ParameterType,ConditionalType extends ClosedFormDistribution<ObservationType>,BeliefType extends ClosedFormDistribution<ParameterType>>

Type Parameters:
ObservationType - Observations from the ConditionalType that are used to estimate the parameters of the distribution.
BeliefType - Type of Distribution that represents uncertainty in the parameters.
ParameterType - Type of parameter estimated by this algorithm, which is used to parameterize the conditional distribution.
ConditionalType - Type of conditional distribution that generates observations for this relationship.
All Superinterfaces:
BatchLearner<Collection<? extends ObservationType>,BeliefType>, BayesianEstimator<ObservationType,ParameterType,BeliefType>, Cloneable, CloneableSerializable, IncrementalLearner<ObservationType,BeliefType>, RecursiveBayesianEstimator<ObservationType,ParameterType,BeliefType>, Serializable
All Known Subinterfaces:
ConjugatePriorBayesianEstimatorPredictor<ObservationType,ParameterType,ConditionalType,BeliefType>
All Known Implementing Classes:
AbstractConjugatePriorBayesianEstimator, BernoulliBayesianEstimator, BinomialBayesianEstimator, ExponentialBayesianEstimator, GammaInverseScaleBayesianEstimator, MultinomialBayesianEstimator, MultivariateGaussianMeanBayesianEstimator, MultivariateGaussianMeanCovarianceBayesianEstimator, PoissonBayesianEstimator, UniformDistributionBayesianEstimator, UnivariateGaussianMeanBayesianEstimator, UnivariateGaussianMeanVarianceBayesianEstimator

@PublicationReferences(references={@PublicationReference(author="Daniel Fink",title="A Compendium of Conjugate Priors",type=TechnicalReport,year=1997,url="http://www.stat.columbia.edu/~cook/movabletype/mlm/CONJINTRnew%2BTEX.pdf"),@PublicationReference(author="Wikipedia",title="Conjugate Prior",type=WebPage,year=2009,url="http://en.wikipedia.org/wiki/Conjugate_prior")})
public interface ConjugatePriorBayesianEstimator<ObservationType,ParameterType,ConditionalType extends ClosedFormDistribution<ObservationType>,BeliefType extends ClosedFormDistribution<ParameterType>>
extends RecursiveBayesianEstimator<ObservationType,ParameterType,BeliefType>

A Bayesian Estimator that makes use of conjugate priors, which is a mathematical trick when the conditional and the prior result a posterior that is the same type as the prior.

Since:
3.0
Author:
Kevin R. Dixon

Method Summary
 double computeEquivalentSampleSize(BeliefType belief)
          Computes the equivalent sample size of using the given prior.
 ConditionalType createConditionalDistribution(ParameterType parameter)
          Creates an instance of the class conditional distribution, parameterized by the given parameter value.
 BayesianParameter<ParameterType,ConditionalType,BeliefType> createParameter(ConditionalType conditional, BeliefType prior)
          Creates a parameter linking the conditional and prior distributions
 BayesianParameter<ParameterType,ConditionalType,BeliefType> getParameter()
          Gets the Bayesian hyperparameter relationship between the conditional distribution and the conjugate prior distribution.
 
Methods inherited from interface gov.sandia.cognition.learning.algorithm.BatchLearner
learn
 
Methods inherited from interface gov.sandia.cognition.util.CloneableSerializable
clone
 
Methods inherited from interface gov.sandia.cognition.learning.algorithm.IncrementalLearner
createInitialLearnedObject, update, update
 

Method Detail

createParameter

BayesianParameter<ParameterType,ConditionalType,BeliefType> createParameter(ConditionalType conditional,
                                                                            BeliefType prior)
Creates a parameter linking the conditional and prior distributions

Parameters:
conditional - Distribution from which observations are generated
prior - Distribution that generates parameters for the conditional
Returns:
Parameter describing the relationship between the conditional and prior

getParameter

BayesianParameter<ParameterType,ConditionalType,BeliefType> getParameter()
Gets the Bayesian hyperparameter relationship between the conditional distribution and the conjugate prior distribution.

Returns:
Bayesian hyperparameter relationship between the conditional distribution and the conjugate prior distribution.

createConditionalDistribution

ConditionalType createConditionalDistribution(ParameterType parameter)
Creates an instance of the class conditional distribution, parameterized by the given parameter value. This is the distribution that we implicitly draw observation samples from.

Parameters:
parameter - Parameter used to create the class conditional distribution.
Returns:
Parameterized class conditional distribution.

computeEquivalentSampleSize

double computeEquivalentSampleSize(BeliefType belief)
Computes the equivalent sample size of using the given prior. This is effectively how many samples of bias the prior injects into the estimate.

Parameters:
belief - Prior belief to measure.
Returns:
Equivalent sample size of the initial belief.