Skip to main content

Extensible, parallel implementations of t-SNE

Project description

Build Status Documentation Status License Badge

openTSNE is a modular Python implementation of t-Distributed Stochasitc Neighbor Embedding (t-SNE) [1], a popular dimensionality-reduction algorithm for visualizing high-dimensional data sets. openTSNE incorporates the latest improvements to the t-SNE algorithm, including the ability to add new data points to existing embeddings [2], massive speed improvements [3] [4] [5], enabling t-SNE to scale to millions of data points and various tricks to improve global alignment of the resulting visualizations [6].

Macosko 2015 mouse retina t-SNE embedding

A visualization of 44,808 single cell transcriptomes obtained from the mouse retina [7] embedded using the multiscale kernel trick to better preserve the global aligment of the clusters.

Installation

openTSNE requires Python 3.7 or higher in order to run.

Conda

openTSNE can be easily installed from conda-forge with

conda install --channel conda-forge opentsne

Conda package

PyPi

openTSNE is also available through pip and can be installed with

pip install opentsne

PyPi package

Installing from source

If you wish to install openTSNE from source, please run

pip install .

in the root directory to install the appropriate dependencies and compile the necessary binary files.

Please note that openTSNE requires a C/C++ compiler to be available on the system.

In order for openTSNE to utilize multiple threads, the C/C++ compiler must support OpenMP. In practice, almost all compilers implement this with the exception of older version of clang on OSX systems.

To squeeze the most out of openTSNE, you may also consider installing FFTW3 prior to installation. FFTW3 implements the Fast Fourier Transform, which is heavily used in openTSNE. If FFTW3 is not available, openTSNE will use numpy’s implementation of the FFT, which is slightly slower than FFTW. The difference is only noticeable with large data sets containing millions of data points.

A hello world example

Getting started with openTSNE is very simple. First, we’ll load up some data using scikit-learn

from sklearn import datasets

iris = datasets.load_iris()
x, y = iris["data"], iris["target"]

then, we’ll import and run

from openTSNE import TSNE

embedding = TSNE().fit(x)

Citation

If you make use of openTSNE for your work we would appreciate it if you would cite the paper

@article {Poli{\v c}ar731877,
    author = {Poli{\v c}ar, Pavlin G. and Stra{\v z}ar, Martin and Zupan, Bla{\v z}},
    title = {openTSNE: a modular Python library for t-SNE dimensionality reduction and embedding},
    year = {2019},
    doi = {10.1101/731877},
    publisher = {Cold Spring Harbor Laboratory},
    URL = {https://www.biorxiv.org/content/early/2019/08/13/731877},
    eprint = {https://www.biorxiv.org/content/early/2019/08/13/731877.full.pdf},
    journal = {bioRxiv}
}

openTSNE implements two efficient algorithms for t-SNE. Please consider citing the original authors of the algorithm that you use. If you use FIt-SNE (default), then the citation is [5] below, but if you use Barnes-Hut the citations are [3] and [4].

References

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

openTSNE-1.0.1.tar.gz (251.1 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

openTSNE-1.0.1-cp312-cp312-win_amd64.whl (463.0 kB view details)

Uploaded CPython 3.12Windows x86-64

openTSNE-1.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.2 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

openTSNE-1.0.1-cp312-cp312-macosx_10_12_universal2.whl (1.0 MB view details)

Uploaded CPython 3.12macOS 10.12+ universal2 (ARM64, x86-64)

openTSNE-1.0.1-cp311-cp311-win_amd64.whl (462.8 kB view details)

Uploaded CPython 3.11Windows x86-64

openTSNE-1.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.2 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

openTSNE-1.0.1-cp311-cp311-macosx_10_12_universal2.whl (1.0 MB view details)

Uploaded CPython 3.11macOS 10.12+ universal2 (ARM64, x86-64)

openTSNE-1.0.1-cp310-cp310-win_amd64.whl (462.1 kB view details)

Uploaded CPython 3.10Windows x86-64

openTSNE-1.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

openTSNE-1.0.1-cp310-cp310-macosx_10_12_universal2.whl (1.0 MB view details)

Uploaded CPython 3.10macOS 10.12+ universal2 (ARM64, x86-64)

openTSNE-1.0.1-cp39-cp39-win_amd64.whl (463.4 kB view details)

Uploaded CPython 3.9Windows x86-64

openTSNE-1.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

openTSNE-1.0.1-cp39-cp39-macosx_10_12_universal2.whl (1.0 MB view details)

Uploaded CPython 3.9macOS 10.12+ universal2 (ARM64, x86-64)

openTSNE-1.0.1-cp38-cp38-win_amd64.whl (464.9 kB view details)

Uploaded CPython 3.8Windows x86-64

openTSNE-1.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

openTSNE-1.0.1-cp38-cp38-macosx_10_12_x86_64.whl (541.2 kB view details)

Uploaded CPython 3.8macOS 10.12+ x86-64

openTSNE-1.0.1-cp37-cp37m-win_amd64.whl (461.9 kB view details)

Uploaded CPython 3.7mWindows x86-64

openTSNE-1.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

openTSNE-1.0.1-cp37-cp37m-macosx_10_12_x86_64.whl (541.9 kB view details)

Uploaded CPython 3.7mmacOS 10.12+ x86-64

File details

Details for the file openTSNE-1.0.1.tar.gz.

File metadata

  • Download URL: openTSNE-1.0.1.tar.gz
  • Upload date:
  • Size: 251.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.18

File hashes

Hashes for openTSNE-1.0.1.tar.gz
Algorithm Hash digest
SHA256 51f4dffaa3366ee4a480dd21d5f64eb0fa677248a0c99490aeb8bf311124368c
MD5 bd7cb1e6eef5b7fc42e0d35c88ae8352
BLAKE2b-256 ab5da2fe5a04574b03d5df267f8b7523feb5d015d70a2e86c96bfbb11899f6c7

See more details on using hashes here.

File details

Details for the file openTSNE-1.0.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: openTSNE-1.0.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 463.0 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.10.4

File hashes

Hashes for openTSNE-1.0.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 a44f347dd2b9e96fe886cb00aac241234221d337dbbc2382ccd82ebb1f912fae
MD5 11d6300dd790c36fb9d7520770559554
BLAKE2b-256 e0d15206a0e6ecd7e15f98a5be9c88d3f7f0550d0dfcc806115beefa3167dde8

See more details on using hashes here.

File details

Details for the file openTSNE-1.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for openTSNE-1.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1383b5b11913090e3df62281edb7840a7eba4a636e81a246f9f78b67feee02f7
MD5 b06a4831be6459c9cc4b96cf754bbed3
BLAKE2b-256 1ac2f52b6847de7b30d0fb78aa897554c4ea970da477058527b16136e5fa0ed2

See more details on using hashes here.

File details

Details for the file openTSNE-1.0.1-cp312-cp312-macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for openTSNE-1.0.1-cp312-cp312-macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 7f2900b4ce82ecfd47bf844b604ff4fe74d259b3892561715f75098206b3db63
MD5 75544cd079b524239909f779cb073592
BLAKE2b-256 1df777e9b35c4fd1fb787fa28361bf88bad74efcfa4faf28981a4e9bb1a8a044

See more details on using hashes here.

File details

Details for the file openTSNE-1.0.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: openTSNE-1.0.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 462.8 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.18

File hashes

Hashes for openTSNE-1.0.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 876bcc63f119a2bdde255a0665a623cbc5823606a7bc806ac2cb721f4a694af9
MD5 4b8af5de60c8377f9f6b744b91113740
BLAKE2b-256 13dd2187ea75a5e9c9f5f106921145d2b5d2a23571627714ec49a2ac547bae99

See more details on using hashes here.

File details

Details for the file openTSNE-1.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for openTSNE-1.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 898ddd80d8bc4369ed747d62ff4a06822e1ed61393e2c5eeaee1d063d0056a3f
MD5 05cc3aee7cf259db8de970bf18ca495b
BLAKE2b-256 35e28568cad9d6db1174e5b058c0a02a5e17dd4110fe2d66d4c08ffd63618714

See more details on using hashes here.

File details

Details for the file openTSNE-1.0.1-cp311-cp311-macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for openTSNE-1.0.1-cp311-cp311-macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 8f2e08aabe79e48425646377f0f12a2cc11a9159a68b15ae21ea789df0f5944e
MD5 7c93424d8fadb2e02c56415770d2ff16
BLAKE2b-256 8267dfd7289d035d24d78b4566d0a97b88946c3ae609b0757480ff0f4f5e0d70

See more details on using hashes here.

File details

Details for the file openTSNE-1.0.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: openTSNE-1.0.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 462.1 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.18

File hashes

Hashes for openTSNE-1.0.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 a61fa00f58dfc45c5563b1b166af9621e9afcda2673e6eb5bffb84d7f15ef7e5
MD5 74bac92fe8355568be3aab517a58e95a
BLAKE2b-256 28638c9f9d682365335447fdbce10dcbd7a1e66887cc9ff32bfc9441f87fc538

See more details on using hashes here.

File details

Details for the file openTSNE-1.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for openTSNE-1.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 035c78122db8e5f009730d57c36fa84a6cfad5eb5ce1ecba620245ae6703f7a9
MD5 e420b14dc45e239a4eb0bc271bf24a77
BLAKE2b-256 998928a28eaa7b758a9723ade97a81118f05911ff2e48faaab454a6ecea136ca

See more details on using hashes here.

File details

Details for the file openTSNE-1.0.1-cp310-cp310-macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for openTSNE-1.0.1-cp310-cp310-macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 ddd79bf4fc1ddb73d89271a9f4dfa637e0e1c374552030c929e16d79b560de00
MD5 3e1ceae744667a10b25912a16086b634
BLAKE2b-256 e1d28c5c8f0c990ed3bb26ad813dc6b53e14c20fec3d4cbc23204e5be43ebcbf

See more details on using hashes here.

File details

Details for the file openTSNE-1.0.1-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: openTSNE-1.0.1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 463.4 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.18

File hashes

Hashes for openTSNE-1.0.1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 8bdc2084c3746ff221c956bb6f35805f41e8c8a269551054fef1dc42d956c7f4
MD5 891600a936295fc08cb8211b3631ea98
BLAKE2b-256 a7d72ea359bafb6bd37c3f047bfdcee177e75848233805b4a76b1f1cc2cf5b8f

See more details on using hashes here.

File details

Details for the file openTSNE-1.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for openTSNE-1.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a966c3107c3a68f8958fa50c40d3f62931cdf1744ac54dfd36d042f2818389df
MD5 fc715877d8a8d3775310091046e21a05
BLAKE2b-256 900d0074f5816cdc953b09b6ba7f9ae92bbb13aa09d818c99f0ae8f44852834d

See more details on using hashes here.

File details

Details for the file openTSNE-1.0.1-cp39-cp39-macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for openTSNE-1.0.1-cp39-cp39-macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 ce20aba565fdf122cdd303b047b4961e6ae19d6a6fb4538fc3729f2112eddb80
MD5 956e1f6668764f31a605fb3883af3f4c
BLAKE2b-256 5317c7c73205f387e8730fea910d0df5fa2360f0c6f7f81ce1f22db1239c6b43

See more details on using hashes here.

File details

Details for the file openTSNE-1.0.1-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: openTSNE-1.0.1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 464.9 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.18

File hashes

Hashes for openTSNE-1.0.1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 3191fa26c95fefb3a2da1997ed4e63b5837426f272fee614fa67c72b375abcc6
MD5 051b34d85013b0b4ae08e59b797b3c30
BLAKE2b-256 30ecd0561f7108a1b466b313a41f326b6a83d1645b5090ef88176522535b15d5

See more details on using hashes here.

File details

Details for the file openTSNE-1.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for openTSNE-1.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 4b39d45fc40a57a4444c66b83d2b0b6fdbb2e614218a7c4eab2f86e0ed478545
MD5 8f564b3f80e2da0b4f9ea9ec4580141a
BLAKE2b-256 c5874a02070f34baf4f2838990d616734568f21ce5b01b207c713922f23541a6

See more details on using hashes here.

File details

Details for the file openTSNE-1.0.1-cp38-cp38-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for openTSNE-1.0.1-cp38-cp38-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 ac27df431bcadcbdd3daa77c76d1a4a8398224bcb7cf5ba5fb9a975f6b86839f
MD5 649bce038272bb81f903715d72fbe997
BLAKE2b-256 7381549b15090a0dbf1a2ade6c226369ea7406cf849ad5ddf501a88d0c106b18

See more details on using hashes here.

File details

Details for the file openTSNE-1.0.1-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: openTSNE-1.0.1-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 461.9 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.18

File hashes

Hashes for openTSNE-1.0.1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 7824509d75e80596cdb6d636363ab11521e23f24278f4d175474998d6dd7baff
MD5 1b5885bd58c529a9dc5abdaf0837d643
BLAKE2b-256 7e6452bf5a358260d3d07391c7e8e6dc1ae4947152f5250d450e4b3b948d8f6c

See more details on using hashes here.

File details

Details for the file openTSNE-1.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for openTSNE-1.0.1-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e03d01992e6d977b93cb32cedebe6fe07b67f1aaa9684726c729cac25a2120f3
MD5 7b3c575b64a2557abce2cf0a49691e2c
BLAKE2b-256 8644beba8a9e28e7769ad0111d98e985066fa447b96291e0a3692e0e1db0c16c

See more details on using hashes here.

File details

Details for the file openTSNE-1.0.1-cp37-cp37m-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for openTSNE-1.0.1-cp37-cp37m-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 aa47b15b3c618dd2fb99a348dc351bb46f67c14bb77b03833a3ada992bff4cf6
MD5 d29f889a129febc5447b10ecadf632aa
BLAKE2b-256 58df064d3209d02cce9c7c61d26e528b9d6867a0da637aa17708b3609c40e60f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page