Official implementation of "Bi-Lipschitz Autoencoder with Injectivity Guarantee" (ICLR 2026).
BLAE is a novel autoencoder framework that addresses the fundamental bottleneck of non-injective encoders in dimensionality reduction. By combining injective regularization with bi-Lipschitz constraints, BLAE achieves:
- ✅ Superior manifold preservation - Maintains intrinsic geometric structure
- ✅ Robustness to distribution shifts - Consistent embeddings across varying data distributions
- ✅ Elimination of pathological local minima - Avoids non-injective encoder collapse
- ✅ Efficient dimensionality reduction - Linear complexity O(m) vs quadratic O(m²) for isometric methods
Eliminates non-injective mappings through a separation criterion that prevents distant manifold regions from collapsing into nearby latent codes:
Ensures admissible geometric preservation while maintaining linear dimensionality scaling:
BLAE/
├── data/
│ ├── data_class.py # Dataset loaders
├── models/
│ ├── autoencoders.py # Autoencoder models
│ ├── coders.py # Encoder/decoder architectures
├── trainers/
│ ├── trainers.py # Training loops
├── utils/
│ ├── datasets.py # Data generation utilities
│ ├── functionals.py # Loss functions
│ ├── kernels.py # Kernel methods
│ ├── measures.py # Evaluation metrics
│ ├── regularizations.py # Regularization terms
│ └── visualization.py # Plotting utilities
└── swiss_roll.ipynb # Demo notebook