Latent spaces for single cells
Project description
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 theZINBAutoencoder
(Erslan 2019) or theNegativeBinomialVAE
(Lopez 2018). I also implemented some more experimental architectures like theTopologicalAutoencoder
(Moor 2019). -
latent.modules
- Here live the lower level building blocks of autoencoders, namelyencoder
anddecoder
models that can be freely assembled to produce autoencoder models. E.g., using aVariationalEncoder
with aPoissonDecoder
produces aPoissonVAE
, a variational autoencoder with a poisson reconstruction loss. -
latent.layers
- These are the most basic building blocks ofencoder
anddecoder
models. In addition to theDenseBlock
/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 aNegativeBinomial
loss or aKLDivergenceScheduler
callback function. All of these should work nicely within the TensorFlow/Keras framework.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file latent-0.1.tar.gz
.
File metadata
- Download URL: latent-0.1.tar.gz
- Upload date:
- Size: 1.5 MB
- Tags: Source
- Uploaded using 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
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 227e6e2b5def8ca3152833ee487725294fc427d7770f2d6732268842c6e12d36 |
|
MD5 | 5dedae07bfa06739f9467c78b7dff323 |
|
BLAKE2b-256 | b346d138fc1d5488e6a23d346c38166ae696c016e3728907f47eb782b0fedb7d |
File details
Details for the file latent-0.1-py3-none-any.whl
.
File metadata
- Download URL: latent-0.1-py3-none-any.whl
- Upload date:
- Size: 25.4 kB
- Tags: Python 3
- Uploaded using 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
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e683f58a4ff5b216793e3c9c1c4cac17e57fbc880f964e8f74f8dee10201ef11 |
|
MD5 | 8153c01e90fd93c7ab63ee130fb85a9f |
|
BLAKE2b-256 | 191faf95fb67e30b0c679020176b08c6997ba0f68ecef918d806805d4a84f779 |