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
CDotKernel Class Reference

Detailed Description

Template class DotKernel is the base class for kernels working on DotFeatures.

CDotFeatures are features supporting operations like dot product, dot product with a dense vector and addition to a dense vector. Therefore several dot product based kernels derive from this class (cf., e.g., CLinearKernel)

See Also
CDotFeatures

Definition at line 29 of file DotKernel.h.

Inheritance diagram for CDotKernel:
Inheritance graph
[legend]

Public Member Functions

 CDotKernel ()
 CDotKernel (int32_t cachesize)
 CDotKernel (CFeatures *l, CFeatures *r)
virtual bool init (CFeatures *l, CFeatures *r)
virtual EFeatureClass get_feature_class ()
virtual EFeatureType get_feature_type ()
virtual const char * get_name () const
virtual EKernelType get_kernel_type ()=0
- Public Member Functions inherited from CKernel
 CKernel ()
 CKernel (int32_t size)
 CKernel (CFeatures *l, CFeatures *r, int32_t size)
virtual ~CKernel ()
float64_t kernel (int32_t idx_a, int32_t idx_b)
SGMatrix< float64_tget_kernel_matrix ()
virtual SGVector< float64_tget_kernel_col (int32_t j)
virtual SGVector< float64_tget_kernel_row (int32_t i)
template<class T >
SGMatrix< T > get_kernel_matrix ()
virtual bool set_normalizer (CKernelNormalizer *normalizer)
virtual CKernelNormalizerget_normalizer ()
virtual bool init_normalizer ()
virtual void cleanup ()
void load (CFile *loader)
void save (CFile *writer)
CFeaturesget_lhs ()
CFeaturesget_rhs ()
virtual int32_t get_num_vec_lhs ()
virtual int32_t get_num_vec_rhs ()
virtual bool has_features ()
bool get_lhs_equals_rhs ()
virtual void remove_lhs_and_rhs ()
virtual void remove_lhs ()
virtual void remove_rhs ()
 takes all necessary steps if the rhs is removed from kernel
void set_cache_size (int32_t size)
int32_t get_cache_size ()
void list_kernel ()
bool has_property (EKernelProperty p)
virtual void clear_normal ()
virtual void add_to_normal (int32_t vector_idx, float64_t weight)
EOptimizationType get_optimization_type ()
virtual void set_optimization_type (EOptimizationType t)
bool get_is_initialized ()
virtual bool init_optimization (int32_t count, int32_t *IDX, float64_t *weights)
virtual bool delete_optimization ()
bool init_optimization_svm (CSVM *svm)
virtual float64_t compute_optimized (int32_t vector_idx)
virtual void compute_batch (int32_t num_vec, int32_t *vec_idx, float64_t *target, int32_t num_suppvec, int32_t *IDX, float64_t *alphas, float64_t factor=1.0)
float64_t get_combined_kernel_weight ()
void set_combined_kernel_weight (float64_t nw)
virtual int32_t get_num_subkernels ()
virtual void compute_by_subkernel (int32_t vector_idx, float64_t *subkernel_contrib)
virtual const float64_tget_subkernel_weights (int32_t &num_weights)
virtual void set_subkernel_weights (SGVector< float64_t > weights)
- 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

virtual float64_t compute (int32_t idx_a, int32_t idx_b)
- Protected Member Functions inherited from CKernel
void set_property (EKernelProperty p)
void unset_property (EKernelProperty p)
void set_is_initialized (bool p_init)
int32_t compute_row_start (int64_t offs, int32_t n, bool symmetric)
virtual void load_serializable_post () throw (ShogunException)
virtual void save_serializable_pre () throw (ShogunException)
virtual void save_serializable_post () throw (ShogunException)
virtual void register_params ()
- Protected Member Functions inherited from CSGObject
virtual void load_serializable_pre () throw (ShogunException)

Additional Inherited Members

- Public Attributes inherited from CSGObject
SGIOio
Parallelparallel
Versionversion
Parameterm_parameters
Parameterm_model_selection_parameters
- Static Protected Member Functions inherited from CKernel
template<class T >
static void * get_kernel_matrix_helper (void *p)
- Protected Attributes inherited from CKernel
int32_t cache_size
 cache_size in MB
