Visible to Intel only — GUID: GUID-E554202E-DFBE-4AB5-AC3D-B7B315CD8E4A
Visible to Intel only — GUID: GUID-E554202E-DFBE-4AB5-AC3D-B7B315CD8E4A
Kernel Functions
Kernel functions form a class of algorithms for pattern analysis. The main characteristic of kernel functions is a distinct approach to this problem. Instead of reducing the dimension of the original data, kernel functions map the data into higher-dimensional spaces in order to make the data more easily separable there.
Linear Kernel
A linear kernel is the simplest kernel function.
Problem Statement
Given a set X of n feature vectors of dimension p and a set Y of m feature vectors , the problem is to compute the linear kernel function for any pair of input vectors: .
Batch Processing
Algorithm Input
The linear kernel function accepts the input described below. Pass the Input ID as a parameter to the methods that provide input for your algorithm.
Input ID |
Input |
---|---|
X |
Pointer to the numeric table that represents the matrix X. This table can be an object of any class derived from NumericTable. |
Y |
Pointer to the numeric table that represents the matrix Y. This table can be an object of any class derived from NumericTable. |
Algorithm Parameters
The linear kernel function has the following parameters:
Parameter |
Default Value |
Description |
---|---|---|
algorithmFPType |
float |
The floating-point type that the algorithm uses for intermediate computations. Can be float or double. |
method |
defaultDense |
Available computation methods:
|
computationMode |
matrixMatrix |
Computation mode for the kernel function. Can be: For CPU:
For GPU:
|
rowIndexX |
0 |
Index i of the vector in the set X for the vectorVector computation mode. |
rowIndexY |
0 |
Index j of the vector in the set Y for the vectorVector or matrixVector computation mode. |
rowIndexResult |
0 |
Row index in the values numeric table to locate the result of the computation for the vectorVector computation mode. |
k |
1.0 |
The coefficient k of the linear kernel. |
b |
0.0 |
The coefficient b of the linear kernel. |
Algorithm Output
The linear kernel function calculates the results described below. Pass the Result ID as a parameter to the methods that access the results of your algorithm.
Result ID |
Result |
---|---|
values |
Pointer to the numeric table with the values of the kernel function.
NOTE:
By default, this result is an object of the HomogenNumericTable class, but you can define the result as an object of any class derived from NumericTable except PackedSymmetricMatrix, PackedTriangularMatrix, and CSRNumericTable.
|
Examples
oneAPI DPC++
Batch Processing:
dpc_linear_kernel_dense_batch.cpp
oneAPI C++
Batch Processing:
cpp_linear_kernel_dense_batch.cpp
C++ (CPU)
Batch Processing:
Java*
Batch Processing:
Radial Basis Function Kernel
The Radial Basis Function (RBF) kernel is a popular kernel function used in kernelized learning algorithms.
Problem Statement
Given a set X of n feature vectors of dimension p and a set Y of m feature vectors , the problem is to compute the RBF kernel function for any pair of input vectors:
Batch Processing
Algorithm Input
The RBF kernel accepts the input described below. Pass the Input ID as a parameter to the methods that provide input for your algorithm.
Input ID |
Input |
---|---|
X |
Pointer to the numeric table that represents the matrix X. This table can be an object of any class derived from NumericTable. |
Y |
Pointer to the numeric table that represents the matrix Y. This table can be an object of any class derived from NumericTable. |
Algorithm Parameters
The RBF kernel has the following parameters:
Parameter |
Default Value |
Description |
---|---|---|
algorithmFPType |
float |
The floating-point type that the algorithm uses for intermediate computations. Can be float or double. |
method |
defaultDense |
Available computation methods:
|
computationMode |
matrixMatrix |
Computation mode for the kernel function. Can be: For CPU:
For GPU:
|
rowIndexX |
0 |
Index i of the vector in the set X for the vectorVector computation mode. |
rowIndexY |
0 |
Index j of the vector in the set Y for the vectorVector or matrixVector computation mode. |
rowIndexResult |
0 |
Row index in the values numeric table to locate the result of the computation for the vectorVector computation mode. |
sigma |
1.0 |
The coefficient of the RBF kernel. |
Algorithm Output
The RBF kernel calculates the results described below. Pass the Result ID as a parameter to the methods that access the results of your algorithm.
Result ID |
Result |
---|---|
values |
Pointer to the numeric table with the values of the kernel function.
NOTE:
By default, this result is an object of the HomogenNumericTable class, but you can define the result as an object of any class derived from NumericTable except PackedSymmetricMatrix, PackedTriangularMatrix, and CSRNumericTable.
|
Examples
oneAPI DPC++
Batch Processing:
dpc_rbf_kernel_dense_batch.cpp
oneAPI C++
Batch Processing:
cpp_rbf_kernel_dense_batch.cpp
C++ (CPU)
Batch Processing:
Java*
Batch Processing: