Skip to main content

Artificial neural network-driven visualization of high-dimensional data using triplets.

Project description

DOI Documentation Status

ivis

Implementation of the ivis algorithm as described in the paper Structure-preserving visualisation of high dimensional single-cell datasets.

This algorithm uses a siamese neural network trained on triplets to reduce data dimensionality. Each triplet is sampled from one of the k nearest neighbours as approximated by the Annoy library, with neighbouring points being pulled together and non-neighbours being pushed away.

Unsupervised and supervised dimensionality reduction is supported.

Installation

Install the latest ivis release from PyPi:

pip install ivis

Alternatively, you can install the development version from github:

git clone https://github.com/beringresearch/ivis
cd ivis
pip install -r requirements.txt --editable .

The following optional dependencies are needed if using the visualization callbacks while training the Ivis model:

  • matplotlib
  • seaborn

Upgrading

Ivis Python package is updated frequently! To upgrade, run:

pip install ivis --upgrade

Features

  • Scalable: ivis is fast and easily extends to millions of observations and thousands of features.
  • Versatile: numpy arrays, sparse matrices, and hdf5 files are supported out of the box, making it easy to apply ivis to heterogeneous problems including clustering and anomaly detection.
  • Accurate: ivis excels at preserving both local and global features of a dataset. Often, ivis performs better at preserving global structure of the data than t-SNE, making it easy to visualise and interpret high-dimensional datasets.
  • Generalisable: ivis supports addition of new data points to original embeddings via a transform method, making it easy to incorporate ivis into standard sklearn Pipelines.

And many more! See ivis readme for latest additions and examples.

Examples

from ivis import Ivis
from sklearn import datasets

iris = datasets.load_iris()
X = iris.data

model = Ivis(embedding_dims=2, k=15)

embeddings = model.fit_transform(X)

Ivis Universe

Ivis can be used in a wide variety of real-world applications. The Ivis Universe consists of packages that extend the core Ivis functionality.

  • ivis-animate - visualise the Ivis learning process.
  • ivis-explain - explain which features contribute the most to ivis embeddings.

Copyright 2019 Bering Limited

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

ivis-1.2.3.tar.gz (13.5 kB view details)

Uploaded Source

Built Distribution

ivis-1.2.3-py3-none-any.whl (21.2 kB view details)

Uploaded Python 3

File details

Details for the file ivis-1.2.3.tar.gz.

File metadata

  • Download URL: ivis-1.2.3.tar.gz
  • Upload date:
  • Size: 13.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.3

File hashes

Hashes for ivis-1.2.3.tar.gz
Algorithm Hash digest
SHA256 cc5577661c39f96b727edc83e961554c08271562617f75a94dec4605d0df6742
MD5 4a1be208c5b2af2f99533165f48138d1
BLAKE2b-256 890f77246f6cdc6fdea9e3cfb28bd56fd862a5d84f8bd9559dc141dd50e68bea

See more details on using hashes here.

File details

Details for the file ivis-1.2.3-py3-none-any.whl.

File metadata

  • Download URL: ivis-1.2.3-py3-none-any.whl
  • Upload date:
  • Size: 21.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.7.3

File hashes

Hashes for ivis-1.2.3-py3-none-any.whl
Algorithm Hash digest
SHA256 a1bd1b733350847553f21d61074c085c223c667833f5ed2081c678ce32a2ff72
MD5 349d285a44dda42e1f787a78e55eb5df
BLAKE2b-256 cab5f507d2569748bb306690b1ee25c731922f1468f6ba9502d0480b23542818

See more details on using hashes here.

Supported by

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