Skip to main content


Documentation Status

bulkdgd is a Python package providing an interface to use the Deep Generative Decoder (DGD) to model the gene expression of healthy human tissues from bulk RNA-Seq data.

The first version of the DGD was developed in 2023 (Schuster and Krogh, 2023) and the first application of the model to bulk RNA-Seq data is presented in the work of Prada-Luengo, Schuster, Liang, and coworkers (Prada-Luego, Schuster, Liang, et al., 2023).

bulkdgd is a Python package, but it can be used directly from R without writing any Python code. For how to perform differential expression analysis using bulkdgd in R, see the R tutorial.

All the recount3 samples used to train and test the model were processed from raw files through the Monorail pipeline. If you have your own raw files, we recommend processing them through the same pipeline before using them with bulkdgd.

Quick install

pip install bulkdgd

The trained decoder's parameters (dec.pth, too large to distribute on PyPI) are downloaded automatically the first time you use the pre-trained model - see the installation instructions for details, including a manual-download fallback for offline machines.

Version 2.0.1

  • The default pre-trained model has been updated (both the Gaussian mixture and the decoder's parameters), fixing a mismatch between the packaged model configuration and the previously-shipped decoder.
  • The trained decoder's parameters (dec.pth) are no longer distributed with the package or manually downloaded - bulkdgd now downloads them automatically, once, the first time the pre-trained model is used.

Version 2.0.0 - major release

This is a major release superseding all previous versions of the package (previously named bulkDGD). Existing users should switch to it. The biggest changes compared to the previous version:

  • The package has been renamed from bulkDGD to bulkdgd (the import name and CLI commands are unaffected, since they already used the lowercase form).

  • The pre-trained model shipped by default has been retrained on GTEx data using a new Gaussian mixture model implementation (tgmm) and a curated, smaller gene list, replacing the previous default model.

  • Several CLI commands (bulkdgd_train, bulkdgd_find_probdens, bulkdgd_find_representations) had a leftover bug from an earlier refactor that made them fail immediately on invocation - this has been fixed.

  • All tutorials have been converted from standalone Python scripts into executed Jupyter notebooks, and a new tutorial covers downloading and preparing samples from Recount3.

  • The documentation has been substantially overhauled: broken API cross-references, outdated installation instructions, and missing CLI usage examples have all been fixed, and the docs now build cleanly with no warnings.

  • Documentation: bulkdgd's documentation can be found here.

  • Bug reports: please report any bugs or problems you encounter with bulkdgd in the dedicated issues section on GitHub.

License

bulkdgd is freely available under the terms of the GNU General Public License (Version 3, 29 June 2007).

References

(Schuster and Krogh, 2023) Schuster, Viktoria, and Anders Krogh. "The Deep Generative Decoder: MAP estimation of representations improves modelling of single-cell RNA data." Bioinformatics 39.9 (2023): btad497.

(Prada-Luengo, Schuster, Liang, et al., 2023) Prada-Luengo, Iñigo, et al. "N-of-one differential gene expression without control samples using a deep generative model." Genome Biology 24.1 (2023): 263.

Metadata

Release files for bulkdgd 2.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 bulkdgd 2.0.1
File Size Uploaded
bulkdgd-2.0.1.tar.gz 269.6 kB Details

Built distribution (wheel)

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

Total release size: 592.5 kB

Release files / bulkdgd-2.0.1.tar.gz

Download URL bulkdgd-2.0.1.tar.gz
Size 269.6 kB
Tags Source
SHA-256 checksum
How to use checksums
61897b0d67bf0d658b2beb13d7daed2841fb6cef8bc4f586ee2858614859004b
BLAKE2b-256 checksum
How to use checksums
088ca191fb51fd10d777d032cc5386e4a181e7bb5f95e33cf573f05ef47d0d6e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 8, 2026.

Transparency log

Release files / bulkdgd-2.0.1-py3-none-any.whl

Download URL bulkdgd-2.0.1-py3-none-any.whl
Size 323.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e0822cb0a01abb559c26b96d1ced393245de38f0ae65c79d5c53c0a3c86e110a
BLAKE2b-256 checksum
How to use checksums
855ad254b8f279d702718bc3175af9a9a9a2d2a54930aef5f16a7b26951b0322
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jul 8, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

2.0.1 This release

2 release files

2.0.0

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