CSubGradientSVM Class Reference

Inheritance diagram for CSubGradientSVM:

Inheritance graph
[legend]

List of all members.


Detailed Description

class SubGradientSVM

Definition at line 21 of file SubGradientSVM.h.


Public Member Functions

 CSubGradientSVM ()
 CSubGradientSVM (DREAL C, CSparseFeatures< DREAL > *traindat, CLabels *trainlab)
virtual ~CSubGradientSVM ()
virtual EClassifierType get_classifier_type ()
virtual bool train ()
void set_C (DREAL c1, DREAL c2)
DREAL get_C1 ()
DREAL get_C2 ()
void set_bias_enabled (bool enable_bias)
bool get_bias_enabled ()
void set_epsilon (DREAL eps)
DREAL get_epsilon ()
void set_qpsize (INT q)
INT get_qpsize ()
void set_qpsize_max (INT q)
INT get_qpsize_max ()
virtual CLabelsclassify (CLabels *output=NULL)
virtual DREAL classify_example (INT vec_idx)
 get output for example "vec_idx"
void get_w (DREAL **dst_w, INT *dst_dims)
void set_w (DREAL *src_w, INT src_w_dim)
void set_bias (DREAL b)
DREAL get_bias ()
void set_features (CSparseFeatures< DREAL > *feat)
CSparseFeatures< DREAL > * get_features ()
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 ()

Static Public Attributes

static CParallel parallel
static CIO io
static CVersion version

Protected Member Functions

INT find_active (INT num_feat, INT num_vec, INT &num_active, INT &num_bound)
void update_active (INT num_feat, INT num_vec)
DREAL compute_objective (INT num_feat, INT num_vec)
 compute svm objective
DREAL compute_min_subgradient (INT num_feat, INT num_vec, INT num_active, INT num_bound)
DREAL line_search (INT num_feat, INT num_vec)
 performs a line search to determine step size
void compute_projection (INT num_feat, INT num_vec)
 compute projection
void update_projection (DREAL alpha, INT num_vec)
 only computes updates on the projection
void init (INT num_vec, INT num_feat)
 alloc helper arrays
void cleanup ()
 de-alloc helper arrays

Protected Attributes

DREAL C1
DREAL C2
DREAL epsilon
DREAL work_epsilon
DREAL autoselected_epsilon
INT qpsize
INT qpsize_max
INT qpsize_limit
bool use_bias
INT last_it_noimprovement
INT num_it_noimprovement
BYTEactive
BYTEold_active
INTidx_active
INTidx_bound
INT delta_active
INT delta_bound
DREALproj
DREALtmp_proj
INTtmp_proj_idx
DREALsum_CXy_active
DREALv
DREALold_v
DREAL sum_Cy_active
DREALgrad_w
DREAL grad_b
DREALgrad_proj
DREALhinge_point
INThinge_idx
DREALbeta
DREALold_beta
DREALZv
DREALold_Zv
DREALZ
DREALold_Z
INT w_dim
DREALw
DREAL bias
CSparseFeatures< DREAL > * features
DREAL max_train_time
CLabelslabels

Constructor & Destructor Documentation

CSubGradientSVM::CSubGradientSVM (  ) 

default constructor

Definition at line 27 of file SubGradientSVM.cpp.

CSubGradientSVM::CSubGradientSVM ( DREAL  C,
CSparseFeatures< DREAL > *  traindat,
CLabels trainlab 
)

constructor

Parameters:
C constant C
traindat training features
trainlab labels for training features

Definition at line 33 of file SubGradientSVM.cpp.

CSubGradientSVM::~CSubGradientSVM (  )  [virtual]

Definition at line 42 of file SubGradientSVM.cpp.


Member Function Documentation

virtual EClassifierType CSubGradientSVM::get_classifier_type (  )  [virtual]

get classifier type

Returns:
classifier type SUBGRADIENTSVM

Reimplemented from CClassifier.

Definition at line 40 of file SubGradientSVM.h.

bool CSubGradientSVM::train (  )  [virtual]

train SVM

Returns:
if training was successful

Reimplemented from CClassifier.

Definition at line 533 of file SubGradientSVM.cpp.

void CSubGradientSVM::set_C ( DREAL  c1,
DREAL  c2 
)

set C

Parameters:
c1 new C1
c2 new C2

