Kernel PCA
Learn nonlinear dimensionality reduction and run the @kanaries/ml KernelPCA JavaScript implementation in browser or Node.js applications.
View as MarkdownAlgorithm overview
Kernel PCA applies PCA to an implicit nonlinear feature space. It can unfold curved structure that ordinary linear PCA cannot represent, using RBF, polynomial, sigmoid, cosine, or linear similarity.
JavaScript implementation
@kanaries/ml provides KernelPCA for browser visualization and Node.js preprocessing without a Python service. It supports out-of-sample transform, and optional kernel-ridge pre-image reconstruction.
Quick start example
import { Decomposition } from '@kanaries/ml';
const model = new Decomposition.KernelPCA({
nComponents: 2,
kernel: 'rbf',
gamma: 2,
});
const embedded = model.fitTransform([[1, 0], [0, 1], [-1, 0], [0, -1]]);
console.log(embedded);Detailed API reference
new Decomposition.KernelPCA({
nComponents?: number | null;
kernel?: 'linear' | 'poly' | 'rbf' | 'sigmoid' | 'cosine';
gamma?: number; degree?: number; coef0?: number;
alpha?: number; fitInverseTransform?: boolean; randomState?: number;
})Methods: fit, transform, fitTransform, and inverseTransform. Learned eigenvalues and eigenvectors are exposed as defensive copies. Kernel methods build an O(n²) training matrix, so constrain browser sample counts.
Truncated SVD
Learn what Truncated SVD does, when to use it, and how to run TruncatedSVD in JavaScript or TypeScript with @kanaries/ml for browser and Node.js applications.
FastICA
Separate statistically independent signals with the @kanaries/ml FastICA JavaScript implementation in browser and Node.js environments.