Calculates the polynomial kernel matrix for the dataset contained in the matrix X,
where each row of X is a data point. If Y is also a matrix (with the
same number of columns as X), the kernel function is evaluated between all
data points of X and Y.
Usage
polykernel(X, d, Y = NULL)
Arguments
X
matrix containing a data point in each column
d
polynomial kernel degree
Y
leave this NULL if the kernel function should be evaluated between the data points only contained in
X (which can be regarded as Y = X) or to a matrix with same number of columns as X
if you want to evaluate the function between the points of X and Y
Value
polynomial kernel matrix K for the given dataset
Details
Each row of X must be a data point, i.e. $X = (x_1, x_2, ..., x_n)$.
The kernel matrix K is then defined as
$$K = (k(x_i, x_j))_{i,j=1,...,n}$$
If Y is not NULL and also contains data points in each row, i.e. $Y = (y_1, y_2, ..., y_m)$,
the kernel matrix K of X and Y is defined as
$$K = (k(x_i, y_j))_{i=1,...,n,j=1,...,m}$$
In this case, k is the polynomial kernel, which is defined as
$$k(x, y) = (\langle x,y \rangle + 1)^d$$
where x, y are data points and d is the polynomial kernel degree.