OnWorks favicon

mlpack_kernel_pca - Online in the Cloud

Run mlpack_kernel_pca in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command mlpack_kernel_pca that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator



mlpack_kernel_pca - kernel principal components analysis


mlpack_kernel_pca [-h] [-v] -i string -k string -o string [-b double] [-c] [-D double] [-S double] [-d int] [-n] [-O double] [-s string] -V


This program performs Kernel Principal Components Analysis (KPCA) on the specified dataset
with the specified kernel. This will transform the data onto the kernel principal
components, and optionally reduce the dimensionality by ignoring the kernel principal
components with the smallest eigenvalues.

For the case where a linear kernel is used, this reduces to regular PCA.

For example, the following will perform KPCA on the 'input.csv' file using the gaussian
kernel and store the transformed date in the 'transformed.csv' file.

$ kernel_pca -i input.csv -k gaussian -o transformed.csv

The kernels that are supported are listed below:

· ’linear': the standard linear dot product (same as normal PCA): K(x, y) = x^T y

· ’gaussian': a Gaussian kernel; requires bandwidth: K(x, y) = exp(-(|| x - y || ^
2) / (2 * (bandwidth ^ 2)))

· ’polynomial': polynomial kernel; requires offset and degree: K(x, y) = (x^T y +
offset) ^ degree

· ’hyptan': hyperbolic tangent kernel; requires scale and offset: K(x, y) =
tanh(scale * (x^T y) + offset)

· ’laplacian': Laplacian kernel; requires bandwidth: K(x, y) = exp(-(|| x - y ||)
/ bandwidth)

· ’epanechnikov': Epanechnikov kernel; requires bandwidth: K(x, y) = max(0, 1 - ||
x - y ||^2 / bandwidth^2)

· ’cosine': cosine distance: K(x, y) = 1 - (x^T y) / (|| x || * || y ||)

The parameters for each of the kernels should be specified with the options --bandwidth,
--kernel_scale, --offset, or --degree (or a combination of those options).

Optionally, the nyström method ("Using the Nystroem method to speed up kernel machines",
2001) can be used to calculate the kernel matrix by specifying the --nystroem_method (-n)
option. This approach works by using a subset of the data as basis to reconstruct the
kernel matrix; to specify the sampling scheme, the --sampling parameter is used, the
sampling scheme for the nyström method can be chosen from the following list: kmeans,
random, ordered.


--input_file (-i) [string]
Input dataset to perform KPCA on.

--kernel (-k) [string]
The kernel to use; see the above documentation for the list of usable kernels.

--output_file (-o) [string]
File to save modified dataset to.


--bandwidth (-b) [double]
Bandwidth, for 'gaussian' and 'laplacian' kernels. Default value 1.

--center (-c)
If set, the transformed data will be centered about the origin.

--degree (-D) [double]
Degree of polynomial, for 'polynomial' kernel. Default value 1.

--help (-h)
Default help info.

--info [string]
Get help on a specific module or option. Default value ''. --kernel_scale (-S)
[double] Scale, for 'hyptan' kernel. Default value 1.

--new_dimensionality (-d) [int]
If not 0, reduce the dimensionality of the output dataset by ignoring the
dimensions with the smallest eigenvalues. Default value 0.

--nystroem_method (-n)
If set, the nystroem method will be used.

--offset (-O) [double]
Offset, for 'hyptan' and 'polynomial' kernels. Default value 0.

--sampling (-s) [string]
Sampling scheme to use for the nystroem method: 'kmeans', 'random', 'ordered'
Default value 'kmeans'.

--verbose (-v)
Display informational messages and the full list of parameters and timers at the
end of execution.

--version (-V)
Display the version of mlpack.


For further information, including relevant papers, citations, and theory, consult the
documentation found at http://www.mlpack.org or included with your DISTRIBUTION OF MLPACK.


Use mlpack_kernel_pca online using onworks.net services

Free Servers & Workstations

Download Windows & Linux apps

  • 1
    Phaser is a fast, free, and fun open
    source HTML5 game framework that offers
    WebGL and Canvas rendering across
    desktop and mobile web browsers. Games
    can be co...
    Download Phaser
  • 2
    VASSAL Engine
    VASSAL Engine
    VASSAL is a game engine for creating
    electronic versions of traditional board
    and card games. It provides support for
    game piece rendering and interaction,
    Download VASSAL Engine
  • 3
    OpenPDF - Fork of iText
    OpenPDF - Fork of iText
    OpenPDF is a Java library for creating
    and editing PDF files with a LGPL and
    MPL open source license. OpenPDF is the
    LGPL/MPL open source successor of iText,
    Download OpenPDF - Fork of iText
  • 4
    SAGA - System for Automated
    Geoscientific Analyses - is a Geographic
    Information System (GIS) software with
    immense capabilities for geodata
    processing and ana...
    Download SAGA GIS
  • 5
    Toolbox for Java/JTOpen
    Toolbox for Java/JTOpen
    The IBM Toolbox for Java / JTOpen is a
    library of Java classes supporting the
    client/server and internet programming
    models to a system running OS/400,
    i5/OS, o...
    Download Toolbox for Java/JTOpen
  • 6
    D3.js (or D3 for Data-Driven Documents)
    is a JavaScript library that allows you
    to produce dynamic, interactive data
    visualizations in web browsers. With D3
    Download D3.js
  • More »

Linux commands