KERNELCACHE_ELEMkernel_matrix
CFeatureslhs
 feature vectors to occur on left hand side
CFeaturesrhs
 feature vectors to occur on right hand side
bool lhs_equals_rhs
 lhs
int32_t num_lhs
 number of feature vectors on left hand side
int32_t num_rhs
 number of feature vectors on right hand side
float64_t combined_kernel_weight
bool optimization_initialized
EOptimizationType opt_type
uint64_t properties
CKernelNormalizernormalizer

Constructor & Destructor Documentation

default constructor

Definition at line 35 of file DotKernel.h.

CDotKernel ( int32_t  cachesize)

constructor

Parameters
cachesizecache size

Definition at line 41 of file DotKernel.h.

CDotKernel ( CFeatures l,
CFeatures r 
)

constructor

Parameters
lfeatures of left-hand side
rfeatures of right-hand side

Definition at line 48 of file DotKernel.h.

Member Function Documentation

virtual float64_t compute ( int32_t  idx_a,
int32_t  idx_b 
)
protectedvirtual

compute kernel function for features a and b idx_{a,b} denote the index of the feature vectors in the corresponding feature object

Parameters
idx_aindex a
idx_bindex b
Returns
computed kernel function at indices a,b

Implements CKernel.

Reimplemented in CGaussianKernel, CPyramidChi2, CANOVAKernel, CTensorProductPairKernel, CHistogramIntersectionKernel, CAUCKernel, CChi2Kernel, CExponentialKernel, CWeightedDegreeRBFKernel, CPolyKernel, CWaveletKernel, CGaussianShiftKernel, CSigmoidKernel, CGaussianShortRealKernel, and CSplineKernel.

Definition at line 121 of file DotKernel.h.

virtual EFeatureClass get_feature_class ( )
virtual

return feature class the kernel can deal with

dot kernel returns unknown since features can be based on anything

Returns
feature class ANY

Implements CKernel.

Reimplemented in CTensorProductPairKernel, CAUCKernel, CANOVAKernel, CChi2Kernel, and CWeightedDegreeRBFKernel.

Definition at line 86 of file DotKernel.h.

virtual EFeatureType get_feature_type ( )
virtual

return feature type the kernel can deal with

dot kernel returns unknown since features can be based on anything

Returns
ANY feature type

Implements CKernel.

Reimplemented in CTensorProductPairKernel, CAUCKernel, CChi2Kernel, CANOVAKernel, and CWeightedDegreeRBFKernel.

Definition at line 94 of file DotKernel.h.

virtual EKernelType get_kernel_type ( )
pure virtual
virtual const char* get_name ( ) const
virtual

Returns the name of the SGSerializable instance. It MUST BE the CLASS NAME without the prefixed `C'.

Returns
name of the SGSerializable

Implements CSGObject.

Reimplemented in CPyramidChi2, CGaussianKernel, CChi2Kernel, CANOVAKernel, CPolyKernel, CTensorProductPairKernel, CWaveletKernel, CExponentialKernel, CGaussianShiftKernel, CAUCKernel, CHistogramIntersectionKernel, CSigmoidKernel, CGaussianShortRealKernel, CSplineKernel, CLinearKernel, and CWeightedDegreeRBFKernel.

Definition at line 101 of file DotKernel.h.

virtual bool init ( CFeatures l,
CFeatures r 
)
virtual

initialize kernel e.g. setup lhs/rhs of kernel, precompute normalization constants etc. make sure to check that your kernel can deal with the supplied features (!)

Parameters
lfeatures for left-hand side
rfeatures for right-hand side
Returns
if init was successful

Reimplemented from CKernel.

Reimplemented in CPyramidChi2, CGaussianKernel, CPolyKernel, CWaveletKernel, CTensorProductPairKernel, CANOVAKernel, CAUCKernel, CChi2Kernel, CExponentialKernel, CGaussianShortRealKernel, CHistogramIntersectionKernel, CSigmoidKernel, CSplineKernel, CLinearKernel, and CWeightedDegreeRBFKernel.

Definition at line 63 of file DotKernel.h.


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

SHOGUN Machine Learning Toolbox - Documentation