Skip to content

[FEA] Add new lanczos solver to UMAP for spectral initialization #6045

Open
@aamijar

Description

@aamijar

Documentation for future work:

  • The new lanczos solver in raft Lanczos Solver raft#2416 can be integrated into the UMAP spectral initialization algorithm.
  • After the UMAP_::get_graph step the resulting COO matrix needs to converted to a Laplacian CSR matrix.
  • Then the lanczos solver can be called using raft::sparse::solver::lanczos_compute_smallest_eigenvectors
  • Additional steps may be required such as laplacian normalization which sklearn uses.

So far, I've verified that the current spectral initialization gives random noise embeddings. One easy way to check this is to use a toy dataset from sklearn such as S-curve, comment out the UMAP code after spectral initialization and plot it.

Once the new solver is integrated the spectral initialization should be fixed.

Metadata

Metadata

Assignees

Labels

? - Needs TriageNeed team to review and classifycuml-cpufeature requestNew feature or requestimprovementImprovement / enhancement to an existing function

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions