Skip to main content

Interpretable Variational Autoencoder for Single-Cell Data

Project description

About

iVAE is an enhanced representation learning method designed for capturing lineage features and gene expression patterns in single-cell transcriptomics. Compared to a standard VAE, iVAE incorporates a pivotal interpretative module that increases the correlation between latent components. This enhanced correlation helps the model learn gene expression patterns in single-cell data where correlations are present.

Installation

You can install the iVAE package using:

pip install iVAE

This repository is hosted at iVAE GitHub Repository.

Usage

You can customize the behavior of the script by providing additional arguments:

  • --epochs: Number of training epochs (default: 1000)
  • --layer: Layer to use from the AnnData object (default: 'counts')
  • --percent: Percent parameter value (default: 0.01)
  • --irecon: Irecon parameter value (default: 0.0)
  • --beta: Beta parameter value (default: 1.0)
  • --dip: Dip parameter value (default: 0.0)
  • --tc: TC parameter value (default: 0.0)
  • --info: Info parameter value (default: 0.0)
  • --hidden_dim: Hidden dimension size (default: 128)
  • --latent_dim: Latent dimension size (default: 10)
  • --i_dim: i dimension size (default: 2)
  • --lr: Learning rate (default: 1e-4)
  • --data_path: Path to the data file (default: 'data.h5ad')
  • --output_dir: Directory to save the results (default: 'iVAE_output')

Example of running with custom parameters:

iVAE --epochs 500 --layer 'counts' --data_path 'path/to/your/data.h5ad' --output_dir 'iVAE_output'

Output

After running the script, the latent space representations are saved in the specified output directory (iVAE_output by default):

  • iembed.npy: Contains the output from the get_iembed() function.
  • latent.npy: Contains the output from the get_latent() function.

These files are NumPy arrays that can be loaded using numpy.load() for further analysis.

Example of Loading Output Data

You can load and analyze the output data using the following Python code:

import numpy as np

# Load the iembed data
iembed = np.load('iVAE_output/iembed.npy')

# Load the latent data
latent = np.load('iVAE_output/latent.npy')

# Perform your analysis
print("iembed shape:", iembed.shape)
print("latent shape:", latent.shape)

License

This project is licensed under the MIT License. See the LICENSE file for details.

license

Contact

For questions or issues, please contact Zeyu Fu at fuzeyu99@126.com.


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

iVAE-0.0.2.tar.gz (10.6 kB view details)

Uploaded Source

Built Distribution

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

iVAE-0.0.2-py3-none-any.whl (11.0 kB view details)

Uploaded Python 3

File details

Details for the file iVAE-0.0.2.tar.gz.

File metadata

  • Download URL: iVAE-0.0.2.tar.gz
  • Upload date:
  • Size: 10.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.9

File hashes

Hashes for iVAE-0.0.2.tar.gz
Algorithm Hash digest
SHA256 1445e4f5df3b2a6132acfb2f886223a0b17ea5239da875c5ee1887b603f4ce1a
MD5 9109832447fa33c41ca09fe83810b310
BLAKE2b-256 451d33aba70b6ad904ec40084c0e0c72f38d8a6c0fda73672b4d76e511c9ec08

See more details on using hashes here.

File details

Details for the file iVAE-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: iVAE-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 11.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.11.9

File hashes

Hashes for iVAE-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 5f035aae477a7ba307de356e0b912868c36551f6803307cb5c4c5d0775ef2df5
MD5 99236636506f282ad5495f037174b7ba
BLAKE2b-256 c181dca25a37a2dbe385183bd609a1c990c2e1b6a81a6df17eae6d205f09ca36

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