Learn R Programming

dimRed (version 0.2.0)

kPCA-class: Kernel PCA

Description

An S4 Class implementing Kernel PCA

Arguments

Slots

fun

A function that does the embedding and returns a dimRedResult object.

stdpars

The standard parameters for the function.

General usage

Dimensionality reduction methods are S4 Classes that either be used directly, in which case they have to be initialized and a full list with parameters has to be handed to the @fun() slot, or the method name be passed to the embed function and parameters can be given to the ..., in which case missing parameters will be replaced by the ones in the @stdpars.

Parameters

Kernel PCA can take the following parameters:

ndim

the number of output dimensions, defaults to 2

kernel

The kernel function, either as a function or a character vector with the name of the kernel. Defaults to "rbfdot"

kpar

A list with the parameters for the kernel function, defaults to list(sigma = 0.1)

The most comprehensive collection of kernel functions can be found in kpca. In case the function does not take any parameters kpar has to be an empty list.

Implementation

Wraps around kpca, but provides additionally forward and backward projections.

Details

Kernel PCA is a nonlinear extension of PCA using kernel methods.

References

Sch\"olkopf, B., Smola, A., M\"uller, K.-R., 1998. Nonlinear Component Analysis as a Kernel Eigenvalue Problem. Neural Computation 10, 1299-1319. https://doi.org/10.1162/089976698300017467

See Also

Other dimensionality reduction methods: AutoEncoder-class, DRR-class, DiffusionMaps-class, DrL-class, FastICA-class, FruchtermanReingold-class, HLLE-class, Isomap-class, KamadaKawai-class, LLE-class, MDS-class, NNMF-class, PCA-class, PCA_L1-class, UMAP-class, dimRedMethod-class, dimRedMethodList, nMDS-class, tSNE-class

Examples

Run this code
# NOT RUN {
dat <- loadDataSet("3D S Curve")

## use the S4 class directly:
kpca <- kPCA()
emb <- kpca@fun(dat, kpca@stdpars)

## simpler, use embed():
emb2 <- embed(dat, "kPCA")

plot(emb, type = "2vars")
# }

Run the code above in your browser using DataLab