SHOGUN
v1.1.0
|
SqrtDiagKernelNormalizer divides by the Square Root of the product of the diagonal elements.
This effectively normalizes the vectors in feature space to norm 1 (see CSqrtDiagKernelNormalizer)
Definition at line 29 of file SqrtDiagKernelNormalizer.h.
Public Member Functions | |
CSqrtDiagKernelNormalizer (bool use_opt_diag=false) | |
virtual | ~CSqrtDiagKernelNormalizer () |
virtual bool | init (CKernel *k) |
virtual float64_t | normalize (float64_t value, int32_t idx_lhs, int32_t idx_rhs) |
virtual float64_t | normalize_lhs (float64_t value, int32_t idx_lhs) |
virtual float64_t | normalize_rhs (float64_t value, int32_t idx_rhs) |
bool | alloc_and_compute_diag (CKernel *k, float64_t *&v, int32_t num) |
virtual const char * | get_name () const |
Protected Attributes | |
float64_t * | sqrtdiag_lhs |
int32_t | num_sqrtdiag_lhs |
float64_t * | sqrtdiag_rhs |
int32_t | num_sqrtdiag_rhs |
bool | use_optimized_diagonal_computation |
CSqrtDiagKernelNormalizer | ( | bool | use_opt_diag = false | ) |
default constructor
use_opt_diag | - some kernels support faster diagonal compuation via compute_diag(idx), this flag enables this |
Definition at line 36 of file SqrtDiagKernelNormalizer.h.
virtual ~CSqrtDiagKernelNormalizer | ( | ) | [virtual] |
default destructor
Definition at line 51 of file SqrtDiagKernelNormalizer.h.
bool alloc_and_compute_diag | ( | CKernel * | k, |
float64_t *& | v, | ||
int32_t | num | ||
) |
alloc and compute the vector containing the square root of the diagonal elements of this kernel.
Definition at line 119 of file SqrtDiagKernelNormalizer.h.
virtual const char* get_name | ( | ) | const [virtual] |
Implements CSGObject.
Definition at line 144 of file SqrtDiagKernelNormalizer.h.
initialization of the normalizer
k | kernel |
Implements CKernelNormalizer.
Definition at line 59 of file SqrtDiagKernelNormalizer.h.
normalize the kernel value
value | kernel value |
idx_lhs | index of left hand side vector |
idx_rhs | index of right hand side vector |
Implements CKernelNormalizer.
Definition at line 89 of file SqrtDiagKernelNormalizer.h.
virtual float64_t normalize_lhs | ( | float64_t | value, |
int32_t | idx_lhs | ||
) | [virtual] |
normalize only the left hand side vector
value | value of a component of the left hand side feature vector |
idx_lhs | index of left hand side vector |
Implements CKernelNormalizer.
Definition at line 100 of file SqrtDiagKernelNormalizer.h.
virtual float64_t normalize_rhs | ( | float64_t | value, |
int32_t | idx_rhs | ||
) | [virtual] |
normalize only the right hand side vector
value | value of a component of the right hand side feature vector |
idx_rhs | index of right hand side vector |
Implements CKernelNormalizer.
Definition at line 109 of file SqrtDiagKernelNormalizer.h.
int32_t num_sqrtdiag_lhs [protected] |
num sqrt diagonal left-hand side
Definition at line 151 of file SqrtDiagKernelNormalizer.h.
int32_t num_sqrtdiag_rhs [protected] |
num sqrt diagonal right-hand side
Definition at line 157 of file SqrtDiagKernelNormalizer.h.
float64_t* sqrtdiag_lhs [protected] |
sqrt diagonal left-hand side
Definition at line 148 of file SqrtDiagKernelNormalizer.h.
float64_t* sqrtdiag_rhs [protected] |
sqrt diagonal right-hand side
Definition at line 154 of file SqrtDiagKernelNormalizer.h.
bool use_optimized_diagonal_computation [protected] |
f optimized diagonal computation is used
Definition at line 160 of file SqrtDiagKernelNormalizer.h.