Skip to content
forked from 10XDev/tsne

OpenMP Implementation of tsne (Significant performance improvement)

License

Notifications You must be signed in to change notification settings

resero-labs/tsne

 
 

Repository files navigation

PyPI - Version PyPI - Wheel Python 3.6 Python 3.6 Python 3.6

Python TSNE implementation utilizing openmp for performance

This is based on the 10XDev/tsne fork of L.J.P. van der Maaten BH-tSNE implementation.

It has fixes to allow this to run in Python 3 and performance has been significantly increased with OpenMP parallelism. (see: tsne-perf-test)

Note: While Scikit-learn v0.17 has a tsne implementation, this implementation performs significantly faster than scikit-learn's. If you need speed, use this.

Algorithms

Barnes-Hut-SNE

A python (cython) wrapper for Barnes-Hut-SNE aka fast-tsne.

We forked 10XDev's implementation and openmp enabled the code.

Installation

This library has been added to pypi as tsne-mp

pip install tsne-mp

It requires openmp support.

  • OSX - brew install libomp
  • linux - 'sudo apt-get install libgomp1'
  • Windows - Included with Visual Studio C++

Usage

Basic usage:

from tsne import bh_sne
X_2d = bh_sne(X)

Or, the wheels also contain an executable that can be used from the command-line as described in the original project.

Examples

More Information

See Barnes-Hut-SNE (2013), L.J.P. van der Maaten. It is available on arxiv.

About

OpenMP Implementation of tsne (Significant performance improvement)

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 60.5%
  • C++ 33.0%
  • MATLAB 2.8%
  • Dockerfile 1.5%
  • Shell 1.1%
  • PowerShell 0.7%
  • Other 0.4%