YingfanWang/PaCMAP
PaCMAP: Large-scale Dimension Reduction Technique Preserving Both Global and Local Structure
What it solves
PaCMAP (Pairwise Controlled Manifold Approximation) is a dimensionality reduction method designed for data visualization. It addresses the limitation of existing tools that typically prioritize either local structure (like t-SNE or UMAP) or global structure (like TriMAP), often failing to preserve both simultaneously.
How it works
PaCMAP optimizes a low-dimensional embedding by utilizing three distinct types of point pairs to maintain the data's original geometry:
- Neighbor pairs: Preserve local structure.
- Mid-near pairs: Capture global structure and refine the embedding.
- Further pairs: Ensure points that are far apart in high-dimensional space remain separated.
It is designed to be compatible with the scikit-learn API, allowing users to fit and transform high-dimensional datasets into a lower-dimensional space (typically 2D) for visualization.
Who it’s for
- Data Scientists and Researchers: Those needing to visualize high-dimensional datasets while maintaining a faithful representation of both local clusters and global relationships.
- Bioinformaticians: Specifically those working with single-cell genomics (integrated via Seurat wrappers).
Highlights
- Dual Structure Preservation: Simultaneously preserves both local and global data structures.
- Scikit-learn Compatible: Uses a familiar
fit_transforminterface. - Conda/Pip Installation: Easy installation via
conda-forgeorpip. - Flexible KNN Backends: Supports FAISS (default), Annoy, and Voyager for efficient nearest neighbor search.
- Cross-Language Support: Available in Python, R (via reticulate), and a standalone Rust implementation.
Related
- Project
- Project
- Project
- Project
- Project