Definition at line 53 of file SubGradientSVM.h.

DREAL CSubGradientSVM::get_C1 (  ) 

get C1

Returns:
C1

Definition at line 59 of file SubGradientSVM.h.

DREAL CSubGradientSVM::get_C2 (  ) 

get C2

Returns:
C2

Definition at line 65 of file SubGradientSVM.h.

void CSubGradientSVM::set_bias_enabled ( bool  enable_bias  ) 

set if bias shall be enabled

Parameters:
enable_bias if bias shall be enabled

Definition at line 71 of file SubGradientSVM.h.

bool CSubGradientSVM::get_bias_enabled (  ) 

check if bias is enabled

Returns:
if bias is enabled

Definition at line 77 of file SubGradientSVM.h.

void CSubGradientSVM::set_epsilon ( DREAL  eps  ) 

set epsilon

Parameters:
eps new epsilon

Definition at line 83 of file SubGradientSVM.h.

DREAL CSubGradientSVM::get_epsilon (  ) 

get epsilon

Returns:
epsilon

Definition at line 89 of file SubGradientSVM.h.

void CSubGradientSVM::set_qpsize ( INT  q  ) 

set qpsize

Parameters:
q new qpsize

Definition at line 95 of file SubGradientSVM.h.

INT CSubGradientSVM::get_qpsize (  ) 

get qpsize

Returns:
qpsize

Definition at line 101 of file SubGradientSVM.h.

void CSubGradientSVM::set_qpsize_max ( INT  q  ) 

set qpsize_max

Parameters:
q new qpsize_max

Definition at line 107 of file SubGradientSVM.h.

INT CSubGradientSVM::get_qpsize_max (  ) 

get qpsize_max

Returns:
qpsize_max

Definition at line 113 of file SubGradientSVM.h.

INT CSubGradientSVM::find_active ( INT  num_feat,
INT  num_vec,
INT num_active,
INT num_bound 
) [protected]

returns number of changed constraints for precision work_epsilon and fills active array

Definition at line 79 of file SubGradientSVM.cpp.

void CSubGradientSVM::update_active ( INT  num_feat,
INT  num_vec 
) [protected]

swaps the active / old_active and computes idx_active, idx_bound and sum_CXy_active arrays and the sum_Cy_active variable

Definition at line 200 of file SubGradientSVM.cpp.

DREAL CSubGradientSVM::compute_objective ( INT  num_feat,
INT  num_vec 
) [protected]

compute svm objective

Definition at line 395 of file SubGradientSVM.cpp.

DREAL CSubGradientSVM::compute_min_subgradient ( INT  num_feat,
INT  num_vec,
INT  num_active,
INT  num_bound 
) [protected]

compute minimum norm subgradient return norm of minimum norm subgradient

Definition at line 288 of file SubGradientSVM.cpp.

DREAL CSubGradientSVM::line_search ( INT  num_feat,
INT  num_vec 
) [protected]

performs a line search to determine step size

Definition at line 222 of file SubGradientSVM.cpp.

void CSubGradientSVM::compute_projection ( INT  num_feat,
INT  num_vec 
) [protected]

compute projection

Definition at line 408 of file SubGradientSVM.cpp.

void CSubGradientSVM::update_projection ( DREAL  alpha,
INT  num_vec 
) [protected]

only computes updates on the projection

Definition at line 414 of file SubGradientSVM.cpp.

void CSubGradientSVM::init ( INT  num_vec,
INT  num_feat 
) [protected]

alloc helper arrays

Definition at line 419 of file SubGradientSVM.cpp.

void CSubGradientSVM::cleanup (  )  [protected]

de-alloc helper arrays

Definition at line 496 of file SubGradientSVM.cpp.

CLabels * CSparseLinearClassifier::classify ( CLabels output = NULL  )  [virtual, inherited]

classify all examples

Parameters:
output resulting labels
Returns:
resulting labels

Reimplemented from CClassifier.

Definition at line 24 of file SparseLinearClassifier.cpp.

virtual DREAL CSparseLinearClassifier::classify_example ( INT  vec_idx  )  [virtual, inherited]

get output for example "vec_idx"

Reimplemented from CClassifier.

Definition at line 34 of file SparseLinearClassifier.h.

void CSparseLinearClassifier::get_w ( DREAL **  dst_w,
INT dst_dims 
) [inherited]

get w

Parameters:
dst_w store w in this argument
dst_dims dimension of w

Definition at line 44 of file SparseLinearClassifier.h.

void CSparseLinearClassifier::set_w ( DREAL src_w,
INT  src_w_dim 
) [inherited]

set w

Parameters:
src_w new w
src_w_dim dimension of new w

Definition at line 59 of file SparseLinearClassifier.h.

void CSparseLinearClassifier::set_bias ( DREAL  b  )  [inherited]

set bias

Parameters:
b new bias

Definition at line 69 of file SparseLinearClassifier.h.

DREAL CSparseLinearClassifier::get_bias (  )  [inherited]

get bias

Returns:
bias

Definition at line 78 of file SparseLinearClassifier.h.

void CSparseLinearClassifier::set_features ( CSparseFeatures< DREAL > *  feat  )  [inherited]

set features

Parameters:
feat features to set

Definition at line 87 of file SparseLinearClassifier.h.

CSparseFeatures<DREAL>* CSparseLinearClassifier::get_features (  )  [inherited]

get features

Returns:
features

Definition at line 98 of file SparseLinearClassifier.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.


Member Data Documentation

C1

Definition at line 148 of file SubGradientSVM.h.

C2

Definition at line 150 of file SubGradientSVM.h.

epsilon

Definition at line 152 of file SubGradientSVM.h.

work epsilon

Definition at line 154 of file SubGradientSVM.h.

autoselected epsilon

Definition at line 156 of file SubGradientSVM.h.

qpsize

Definition at line 158 of file SubGradientSVM.h.

maximum qpsize

Definition at line 160 of file SubGradientSVM.h.

limit of qpsize

Definition at line 162 of file SubGradientSVM.h.

bool CSubGradientSVM::use_bias [protected]

shall bias be used

Definition at line 164 of file SubGradientSVM.h.

last iteration no improvement

Definition at line 167 of file SubGradientSVM.h.

number of iterations no improvement

Definition at line 169 of file SubGradientSVM.h.

0=not active, 1=active, 2=on boundary

Definition at line 173 of file SubGradientSVM.h.

old active

Definition at line 175 of file SubGradientSVM.h.

idx active

Definition at line 177 of file SubGradientSVM.h.

idx bound

Definition at line 179 of file SubGradientSVM.h.

delta active

Definition at line 181 of file SubGradientSVM.h.

delta bound

Definition at line 183 of file SubGradientSVM.h.

proj

Definition at line 185 of file SubGradientSVM.h.

tmp proj

Definition at line 187 of file SubGradientSVM.h.

tmp proj index

Definition at line 189 of file SubGradientSVM.h.

sum CXy active

Definition at line 193 of file SubGradientSVM.h.

DREAL* CSubGradientSVM::v [protected]

v

Definition at line 195 of file SubGradientSVM.h.

old v

Definition at line 197 of file SubGradientSVM.h.

sum Cy active

Definition at line 199 of file SubGradientSVM.h.

grad w

Definition at line 203 of file SubGradientSVM.h.

grad b

Definition at line 205 of file SubGradientSVM.h.

grad proj

Definition at line 207 of file SubGradientSVM.h.

hinge point

Definition at line 209 of file SubGradientSVM.h.

hinge index

Definition at line 211 of file SubGradientSVM.h.

beta

Definition at line 215 of file SubGradientSVM.h.

old beta

Definition at line 217 of file SubGradientSVM.h.

DREAL* CSubGradientSVM::Zv [protected]

Zv

Definition at line 219 of file SubGradientSVM.h.

old Zv

Definition at line 221 of file SubGradientSVM.h.

DREAL* CSubGradientSVM::Z [protected]

Z

Definition at line 223 of file SubGradientSVM.h.

old Z

Definition at line 225 of file SubGradientSVM.h.

INT CSparseLinearClassifier::w_dim [protected, inherited]

dimension of w

Definition at line 102 of file SparseLinearClassifier.h.

DREAL* CSparseLinearClassifier::w [protected, inherited]

w

Definition at line 104 of file SparseLinearClassifier.h.

DREAL CSparseLinearClassifier::bias [protected, inherited]

bias

Definition at line 106 of file SparseLinearClassifier.h.

features

Definition at line 108 of file SparseLinearClassifier.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