Flow Matching CIFAR-10 Model
A flow matching model for unconditional image generation trained on the CIFAR-10 dataset. This model uses continuous normalizing flows with the FlowMatchEulerDiscreteScheduler for efficient sampling.
Model Details
- Architecture: UNet2DModel with flow matching
- Dataset: CIFAR-10 (32x32 RGB images)
- Scheduler: FlowMatchEulerDiscreteScheduler
- Training Steps: 1000 timesteps
- Framework: Diffusers 0.35.0.dev0
Flow Matching Configuration
The model uses FlowMatchEulerDiscreteScheduler with the following key parameters:
- Base shift: 0.5
- Shift: 1.0 (exponential time shifting)
- Base image sequence length: 256
- Max image sequence length: 4096
- Stochastic sampling: Disabled for deterministic generation
Usage
Basic Generation
from diffusers import DDPMPipeline
# Load the flow matching model
pipeline = DDPMPipeline.from_pretrained("FrankCCCCC/cfm-cifar10-32")
# Generate an image
image = pipeline().images[0]
image.save("generated_cifar10.png")
Custom Inference Steps
from diffusers import DDPMPipeline
pipeline = DDPMPipeline.from_pretrained("FrankCCCCC/cfm-cifar10-32")
# Generate with custom number of inference steps
num_inference_steps: int = 1000
pipeline.scheduler.set_timesteps(num_inference_steps)
image = pipeline().images[0]
image.save("fast_generated_cifar10.png")
Batch Generation
from diffusers import DDPMPipeline
pipeline = DDPMPipeline.from_pretrained("FrankCCCCC/cfm-cifar10-32")
# Generate multiple images at once
images = pipeline(batch_size=4).images
for i, image in enumerate(images):
image.save(f"generated_cifar10_{i}.png")
Flow Matching vs Standard Diffusion
This model implements flow matching, which offers several advantages over standard diffusion models:
- Faster sampling: More efficient ODE solving with fewer steps
- Better training stability: Continuous normalizing flows provide smoother optimization
- Flexible scheduling: Exponential time shifting for improved sample quality
Model Architecture
- UNet: Standard UNet2DModel for denoising/flow prediction
- Scheduler: FlowMatchEulerDiscreteScheduler with exponential time shifting
- Output: 32x32 RGB images matching CIFAR-10 distribution
Requirements
pip install diffusers torch torchvision
Samples
Citation
If you use this model, please cite the original flow matching and diffusion literature:
@inproceedings{DDPM,
author = {Ho, Jonathan and Jain, Ajay and Abbeel, Pieter},
booktitle = {Advances in Neural Information Processing Systems},
title = {Denoising Diffusion Probabilistic Models},
url = {https://proceedings.neurips.cc/paper_files/paper/2020/file/4c5bcfec8584af0d967f1ab10179ca4b-Paper.pdf},
year = {2020}
}
@inproceedings{FM,
title={Flow Matching for Generative Modeling},
author={Yaron Lipman and Ricky T. Q. Chen and Heli Ben-Hamu and Maximilian Nickel and Matthew Le},
booktitle={The Eleventh International Conference on Learning Representations },
year={2023},
url={https://openreview.net/forum?id=PqvMRDCJT9t}
}
- Downloads last month
- 60
Inference Providers
NEW
This model isn't deployed by any Inference Provider.
🙋
Ask for provider support
Model tree for FrankCCCCC/cfm-cifar10-32
Base model
google/ddpm-cifar10-32