flow-pocket / README.md
ARotting's picture
Publish Exactly invertible RealNVP and density controls
d486718 verified
|
Raw
History Blame Contribute Delete
1.28 kB
metadata
license: apache-2.0
tags:
  - normalizing-flows
  - realnvp
  - generative-modeling
  - density-estimation
  - gradio

Flow Pocket

Flow Pocket trains an exactly invertible RealNVP density model on a curved five-armed pinwheel distribution. Eight affine coupling layers transform data into a standard Gaussian while tracking the exact change-of-variables log determinant.

The benchmark compares held-out negative log-likelihood and generated-sample MMD against a fitted full-covariance Gaussian and a five-component Gaussian mixture. It also measures forward/inverse cycle error to verify that the saved neural transform is numerically invertible.

Verified results

The flow trained on 40,000 samples and was evaluated on 10,000 independently generated samples.

Model Held-out NLL Sample MMD
RealNVP 2.2629 0.000236
Five-component GMM 2.5887 0.000436
Full-covariance Gaussian 3.3527 0.002800

The eight-coupling-layer RealNVP has 21,536 parameters. Its maximum absolute forward/inverse reconstruction error over 2,000 held-out points was 5.78e-6. MMD uses independently randomized 1,000-sample subsets and a shared median distance bandwidth.

Reproduce

uv run python projects/flow-pocket/train.py