Rosetta  2020.11
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Static Public Member Functions | Protected Attributes | Private Member Functions | Static Private Member Functions | Private Attributes | List of all members
Kernel Class Referenceabstract
Inheritance diagram for Kernel:
Inheritance graph
[legend]

Public Member Functions

 Kernel (int l, svm_node *const *x, const svm_parameter &param)
 
 ~Kernel () override
 
Qfloatget_Q (int column, int len) const override=0
 
doubleget_QD () const override=0
 
void swap_index (int i, int j) const override
 
- Public Member Functions inherited from QMatrix
virtual ~QMatrix ()=default
 

Static Public Member Functions

static double k_function (const svm_node *x, const svm_node *y, const svm_parameter &param)
 

Protected Attributes

double(Kernel::* kernel_function )(int i, int j) const
 

Private Member Functions

double kernel_linear (int i, int j) const
 
double kernel_poly (int i, int j) const
 
double kernel_rbf (int i, int j) const
 
double kernel_sigmoid (int i, int j) const
 
double kernel_precomputed (int i, int j) const
 

Static Private Member Functions

static double dot (const svm_node *px, const svm_node *py)
 

Private Attributes

const svm_node ** x
 
doublex_square
 
const int kernel_type
 
const int degree
 
const double gamma
 
const double coef0
 

Constructor & Destructor Documentation

Kernel::Kernel ( int  l,
svm_node *const *  x,
const svm_parameter param 
)
Kernel::~Kernel ( )
override

References x, and x_square.

Member Function Documentation

double Kernel::dot ( const svm_node px,
const svm_node py 
)
staticprivate
Qfloat* Kernel::get_Q ( int  column,
int  len 
) const
overridepure virtual

Implements QMatrix.

Implemented in SVR_Q, ONE_CLASS_Q, and SVC_Q.

double* Kernel::get_QD ( ) const
overridepure virtual

Implements QMatrix.

Implemented in SVR_Q, ONE_CLASS_Q, and SVC_Q.

double Kernel::k_function ( const svm_node x,
const svm_node y,
const svm_parameter param 
)
static
double Kernel::kernel_linear ( int  i,
int  j 
) const
inlineprivate

References dot().

Referenced by Kernel().

double Kernel::kernel_poly ( int  i,
int  j 
) const
inlineprivate

References coef0, degree, dot(), gamma, and powi().

Referenced by Kernel().

double Kernel::kernel_precomputed ( int  i,
int  j 
) const
inlineprivate

References svm_node::value, and value.

Referenced by Kernel().

double Kernel::kernel_rbf ( int  i,
int  j 
) const
inlineprivate

References dot(), gamma, and x_square.

Referenced by Kernel().

double Kernel::kernel_sigmoid ( int  i,
int  j 
) const
inlineprivate

References coef0, dot(), and gamma.

Referenced by Kernel().

void Kernel::swap_index ( int  i,
int  j 
) const
inlineoverridevirtual

Implements QMatrix.

Reimplemented in SVR_Q, ONE_CLASS_Q, and SVC_Q.

References basic::options::OptionKeys::frags::j, swap(), and x_square.

Referenced by SVC_Q::swap_index(), and ONE_CLASS_Q::swap_index().

Member Data Documentation

const double Kernel::coef0
private

Referenced by kernel_poly(), and kernel_sigmoid().

const int Kernel::degree
private

Referenced by kernel_poly().

const double Kernel::gamma
private
double(Kernel::* Kernel::kernel_function)(int i, int j) const
protected
const int Kernel::kernel_type
private

Referenced by Kernel().

const svm_node** Kernel::x
private

Referenced by k_function(), Kernel(), and ~Kernel().

double* Kernel::x_square
private

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