| license: apache-2.0 | |
| library_name: pytorch | |
| tags: | |
| - flow-matching | |
| - image-generation | |
| - celeba | |
| - unet | |
| # Flow Matching for CelebA | |
| This model learns a velocity field that transports Gaussian noise into 64x64 CelebA face images using flow matching. | |
| ## Architecture | |
| - Custom U-Net with sinusoidal time embeddings | |
| - Input image size: 64x64 | |
| - Input channels: 3 | |
| - Base channels: 64 | |
| ## Loading | |
| ```python | |
| import torch | |
| from modeling import FlowMatchingModel | |
| model = FlowMatchingModel.from_pretrained(".") | |
| model.eval() | |
| ``` | |
| ## Training setup | |
| This project uses a minimal Euler ODE sampler with flow matching and a velocity target: | |
| ```python | |
| x_t = (1 - t) * x0 + t * x1 | |
| target_v = x1 - x0 | |
| ``` | |
| The checkpoint in this repo is a raw PyTorch state dict generated by the training script. | |