CKernelMachine Class Reference

Inheritance diagram for CKernelMachine:

Inheritance graph
[legend]

List of all members.


Detailed Description

A generic KernelMachine interface

A kernel machine is defined as

\[ f({\bf x})=\sum_{i=0}^{N-1} \alpha_i k({\bf x}, {\bf x_i})+b \]

where $N$ is the number of training examples $\alpha_i$ are the weights assigned to each training example $k(x,x')$ is the kernel and $b$ the bias.

Using an a-priori choosen kernel, the $\alpha_i$ and bias are determined in a training procedure.

Definition at line 38 of file KernelMachine.h.


Public Member Functions

 CKernelMachine ()
virtual ~CKernelMachine ()
void set_kernel (CKernel *k)
CKernelget_kernel ()
void set_batch_computation_enabled (bool enable)
bool get_batch_computation_enabled ()
void set_linadd_enabled (bool enable)
bool get_linadd_enabled ()
virtual CLabelsclassify (CLabels *output=NULL)
virtual bool train ()
virtual DREAL classify_example (INT num)
virtual bool load (FILE *srcfile)
virtual bool save (FILE *dstfile)
virtual void set_labels (CLabels *lab)
virtual CLabelsget_labels ()
virtual DREAL get_label (INT i)
void set_max_train_time (DREAL t)
DREAL get_max_train_time ()
virtual EClassifierType get_classifier_type ()

Static Public Attributes

static CParallel parallel
static CIO io
static CVersion version

Protected Attributes

CKernelkernel
bool use_batch_computation
bool use_linadd
DREAL max_train_time
CLabelslabels

Constructor & Destructor Documentation

CKernelMachine::CKernelMachine (  ) 

default constructor

Definition at line 13 of file KernelMachine.cpp.

CKernelMachine::~CKernelMachine (  )  [virtual]

destructor

Definition at line 18 of file KernelMachine.cpp.


Member Function Documentation

void CKernelMachine::set_kernel ( CKernel k  ) 

set kernel

Parameters:
k kernel

Definition at line 51 of file KernelMachine.h.

CKernel* CKernelMachine::get_kernel (  ) 

get kernel

Returns:
kernel

Definition at line 62 of file KernelMachine.h.

void CKernelMachine::set_batch_computation_enabled ( bool  enable  ) 

set batch computation enabled

Parameters:
enable if batch computation shall be enabled

Definition at line 72 of file KernelMachine.h.

bool CKernelMachine::get_batch_computation_enabled (  ) 

check if batch computation is enabled

Returns:
if batch computation is enabled

Definition at line 81 of file KernelMachine.h.

void CKernelMachine::set_linadd_enabled ( bool  enable  ) 

set linadd enabled

Parameters:
enable if linadd shall be enabled

Definition at line 90 of file KernelMachine.h.

bool CKernelMachine::get_linadd_enabled (  ) 

check if linadd is enabled

Returns:
if linadd is enabled

Definition at line 99 of file KernelMachine.h.

CLabels * CKernelMachine::classify ( CLabels output = NULL  )  [virtual]

classify kernel machine

Parameters:
output where resuling labels are stored
Returns:
result labels

Reimplemented from CClassifier.

Reimplemented in CMultiClassSVM, and CSVM.

Definition at line 23 of file KernelMachine.cpp.

virtual bool CClassifier::train (  )  [virtual, inherited]

train classifier

Returns:
whether training was successful

Reimplemented in CKernelPerceptron, CKNN, CPerceptron, CPluginEstimate, CGMNPSVM, CGNPPSVM, CGPBTSVM, CLibSVM, CLibSVMMultiClass, CLibSVMOneClass, CMPDSVM, CSubGradientSVM, CSVMLin, CSVMOcas, CSVMSGD, CWDSVMOcas, CHierarchical, CKMeans, and CLibSVR.

Definition at line 31 of file Classifier.h.

virtual DREAL CClassifier::classify_example ( INT  num  )  [virtual, inherited]

classify one example

abstract base method

Parameters:
num which example to classify
Returns:
infinite float value

Reimplemented in CKernelPerceptron, CKNN, CLinearClassifier, CPluginEstimate, CSparseLinearClassifier, CMultiClassSVM, CSVM, and CWDSVMOcas.

Definition at line 47 of file Classifier.h.

virtual bool CClassifier::load ( FILE *  srcfile  )  [virtual, inherited]

load Classifier from file

abstract base method

Parameters:
srcfile file to load from
Returns:
failure

Reimplemented in CKernelPerceptron, CKNN, CLinearClassifier, CSVM, CHierarchical, and CKMeans.

Definition at line 56 of file Classifier.h.

virtual bool CClassifier::save ( FILE *  dstfile  )  [virtual, inherited]

save Classifier to file

abstract base method

Parameters:
dstfile file to save to
Returns:
failure

Reimplemented in CKernelPerceptron, CKNN, CLinearClassifier, CSVM, CHierarchical, and CKMeans.

Definition at line 65 of file Classifier.h.

virtual void CClassifier::set_labels ( CLabels lab  )  [virtual, inherited]

set labels

Parameters:
lab labels

Definition at line 71 of file Classifier.h.

virtual CLabels* CClassifier::get_labels (  )  [virtual, inherited]

get labels

Returns:
labels

Definition at line 82 of file Classifier.h.

virtual DREAL CClassifier::get_label ( INT  i  )  [virtual, inherited]

get one specific label

Parameters:
i index of label to get
Returns:
value of label at index i

Definition at line 89 of file Classifier.h.

void CClassifier::set_max_train_time ( DREAL  t  )  [inherited]

set maximum training time

Parameters:
t maximimum training time

Definition at line 95 of file Classifier.h.

DREAL CClassifier::get_max_train_time (  )  [inherited]

get maximum training time

Returns:
maximum training time

Definition at line 101 of file Classifier.h.

virtual EClassifierType CClassifier::get_classifier_type (  )  [virtual, inherited]

get classifier type

Returns:
classifier type NONE

Reimplemented in CKernelPerceptron, CKNN, CPerceptron, CGMNPSVM, CGNPPSVM, CGPBTSVM, CLibSVM, CLibSVMMultiClass, CLibSVMOneClass, CMPDSVM, CSubGradientSVM, CSVMLin, CSVMOcas, CSVMSGD, CWDSVMOcas, CHierarchical, CKMeans, and CLibSVR.

Definition at line 107 of file Classifier.h.


Member Data Documentation

kernel

Definition at line 113 of file KernelMachine.h.

if batch computation is enabled

Definition at line 115 of file KernelMachine.h.

bool CKernelMachine::use_linadd [protected]

if linadd is enabled

Definition at line 117 of file KernelMachine.h.

DREAL CClassifier::max_train_time [protected, inherited]

maximum training time

Definition at line 111 of file Classifier.h.

CLabels* CClassifier::labels [protected, inherited]

labels

Definition at line 114 of file Classifier.h.

CParallel CSGObject::parallel [static, inherited]

Definition at line 105 of file SGObject.h.

CIO CSGObject::io [static, inherited]

Definition at line 106 of file SGObject.h.

CVersion CSGObject::version [static, inherited]

Definition at line 107 of file SGObject.h.


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

SHOGUN Machine Learning Toolbox - Documentation