Main Page | Namespace List | Class Hierarchy | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages

CLUS::MulticlassContinuousDistribution< T_Distribution > Class Template Reference

The class is a repository of continuous sistributions that each predict one of the class labels of a discrete variable. More...

#include <multiclasscontinuousdistribution.h>

Inheritance diagram for CLUS::MulticlassContinuousDistribution< T_Distribution >:

Inheritance graph
[legend]
Collaboration diagram for CLUS::MulticlassContinuousDistribution< T_Distribution >:

Collaboration graph
[legend]

Public Member Functions

 MulticlassContinuousDistribution (int NoClasses, T_Distribution &D)
 Constructor.

virtual void Infer (const double *cdata, const int *ddata, double *result)
 Infer will use data to produce noClasses normalized probabilities into result.

virtual void MultiplicativeInfer (const double *cdata, const int *ddata, double *result)
 MultiplicativeInfer uses data to produce probabilities and multiplies these probabilities with the ones in result.

virtual void StartLearning (void)
 Prepares the distributions for learning.

virtual void LearnSample (const double *cdata, const int *ddata, int classLabel, double weightSample=1.0)
 Update the sufficient statistics according to the current input.

virtual void LearnSample (const double *cdata, const int *ddata, double *classProbabilities, double weightSample=1.0)
virtual void StopLearning (void)
 Uses the sufficient statistics to compute estimates of the parameters of the distribution.

virtual double PValueStatisticalTest (void)
virtual bool IsClassLabelAbsent (int index)

Protected Attributes

Vector< T_Distribution > distributions

Detailed Description

template<class T_Distribution>
class CLUS::MulticlassContinuousDistribution< T_Distribution >

The class is a repository of continuous sistributions that each predict one of the class labels of a discrete variable.

Definition at line 50 of file multiclasscontinuousdistribution.h.


Constructor & Destructor Documentation

template<class T_Distribution>
CLUS::MulticlassContinuousDistribution< T_Distribution >::MulticlassContinuousDistribution int  NoClasses,
T_Distribution &  D
[inline]
 

Constructor.

Parameters:
NoClasses number of classes
D a distribution that contains all the parameters the distributions inside the class have.

Definition at line 62 of file multiclasscontinuousdistribution.h.


Member Function Documentation

template<class T_Distribution>
virtual void CLUS::MulticlassContinuousDistribution< T_Distribution >::Infer const double *  cdata,
const int *  ddata,
double *  result
[inline, virtual]
 

Infer will use data to produce noClasses normalized probabilities into result.

Reimplemented from CLUS::MulticlassDistribution.

Definition at line 69 of file multiclasscontinuousdistribution.h.

template<class T_Distribution>
virtual bool CLUS::MulticlassContinuousDistribution< T_Distribution >::IsClassLabelAbsent int  index  )  [inline, virtual]
 

Returns:
true if the classLabel index has no significant apearance

Reimplemented from CLUS::MulticlassDistribution.

Definition at line 133 of file multiclasscontinuousdistribution.h.

template<class T_Distribution>
virtual void CLUS::MulticlassContinuousDistribution< T_Distribution >::LearnSample const double *  cdata,
const int *  ddata,
double *  classProbabilities,
double  weightSample = 1.0
[inline, virtual]
 

Definition at line 103 of file multiclasscontinuousdistribution.h.

template<class T_Distribution>
virtual void CLUS::MulticlassContinuousDistribution< T_Distribution >::LearnSample const double *  cdata,
const int *  ddata,
int  classLabel,
double  weightSample = 1.0
[inline, virtual]
 

Update the sufficient statistics according to the current input.

Should be used if the class label is known for sure.

Parameters:
cdata contains values for the continuous variables
ddata for the discrete ones
classLabel known classification label
weightSample used to give different importance to the samples (magnifying glass effect).

Reimplemented from CLUS::MulticlassDistribution.

Definition at line 98 of file multiclasscontinuousdistribution.h.

template<class T_Distribution>
virtual void CLUS::MulticlassContinuousDistribution< T_Distribution >::MultiplicativeInfer const double *  cdata,
const int *  ddata,
double *  result
[inline, virtual]
 

MultiplicativeInfer uses data to produce probabilities and multiplies these probabilities with the ones in result.

Reimplemented from CLUS::MulticlassDistribution.

Definition at line 85 of file multiclasscontinuousdistribution.h.

template<class T_Distribution>
double CLUS::MulticlassContinuousDistribution< T_Distribution >::PValueStatisticalTest void   )  [virtual]
 

Todo:
fix this: return F(W, noClasses-1, n-noClasses, 3);

Reimplemented from CLUS::MulticlassDistribution.

Definition at line 212 of file simplenormaldistribution.h.

template<class T_Distribution>
virtual void CLUS::MulticlassContinuousDistribution< T_Distribution >::StartLearning void   )  [inline, virtual]
 

Prepares the distributions for learning.

Reimplemented from CLUS::MulticlassDistribution.

Definition at line 92 of file multiclasscontinuousdistribution.h.

template<class T_Distribution>
virtual void CLUS::MulticlassContinuousDistribution< T_Distribution >::StopLearning void   )  [inline, virtual]
 

Uses the sufficient statistics to compute estimates of the parameters of the distribution.

Reimplemented from CLUS::MulticlassDistribution.

Definition at line 111 of file multiclasscontinuousdistribution.h.


Field Documentation

template<class T_Distribution>
Vector<T_Distribution> CLUS::MulticlassContinuousDistribution< T_Distribution >::distributions [protected]
 

Definition at line 53 of file multiclasscontinuousdistribution.h.

Referenced by CLUS::MulticlassContinuousDistribution< T_Distribution >::Infer(), CLUS::MulticlassContinuousDistribution< T_Distribution >::IsClassLabelAbsent(), CLUS::MulticlassContinuousDistribution< T_Distribution >::LearnSample(), CLUS::MulticlassContinuousDistribution< T_Distribution >::MulticlassContinuousDistribution(), CLUS::MulticlassContinuousDistribution< T_Distribution >::MultiplicativeInfer(), CLUS::MulticlassContinuousDistribution< T_Distribution >::PValueStatisticalTest(), CLUS::MulticlassContinuousDistribution< T_Distribution >::StartLearning(), and CLUS::MulticlassContinuousDistribution< T_Distribution >::StopLearning().


The documentation for this class was generated from the following files:
Generated on Mon Jul 21 16:57:50 2003 for SECRET by doxygen 1.3.2