LiTe
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | Friends | List of all members
PseudoLikDiscrete Class Reference

Discrete approximation of the log-pseudolikelihood of a Gibbsian T-tessellation. More...

#include <ttessel.h>

Inheritance diagram for PseudoLikDiscrete:
PLInferenceNOIS

Public Member Functions

 PseudoLikDiscrete (Energy *)
 Constructor initializing the model to be considered. More...
 
EnergyGetEnergy ()
 Get the Energy data member.
 
void SetEnergy (Energy *e)
 Set the Energy data member.
 
void AddSplits (Size)
 Increment the sample of dummy splits. More...
 
void AddGivenSplit (TTessel::Split)
 Add a given dummy split. More...
 
std::vector< CatVectorGetSplitStatistics ()
 Return the split term of the discrete approximation of the log-pseudolikelihood.
 
std::vector< CatVectorGetFlipStatistics ()
 Return the flip term of the discrete approximation of the log-pseudolikelihood.
 
void ClearSplits ()
 Remove all dummy splits.
 
double GetValue (CatVector)
 Return log-pseudo-likelihood value. More...
 
CatVector GetGradient (CatVector)
 Return pseudo-likelihood gradient. More...
 
CatMatrix GetHessian (CatVector)
 Return the Hessian of the log-pseudolikelihood.
 

Friends

std::ostream & operator<< (std::ostream &, const PseudoLikDiscrete &)
 Send T-tessellation pseudolikelihood data to an output stream. More...
 

Detailed Description

Discrete approximation of the log-pseudolikelihood of a Gibbsian T-tessellation.

The Gibbs model to be considered is stored in a private data member as an Energy object. The pseudolikelihood involves an integral over the space of splits that can be applied to the observed T-tessellation. The discrete approximation consists in replacing the integral by a discrete sum computed on a sample of dummy splits. Dummy splits are drawn independently and uniformly.

Constructor & Destructor Documentation

PseudoLikDiscrete::PseudoLikDiscrete ( Energy e)

Constructor initializing the model to be considered.

Some components of the discrete approximation of the pseudolikelihood related to merges and flips are precomputed.

Member Function Documentation

void PseudoLikDiscrete::AddGivenSplit ( TTessel::Split  s)

Add a given dummy split.

Note
Is this really useful?
void PseudoLikDiscrete::AddSplits ( Size  n)

Increment the sample of dummy splits.

Parameters
n: the number of dummy splits to be added.

Terms of the approximation of the pseudolikelihood related to splits are updated.

CatVector PseudoLikDiscrete::GetGradient ( CatVector  theta)

Return pseudo-likelihood gradient.

Parameters
theta: parameter where the gradient of the log-pseudolikelihood has to be computed.
Returns
the value of the gradient of the discrete approximation of the log-pseudolikelihood
double PseudoLikDiscrete::GetValue ( CatVector  theta)

Return log-pseudo-likelihood value.

Parameters
theta: parameter for which the likelihood is computed.
Returns
the value of the discrete approximation of the log-pseudolikelihood.

Friends And Related Function Documentation

std::ostream& operator<< ( std::ostream &  os,
const PseudoLikDiscrete pld 
)
friend

Send T-tessellation pseudolikelihood data to an output stream.

Parameters
os: output stream
pld: the pseudolikelihood of a T-tessellation

The documentation for this class was generated from the following files: