CannyLab/tsne-cuda

GPU Accelerated t-SNE for CUDA with Python bindings

What it solves

It addresses the high computational cost and slow processing times associated with t-distributed Stochastic Neighbor Embedding (t-SNE), a popular technique for visualizing high-dimensional data in low-dimensional space. Standard implementations can be prohibitively slow for very large datasets.

How it works

This project is an optimized CUDA implementation of the FIt-SNE algorithm. By leveraging GPU acceleration, it significantly speeds up the calculation of embeddings. It provides both a C++ library and Python wrappers that follow the scikit-learn API for ease of use.

Who it’s for

It is designed for data scientists and researchers who need to visualize massive high-dimensional datasets (up to 10 million points) and require much faster processing than what CPU-based libraries like Sklearn or Multicore-TSNE can provide.

Highlights

  • Extreme Speedup: Up to 1200x faster than Sklearn and 50x faster than Multicore-TSNE on compatible GPUs.
  • High Scalability: Capable of handling datasets ranging from 1K to 10M points.
  • Familiar API: Python wrappers are compatible with sklearn.manifold.TSNE.
  • Proven Quality: Produces embedding quality comparable to other state-of-the-art implementations.

Related

  • Project
  • Project
  • Project
  • Project
  • Project