PLSSVM - Parallel Least Squares Support Vector Machine  2.0.0
A Least Squares Support Vector Machine implementation using different backends.
Functions
q_kernel.cl File Reference

Defines CUDA functions for generating the q vector. More...

Functions

__kernel void device_kernel_q_linear (__global real_type *q, __global real_type *data_d, __global real_type *data_last, const kernel_index_type num_rows, const kernel_index_type feature_range)
 Calculates the q vector using the linear C-SVM kernel. More...
 
__kernel void device_kernel_q_polynomial (__global real_type *q, __global real_type *data_d, __global real_type *data_last, const kernel_index_type num_rows, const kernel_index_type num_cols, const int degree, const real_type gamma, const real_type coef0)
 Calculates the q vector using the polynomial C-SVM kernel. More...
 
__kernel void device_kernel_q_rbf (__global real_type *q, __global real_type *data_d, __global real_type *data_last, const kernel_index_type num_rows, const kernel_index_type num_cols, const real_type gamma)
 Calculates the q vector using the radial basis functions C-SVM kernel. More...
 

Detailed Description

Defines CUDA functions for generating the q vector.

Author
Alexander Van Craen
Marcel Breyer
License
This file is part of the PLSSVM project which is released under the MIT license. See the LICENSE.md file in the project root for full license information.

Function Documentation

◆ device_kernel_q_linear()

__kernel void device_kernel_q_linear ( __global real_type *  q,
__global real_type *  data_d,
__global real_type *  data_last,
const kernel_index_type  num_rows,
const kernel_index_type  feature_range 
)

Calculates the q vector using the linear C-SVM kernel.

Supports multi-GPU execution.

Template Parameters
real_typethe type of the data
Parameters
[out]qthe calculated q vector
[in]data_dthe one-dimensional data matrix
[in]data_lastthe last row in the data matrix
[in]num_rowsthe number of rows in the data matrix
[in]feature_rangenumber of features used for the calculation

◆ device_kernel_q_polynomial()

__kernel void device_kernel_q_polynomial ( __global real_type *  q,
__global real_type *  data_d,
__global real_type *  data_last,
const kernel_index_type  num_rows,
const kernel_index_type  num_cols,
const int  degree,
const real_type  gamma,
const real_type  coef0 
)

Calculates the q vector using the polynomial C-SVM kernel.

Currently only single GPU execution is supported.

Template Parameters
real_typethe type of the data
Parameters
[out]qthe calculated q vector
[in]data_dthe one-dimensional data matrix
[in]data_lastthe last row in the data matrix
[in]num_rowsthe number of rows in the data matrix
[in]num_colsthe number of columns in the data matrix
[in]degreethe degree parameter used in the polynomial kernel function
[in]gammathe gamma parameter used in the polynomial kernel function
[in]coef0the coef0 parameter used in the polynomial kernel function

◆ device_kernel_q_rbf()

__kernel void device_kernel_q_rbf ( __global real_type *  q,
__global real_type *  data_d,
__global real_type *  data_last,
const kernel_index_type  num_rows,
const kernel_index_type  num_cols,
const real_type  gamma 
)

Calculates the q vector using the radial basis functions C-SVM kernel.

Currently only single GPU execution is supported.

Template Parameters
real_typethe type of the data
Parameters
[out]qthe calculated q vector
[in]data_dthe one-dimensional data matrix
[in]data_lastthe last row in the data matrix
[in]num_rowsthe number of rows in the data matrix
[in]num_colsthe number of columns in the data matrix
[in]gammathe gamma parameter used in the rbf kernel function