Skip to main content

CI docs

LatentLego - flexible latent spaces for single cells

LatentLego is a python library for building autoencoders for single-cell genomics. It is build on top of TensorFlow and Keras and provides modular components to build common single-cell autoencoder architectures. All individual comonents are valid Keras Layer or Model objects and therefore support model construction using the standard Keras (functional/sequential) API. There is also a model zoo of preconstructed models that understand builtin Keras methods like .fit() or .predict() and .compile() with custom loss functions.

Installation

You can install LatentLego from PyPI using pip

pip install latent

or install the development version from GitHub

pip install git+https://github.com/quadbiolab/latent-lego

Overview

LatentLego is designed to be a flexible kit for defining autoencoders by providing common building blocks that can be freely assembled. Here's an overview:

  • latent.models - Here you can find Keras-compatible implementations of common single-cell autoencoder architectures, such as the ZINBAutoencoder (Erslan 2019) or the NegativeBinomialVAE (Lopez 2018). I also implemented some more experimental architectures like the TopologicalAutoencoder (Moor 2019).

  • latent.modules - Here live the lower level building blocks of autoencoders, namely encoder and decoder models that can be freely assembled to produce autoencoder models. E.g., using a VariationalEncoder with a PoissonDecoder produces a PoissonVAE, a variational autoencoder with a poisson reconstruction loss.

  • latent.layers - These are the most basic building blocks of encoder and decoder models. In addition to the DenseBlock/DenseStack layers that are the core component of encoders and decoders, I implemeneted some other useful utility layers.

  • latent.losses, latent.activations, latent.callbacks - Keras-style components that are useful for single-cell data, like a NegativeBinomial loss or a KLDivergenceScheduler callback function. All of these should work nicely within the TensorFlow/Keras framework.

Metadata

Release files for latent 0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for latent 0.1
File Size Uploaded
latent-0.1.tar.gz 1.5 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for latent 0.1
File Interpreter ABI Platform
latent-0.1-py3-none-any.whl Python 3 none any Details

Total release size: 1.6 MB

Release files / latent-0.1.tar.gz

Download URL latent-0.1.tar.gz
Size 1.5 MB
Tags Source
SHA-256 checksum
How to use checksums
227e6e2b5def8ca3152833ee487725294fc427d7770f2d6732268842c6e12d36
BLAKE2b-256 checksum
How to use checksums
b346d138fc1d5488e6a23d346c38166ae696c016e3728907f47eb782b0fedb7d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.3.3 requests-toolbelt/0.9.1 tqdm/4.55.1 CPython/3.8.5

Release files / latent-0.1-py3-none-any.whl

Download URL latent-0.1-py3-none-any.whl
Size 25.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e683f58a4ff5b216793e3c9c1c4cac17e57fbc880f964e8f74f8dee10201ef11
BLAKE2b-256 checksum
How to use checksums
191faf95fb67e30b0c679020176b08c6997ba0f68ecef918d806805d4a84f779
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.3.3 requests-toolbelt/0.9.1 tqdm/4.55.1 CPython/3.8.5

Release history Release notifications | RSS feed

This release

0.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page