Transformer flows
Implementation of Apple ML's Transformer Flow (or TARFlow) from Normalising flows are capable generative models in jax and equinox.
Features:
jax.vmap&jax.lax.scanconstruction & forward-pass, for layers respectively for fast compilation and execution,- multi-device training, inference and sampling,
- score-based denoising step (see paper),
- conditioning via class embedding (for discrete class labels) or adaptive layer-normalisation (for continuous variables, like in DiT),
- array-typed to-the-teeth for dependable execution with
jaxtypingandbeartype.
To implement:
- Guidance
- Denoising
- Mixed precision
- EMA
- AdaLayerNorm
- Class embedding
- Hyperparameter/model saving
- Uniform and Gaussian noise for dequantisation
Usage
pip install -e .
Samples
I haven't optimised anything here (the authors mention varying the variance of noise used to dequantise the images), nor have I trained for very long. You can see slight artifacts due to the dequantisation noise.
Citation
@misc{zhai2024normalizingflowscapablegenerative,
title={Normalizing Flows are Capable Generative Models},
author={Shuangfei Zhai and Ruixiang Zhang and Preetum Nakkiran and David Berthelot and Jiatao Gu and Huangjie Zheng and Tianrong Chen and Miguel Angel Bautista and Navdeep Jaitly and Josh Susskind},
year={2024},
eprint={2412.06329},
archivePrefix={arXiv},
primaryClass={cs.CV},
url={https://arxiv.org/abs/2412.06329},
}
Metadata
Release files for transformer_flow 0.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| transformer_flow-0.0.0.tar.gz | 15.4 MB | Without provenance | Details for transformer_flow-0.0.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| transformer_flow-0.0.0-py3-none-any.whl | Python 3 | none | any | Details for transformer_flow-0.0.0-py3-none-any.whl |
Total release size: 30.9 MB
Release files / transformer_flow-0.0.0.tar.gz
| Download URL | transformer_flow-0.0.0.tar.gz |
|---|---|
| Size | 15.4 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2e6ea94629359859a1502d6cb766ff239ea9f01571b3405577bf4f1a35e12e0c
|
|
BLAKE2b-256 checksum How to use checksums |
6a8891dd633781e531005cfedcc2bc22544b3bfad74f6c9e80c30ccaeb7d32f0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.15
|
Release files / transformer_flow-0.0.0-py3-none-any.whl
| Download URL | transformer_flow-0.0.0-py3-none-any.whl |
|---|---|
| Size | 15.4 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
8b1ed0db905184c8a04c3ed3762a1894d56599e3459c5aa3cdae25507d636716
|
|
BLAKE2b-256 checksum How to use checksums |
c4c3bc0b0024a0298875c51b13fd288fbdc20a083a1556794276de5eeeef3be8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.7.15
|
Security for transformer_flow 0.0.0
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.