# AutoEncoderToolkit.jl - A package for training (Variational) Autoencoders

**URL:** https://discourse.julialang.org/t/autoencodertoolkit-jl-a-package-for-training-variational-autoencoders/115985
**Category:** Package Announcements
**Tags:** announcement, flux, ml, deep-learning
**Created:** [June 21, 2024, 4:30pm UTC](https://discourse.julialang.org/t/autoencodertoolkit-jl-a-package-for-training-variational-autoencoders/115985 "2024-06-21T16:30:45Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![mrazomej](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mrazomej/32/31141_2.png) [@mrazomej](https://discourse.julialang.org/u/mrazomej)
#### Post date: [June 21, 2024, 4:30pm UTC](https://discourse.julialang.org/t/autoencodertoolkit-jl-a-package-for-training-variational-autoencoders/115985/1 "2024-06-21T16:30:45Z")

</div>

**Announcing AutoEncoderToolkit.jl: A New Package for Training Autoencoders**

We are excited to introduce [`AutoEncoderToolkit.jl`](https://mrazomej.github.io/AutoEncoderToolkit.jl/stable/), a new package designed to simplify the training and usage of [`Flux.jl`](https://fluxml.ai/Flux.jl/stable/)-based autoencoders and variational autoencoders (VAEs), with a strong probabilistic perspective.

**Key Features:**

- **Probabilistic Focus:** Variational encoders and decoders are defined by the log-probability distribution they encode.
- **Multiple VAE Flavors:** Includes (so far) β-VAE, MMD-VAE, InfoMax-VAE, HVAE, and RHVAE.
- **Modular Design:** Easily implement new encoder/decoder architectures and VAE variants thanks to Julia’s multiple dispatch.
- **Differential-Geometry Perspective:** Early stages of implementing a differential-geometry perspective on VAEs to better explore the learned latent space.
- **Simple Installation:** Install via Julia’s package manager.
- **GPU Support:** Train models on CUDA-compatible GPUs effortlessly.
- **Extensive Documentation:** Detailed documentation and highly annotated code enable quick onboarding for contributors with Julia experience.

**Contributions Welcome:** We are looking for contributors to expand the list of available models. Check our [GitHub repository](https://github.com/mrazomej/AutoEncoderToolkit.jl) for more details.

For comprehensive documentation and examples, visit our [documentation page](https://mrazomej.github.io/AutoEncoderToolkit.jl/stable/).
