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] |
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.