I'm a researcher at the Max-Born-Institute Berlin. This is written and maintained as part of the ongoing analysis of diffraction data obtained during coherent diffraction imaging experiments in our group. Feel free to take what you need but please don't expect any support on issues with this code.
However, I'm grateful for any bugs reported.
Penalizing the total correlation instead of the KL between the prior and q(z) helps to disentangle the latent representations.
See:
- betaTCVAE: Isolating Sources of Disentanglement in Variational Autoencoders
- factorVAE: Disentangling by Factorising
- Challenging Common Assumptions in the Unsupervised Learning of Disentangled Representations
I added:
- Laplace Prior
- Custom 15-Layer Resnet in Encoder and Decoder
- Use Pre-Activated Residual Blocks instead of plain convolutional layers
- Use Self-Attention in the encoder and the decoder
- Use linear warm-up learning rate scheduler (Not using RAdam, but Adam with warmup)