STK++ 0.9.13
STK::IClusterModelBase Class Reference

Base class for clustering models. More...

#include <STK_IClusterModelBase.h>

Inheritance diagram for STK::IClusterModelBase:
Inheritance graph

Public Member Functions

virtual ~IClusterModelBase ()
 destructor
 
int nbCluster () const
 
CPointX constpk () const
 
CVectorXi constzi () const
 
- Public Member Functions inherited from STK::IStatModelBase
int nbSample () const
 
Real lnNbSample () const
 
int nbVariable () const
 
Real lnLikelihood () const
 
Real likelihood () const
 
int nbFreeParameter () const
 
Real computeBIC () const
 
Real computeAIC () const
 
Real computeML () const
 

Protected Member Functions

 IClusterModelBase (int nbCluster)
 Constructor.
 
 IClusterModelBase (int nbSample, int nbCluster)
 Constructor.
 
 IClusterModelBase (IClusterModelBase const &model)
 copy constructor.
 
void setNbCluster (int nbCluster)
 set the number of cluster of the model
 
- Protected Member Functions inherited from STK::IStatModelBase
 IStatModelBase ()
 Default constructor.
 
 IStatModelBase (int nbSample)
 Constructor with specified dimension.
 
 IStatModelBase (int nbSample, int nbVariable)
 Constructor with specified dimension.
 
 IStatModelBase (IStatModelBase const &model)
 Copy constructor.
 
 ~IStatModelBase ()
 destructor
 
void setNbFreeParameter (int const &nbFreeParameter)
 set the number of free parameters of the model
 
void setNbSample (int const &nbSample)
 set the number of samples of the model
 
void setNbVariable (int const &nbVariable)
 set the number of variables of the model
 
void setLnLikelihood (Real const &lnLikelihood)
 set the log-likelihood of the model
 
void initialize (int nbSample, int nbVariable)
 set the dimensions of the parameters of the model
 

Protected Attributes

int nbCluster_
 number of cluster.
 
CPointX pk_
 The proportions of each mixtures.
 
CVectorXi zi_
 The zi class label.
 

Detailed Description

Base class for clustering models.

Cluster analysis or clustering is the task of grouping a set of objects in such a way that objects in the same group (called a cluster) are more similar (in some sense or another) to each other than to those in other groups (clusters). It is a main task of exploratory data mining, and a common technique for statistical data analysis, used in many fields, including machine learning, pattern recognition, image analysis, information retrieval, bioinformatics, data compression, and computer graphics.

Cluster analysis itself is not one specific algorithm, but the general task to be solved. It can be achieved by various algorithms that differ significantly in their notion of what constitutes a cluster and how to efficiently find them. Popular notions of clusters include groups with small distances among the cluster members, dense areas of the data space, intervals or particular statistical distributions. Clustering can therefore be formulated as a multi-objective optimization problem. The appropriate clustering algorithm and parameter settings (including values such as the distance function to use, a density threshold or the number of expected clusters) depend on the individual data set and intended use of the results. Cluster analysis as such is not an automatic task, but an iterative process of knowledge discovery or interactive multi-objective optimization that involves trial and failure. It is often necessary to modify data preprocessing and model parameters until the result achieves the desired properties.

Definition at line 75 of file STK_IClusterModelBase.h.

Constructor & Destructor Documentation

◆ IClusterModelBase() [1/3]

STK::IClusterModelBase::IClusterModelBase ( int  nbCluster)
protected

Constructor.

Parameters
nbClusternumber of clusters

◆ IClusterModelBase() [2/3]

STK::IClusterModelBase::IClusterModelBase ( int  nbSample,
int  nbCluster 
)
protected

Constructor.

Parameters
nbCluster,nbSamplenumber of clusters and samples

◆ IClusterModelBase() [3/3]

STK::IClusterModelBase::IClusterModelBase ( IClusterModelBase const model)
protected

copy constructor.

Parameters
modelthe model to clone

◆ ~IClusterModelBase()

virtual STK::IClusterModelBase::~IClusterModelBase ( )
virtual

destructor

Member Function Documentation

◆ nbCluster()

int STK::IClusterModelBase::nbCluster ( ) const
inline
Returns
the number of cluster

Definition at line 96 of file STK_IClusterModelBase.h.

96{ return nbCluster_;}
int nbCluster_
number of cluster.

References nbCluster_.

Referenced by setNbCluster().

◆ pk()

CPointX const & STK::IClusterModelBase::pk ( ) const
inline
Returns
the proportions of each mixtures

Definition at line 98 of file STK_IClusterModelBase.h.

98{ return pk_;};
CPointX pk_
The proportions of each mixtures.

References pk_.

◆ setNbCluster()

void STK::IClusterModelBase::setNbCluster ( int  nbCluster)
inlineprotected

set the number of cluster of the model

Parameters
nbClusternumber of cluster of the model

Definition at line 106 of file STK_IClusterModelBase.h.

References nbCluster(), and nbCluster_.

◆ zi()

CVectorXi const & STK::IClusterModelBase::zi ( ) const
inline
Returns
the zi class label

Definition at line 100 of file STK_IClusterModelBase.h.

100{ return zi_;};
CVectorXi zi_
The zi class label.

References zi_.

Member Data Documentation

◆ nbCluster_

int STK::IClusterModelBase::nbCluster_
protected

number of cluster.

Definition at line 108 of file STK_IClusterModelBase.h.

Referenced by nbCluster(), and setNbCluster().

◆ pk_

CPointX STK::IClusterModelBase::pk_
protected

The proportions of each mixtures.

Definition at line 110 of file STK_IClusterModelBase.h.

Referenced by pk().

◆ zi_

CVectorXi STK::IClusterModelBase::zi_
protected

The zi class label.

Definition at line 112 of file STK_IClusterModelBase.h.

Referenced by zi().


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