sklears-manifold

Crates.iosklears-manifold
lib.rssklears-manifold
version0.1.0-beta.1
created_at2025-10-13 14:13:19.438433+00
updated_at2026-01-01 21:34:43.72614+00
descriptionManifold learning algorithms (t-SNE, Isomap, etc.)
homepagehttps://github.com/cool-japan/sklears
repositoryhttps://github.com/cool-japan/sklears
max_upload_size
id1880567
size1,985,890
KitaSan (cool-japan)

documentation

README

sklears-manifold

Crates.io Documentation License Minimum Rust Version

Latest release: 0.1.0-beta.1 (January 1, 2026). See the workspace release notes for highlights and upgrade guidance.

Overview

sklears-manifold implements manifold learning, nonlinear dimensionality reduction, and embedding algorithms mirroring scikit-learn’s manifold module.

Key Features

  • Algorithms: t-SNE, UMAP-compatible neighbors, Isomap, Locally Linear Embedding, Spectral Embedding, MDS.
  • Performance: Barnes-Hut and FFT-based t-SNE, GPU nearest neighbors, and multithreaded eigen solvers.
  • Visualization: Embedding utilities that integrate with sklears-inspection and Python plotting stacks.
  • Pipeline Support: Works seamlessly with preprocessing, decomposition, and clustering crates.

Quick Start

use sklears_manifold::TSNE;
use scirs2_core::ndarray::Array2;

let x: Array2<f32> = // load dataset
    Array2::zeros((2000, 128));

let tsne = TSNE::builder()
    .n_components(2)
    .perplexity(30.0)
    .learning_rate(200.0)
    .n_iter(1000)
    .build();

let embedding = tsne.fit_transform(&x)?;

Status

  • Validated by the workspace’s 11,292 passing tests for 0.1.0-beta.1.
  • Performance parity (and in many cases superiority) compared with scikit-learn’s manifold implementations.
  • Upcoming tasks (GPU UMAP, streaming embeddings) tracked in TODO.md.
Commit count: 0

cargo fmt