SHOGUN  v1.1.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes
CGaussianNaiveBayes Class Reference

Detailed Description

Class GaussianNaiveBayes, a Gaussian Naive Bayes classifier.

This classifier assumes that a posteriori conditional probabilities are gaussian pdfs. For each vector gaussian naive bayes chooses the class C with maximal

\[ P(c) \prod_{i} P(x_i|c) \]

Definition at line 35 of file GaussianNaiveBayes.h.

Inheritance diagram for CGaussianNaiveBayes:
Inheritance graph
[legend]

Public Member Functions

 CGaussianNaiveBayes ()
 CGaussianNaiveBayes (CFeatures *train_examples, CLabels *train_labels)
virtual ~CGaussianNaiveBayes ()
virtual void set_features (CDotFeatures *features)
virtual CDotFeaturesget_features ()
virtual bool train (CFeatures *data=NULL)
virtual CLabelsapply ()
virtual CLabelsapply (CFeatures *data)
virtual float64_t apply (int32_t idx)
virtual const char * get_name () const
virtual EClassifierType get_classifier_type ()
- Public Member Functions inherited from CMachine
 CMachine ()
virtual ~CMachine ()
virtual bool load (FILE *srcfile)
virtual bool save (FILE *dstfile)
virtual void set_labels (CLabels *lab)
virtual CLabelsget_labels ()
virtual float64_t get_label (int32_t i)
void set_max_train_time (float64_t t)
float64_t get_max_train_time ()
void set_solver_type (ESolverType st)
ESolverType get_solver_type ()
virtual void set_store_model_features (bool store_model)
- Public Member Functions inherited from CSGObject
 CSGObject ()
 CSGObject (const CSGObject &orig)
virtual ~CSGObject ()
virtual bool is_generic (EPrimitiveType *generic) const
template<class T >
void set_generic ()
void unset_generic ()
virtual void print_serializable (const char *prefix="")
virtual bool save_serializable (CSerializableFile *file, const char *prefix="")
virtual bool load_serializable (CSerializableFile *file, const char *prefix="")
void set_global_io (SGIO *io)
SGIOget_global_io ()
void set_global_parallel (Parallel *parallel)
Parallelget_global_parallel ()
void set_global_version (Version *version)
Versionget_global_version ()
SGVector< char * > get_modelsel_names ()
char * get_modsel_param_descr (const char *param_name)
index_t get_modsel_param_index (const char *param_name)

Protected Member Functions

float64_t normal_exp (float64_t x, int32_t l_idx, int32_t f_idx)
- Protected Member Functions inherited from CMachine
virtual bool train_machine (CFeatures *data=NULL)
virtual void store_model_features ()
- Protected Member Functions inherited from CSGObject
virtual void load_serializable_pre () throw (ShogunException)
virtual void load_serializable_post () throw (ShogunException)
virtual void save_serializable_pre () throw (ShogunException)
virtual void save_serializable_post () throw (ShogunException)

Protected Attributes

CDotFeaturesm_features
 features for training or classifying
int32_t m_min_label
 minimal label
int32_t m_num_classes
 number of different classes (labels)
int32_t m_dim
 dimensionality of feature space
SGVector< float64_tm_means
 means for normal distributions of features
SGVector< float64_tm_variances
 variances for normal distributions of features
SGVector< float64_tm_label_prob
 a priori probabilities of labels
SGVector< float64_tm_rates
 label rates
- Protected Attributes inherited from CMachine
float64_t max_train_time
CLabelslabels
ESolverType solver_type
bool m_store_model_features

Additional Inherited Members

- Public Attributes inherited from CSGObject
SGIOio
Parallelparallel
Versionversion
Parameterm_parameters
Parameterm_model_selection_parameters

Constructor & Destructor Documentation

default constructor

Definition at line 20 of file GaussianNaiveBayes.cpp.

CGaussianNaiveBayes ( CFeatures train_examples,
CLabels train_labels 
)

constructor

Parameters
train_examplestrain examples
train_labelslabels corresponding to train_examples

Definition at line 28 of file GaussianNaiveBayes.cpp.

~CGaussianNaiveBayes ( )
virtual

destructor

Definition at line 40 of file GaussianNaiveBayes.cpp.

Member Function Documentation

CLabels * apply ( )
virtual

classify all examples

Returns
labels

Implements CMachine.

Definition at line 161 of file GaussianNaiveBayes.cpp.

CLabels * apply ( CFeatures data)
virtual

classify specified examples

Parameters
dataexamples to be classified
Returns
labels corresponding to data

Implements CMachine.

Definition at line 176 of file GaussianNaiveBayes.cpp.

float64_t apply ( int32_t  idx)
virtual

classifiy specified example

Parameters
idxexample index
Returns
label

Reimplemented from CMachine.

Definition at line 191 of file GaussianNaiveBayes.cpp.

virtual EClassifierType get_classifier_type ( )
virtual

get classifier type

Returns
classifier type

Reimplemented from CMachine.

Definition at line 105 of file GaussianNaiveBayes.h.

virtual CDotFeatures* get_features ( )
virtual

get features for classify

Returns
current features

Definition at line 68 of file GaussianNaiveBayes.h.

virtual const char* get_name ( ) const
virtual

get name

Returns
classifier name

Implements CSGObject.

Definition at line 100 of file GaussianNaiveBayes.h.

float64_t normal_exp ( float64_t  x,
int32_t  l_idx,
int32_t  f_idx 
)
protected

computes gaussian exponent by x, indexes, m_means and m_variances

Parameters
xfeature value
l_idxindex of label
f_idxindex of feature
Returns
exponent value

Definition at line 136 of file GaussianNaiveBayes.h.

virtual void set_features ( CDotFeatures features)
virtual

set features for classify

Parameters
featuresfeatures to be set

Definition at line 58 of file GaussianNaiveBayes.h.

bool train ( CFeatures data = NULL)
virtual

train classifier

Parameters
datatrain examples
Returns
true if successful

Reimplemented from CMachine.

Definition at line 50 of file GaussianNaiveBayes.cpp.

Member Data Documentation

int32_t m_dim
protected

dimensionality of feature space

Definition at line 119 of file GaussianNaiveBayes.h.

CDotFeatures* m_features
protected

features for training or classifying

Definition at line 105 of file GaussianNaiveBayes.h.

SGVector<float64_t> m_label_prob
protected

a priori probabilities of labels

Definition at line 128 of file GaussianNaiveBayes.h.

SGVector<float64_t> m_means
protected

means for normal distributions of features

Definition at line 122 of file GaussianNaiveBayes.h.

int32_t m_min_label
protected

minimal label

Definition at line 113 of file GaussianNaiveBayes.h.

int32_t m_num_classes
protected

number of different classes (labels)

Definition at line 116 of file GaussianNaiveBayes.h.

SGVector<float64_t> m_rates
protected

label rates

Definition at line 142 of file GaussianNaiveBayes.h.

SGVector<float64_t> m_variances
protected

variances for normal distributions of features

Definition at line 125 of file GaussianNaiveBayes.h.


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

SHOGUN Machine Learning Toolbox - Documentation