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.
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 | ( | void | ) | const [virtual] |
Implements CSGObject.
Definition at line 144 of file SqrtDiagKernelNormalizer.h.
virtual bool init | ( | CKernel * | k | ) | [virtual] |
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.
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.
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] |
Definition at line 149 of file SqrtDiagKernelNormalizer.h.
int32_t num_sqrtdiag_rhs [protected] |
Definition at line 153 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 152 of file SqrtDiagKernelNormalizer.h.
bool use_optimized_diagonal_computation [protected] |
f optimized diagonal computation is used
Definition at line 156 of file SqrtDiagKernelNormalizer.h.