Code
Our code is here.
TL;DR;
- Motivated by making neural networks interpretable by design, we attempted to explicitly represent the data manifold as it is transformed through a network, rather than recovering it post-hoc.
- The core idea is an “atlas autoencoder” — a mixture-of-autoencoders where each component learns a chart (local diffeomorphism) on the data manifold. A gating network produces soft chart assignments, and the overall reconstruction is a weighted combination across charts.
- We defined differentiable Betti numbers for the learned representation by constructing a nerve complex from chart overlap weights and computing Hodge Laplacians on the resulting simplicial complex. The multiplicity of zero eigenvalues of these Laplacians gives the Betti numbers, providing a topological summary of the learned manifold structure during training.
- This was an extension of our SPAR project on geometric constraints for interpretability.
Architecture
Atlas Autoencoder
Definition. Atlas. Let be a data point on a -dimensional manifold . A chart is a diffeomorphism . The finite family is the atlas.
Our block is a mixture-of-autoencoders. We learn
- A shared gating network producing logits . Softmax yields soft chart weights .
- For every chart a pair of MLPs
with and the ReLU.
For each chart we reconstruct
then recombine
The loss is
Betti Numbers
Definition. Overlap weights. For charts define
Definition. Nerve complex. Fix . The (weighted) nerve has
- vertices ,
- an edge when ,
- a triangle when all three of its edges are present.
We truncate at -simplices ().
During training we maintain the matrix and use it to build .
Enumerate vertices, edges, and triangles arbitrarily. Let be the edge list and the triangle list.
Definition. Boundary operators.
where , , for the orientation , and otherwise.
Definition. Hodge Laplacians.
The multiplicity of the zero eigenvalue of equals the -th Betti number .