--- license: cc-by-nc-4.0 pipeline_tag: image-classification viewer: false tags: - ambient omni - diffusion - ambient diffusion - imagenet - low-quality data --- # Ambient Diffusion Omni (Ambient-o): Training Good Models with Bad Data ![](https://huggingface.co/giannisdaras/ambient-o/resolve/main/ambient_logo.png) ## Dataset Description Ambient Diffusion Omni (Ambient-o) is a framework for using low-quality, synthetic, and out-of-distribution images to improve the quality of diffusion models. Unlike traditional approaches that rely on highly curated datasets, Ambient-o extracts valuable signal from all available images during training, including data typically discarded as "low-quality." This model card is for the noise classifier on cifar10 for blurring corruptions with `sigma_B=0.6`, used in our pixel diffusion experiments based on [EDM](https://github.com/NVlabs/edm). The architecture is a time-dependent half U-Net backbone + linear projection. Given a noisy image `x_t` and a noise level `sigma_t`, it predicts the probabily that the un-noised image `x` is blurry or not blurry. We use this to "annotate" the blurry (low-quality) part of our dataset with the minimum noise level `sigma_tn` at which its safe to use. ## Visualization For visualization purposes, we include here a figure from our paper explaining how it works: ![](https://github.com/giannisdaras/ambient-omni/raw/main/figs/classifier_probs.jpg) As shown in the figure above, when fed the blurry image our annotation pipeline would output 1.5. ## Usage instructions You can load this using the following code, after cloning [our repository](https://github.com/giannisdaras/ambient-omni) and running `cd pixel-diffusion` ```python import dnnlib from huggingface_hub import hf_hub_download import json from safetensors.torch import load_file # Get network args from HF options_path = hf_hub_download(repo_id=ckpt_file, filename="training_options.json") options = json.load(open(options_path, "r", encoding="utf-8")) interface_kwargs_path = hf_hub_download(repo_id=ckpt_file, filename="interface_kwargs.json") interface_kwargs = json.load(open(interface_kwargs_path, "r", encoding="utf-8")) # Construct architecture net = dnnlib.util.construct_class_by_name(**options['network_kwargs'], **interface_kwargs) # Load state dict state_dict_path = hf_hub_download(repo_id=ckpt_file, filename="ema.safetensors") state_dict = load_file(state_dict_path) net.load_state_dict(state_dict) net.eval() ``` ## Citation ```bibtex @article{daras2025ambient, title={Ambient Diffusion Omni: Training Good Models with Bad Data}, author={Daras, Giannis and Rodriguez-Munoz, Adrian and Klivans, Adam and Torralba, Antonio and Daskalakis, Constantinos}, journal={arXiv preprint}, year={2025}, } ```