Iris-3B Data-Space DMD Turbo (4-step LoRA)
Visual comparisons
Visual order across all comparisons (4 steps each):
Left: Official Turbo | Middle: PentaCoxian Turbo | Right: Ours (Data-Space DMD2)
Arts and style composition
"A raccoon wearing formal clothes, wearing a tophat and holding a cane. The raccoon is holding a garbage bag. Oil painting in the style of Hokusai."
Anatomy and organic textures
"an owl"
Text rendering on complex objects
"A white ambulance with 'AMBULANCE' written in red on its back is parked on a city street, with a red cross symbol indicating its medical emergency service function."
Benchmark and evaluation
Results across 200 diverse prompts evaluated at 1024x1024 resolution:
| Model | Steps | SSIM vs Teacher | LPIPS vs Teacher | CLIP Score | Sharpness | Saturation |
|---|---|---|---|---|---|---|
| Official Turbo | 4 | 0.5753 | 0.5404 | 0.3145 | 0.0145 | 0.2842 |
| PentaCoxian Turbo | 4 | 0.4032 | 0.6294 | 0.3153 | 0.0073 | 0.2171 |
| Our Model (Data-Space DMD2) | 4 | 0.5723 | 0.5968 | 0.3149 | 0.0019 | 0.2692 |
Diagnosis and training observations
While the model achieves strong geometric coherence and matches teacher prompt alignment (0.3149 CLIP score), the outputs exhibit noticeable softness compared to both baselines (Laplacian variance 0.0019 vs. 0.0145 for Official Turbo and 0.0073 for PentaCoxian Turbo). My hypotheses for why this might have happened during distillation include:
- Unnormalized score gradients: Both Official Turbo (TDM) and PentaCoxian Turbo (DMD2) applied a per-sample normalization scale \( 1 / \text{mean}(|x_0 - x_{0, \text{teacher}}|) \) to their distillation gradients. Without this normalization, large low-frequency composition signals may have dominated updates, suppressing gradient dynamic range for high-frequency textures.
- Deterministic data-space vs. flow re-noising: PentaCoxian Turbo re-noises intermediate states along an ODE flow schedule, injecting stochastic variance across steps. Our data-space iteration refines clean x₀ directly with zero intermediate noise injection; under pure reverse-KL score matching without a discriminator, deterministic refinement may tend toward a smooth conditional mean.
- Training plateau: The run was stopped at 2,297 generator updates (~48 wall-clock hours) to preserve compute for evaluation. Across the final 150 updates, loss and gradient norms flattened, suggesting that extended training under the current unnormalized loss would likely not restore micro-textures without an explicit patch discriminator or perceptual regularizer.
Motivation and background
Most state-of-the-art text-to-image diffusion models operate in latent space, relying on a fixed encoder-decoder VAE with 8x spatial downsampling. While this cuts sequence length, the lossy latent bottleneck drops fine geometric edges, thin structures, and high-frequency textures. Iris-3B discards the VAE entirely, predicting raw 16x16 RGB pixel patches with a 3B-parameter flow-matching transformer. I picked Iris-3B for this project because it runs within tight local VRAM limits while avoiding latent reconstruction loss.
Distilling pixel-space models down to 4 steps with standard ODE trajectory renoising can cause visible seam artifacts across patch boundaries. A recent paper, Few-Step Generation via Data-Space Iteration (Lin et al., Oct 2026), presents an interesting fix: rather than walking along intermediate flow timesteps and renoising, the generator refines clean predictions directly in data space:
$$ \widehat{x}_0^{(0)} = \mathbf{0}, \quad \widehat{x}0^{(r+1)} = G\theta(\widehat{x}_0^{(r)}, z, r) $$
Here z is the initial Gaussian noise and r ∈ {0, ..., R − 1} is the discrete refinement step. This removes the need to tune noise schedules for few-step inference.
Crucially, data-space iteration plugs directly into the DMD2 distribution matching framework. The student is trained with DMD2 score matching gradients and backward simulation rollouts, using a dynamic fake score critic \( v_{\text{fake}} \) without requiring costly offline teacher trajectory pairs:
$$ \nabla_\theta \mathcal{L}{\text{DMD}} = \mathbb{E}{z, r, \tau, \varepsilon} \left[ w(\tau) \left( v_{\text{real}}(\widehat{x}\tau^{(r+1)}, \tau) - v{\text{fake}}(\widehat{x}\tau^{(r+1)}, \tau, r) \right)^\top \nabla\theta \widehat{x}_0^{(r+1)} \right] $$
Architecture and training details
Model components
- Base model: Sperid Labs
iris-3b, a 3B-parameter pixel-space diffusion transformer operating directly on 16x16 RGB patches. The backbone combines 8 dual-stream and 16 single-stream blocks with a 4-block PiT (Pixel Transformer) decoder head. - Text conditioning: Qwen3-VL-4B-Instruct encoder. Text prompts are mapped to pooled sequence embeddings.
- Data-space generator adaptation: LoRA (rank 128, alpha 128) applied across linear trunk layers. Two zero-initialized parameter branches support data-space iteration:
x0_embedder: linear projection mapping prior clean pixel-space predictions into trunk patch tokens.step_embeddings: learned table for refinement step indices r ∈ {0, 1, 2, 3}.
Distillation recipe
- Objective: DMD2 score matching with fake score critic. Generator gradients are computed by contrasting the frozen teacher \( v_{\text{real}} \) against the dynamic critic \( v_{\text{fake}} \).
- Backward simulation: Intermediate generator rollout states are generated using the student's own trajectory during training, avoiding exposure mismatch at inference time.
- Resolution: 1024x1024 raw pixel generation in 4 steps.
References
- Data-space iteration: Few-Step Generation via Data-Space Iteration (arXiv:2610.12102)
- Base architecture: Iris-3B: Going Beyond the Latent with Pixel-Space Diffusion Training, Conversion and Fine-Tuning (arXiv:2610.09450)
- Distillation framework: Improved Distribution Matching Distillation for Fast Image Synthesis (DMD2) (arXiv:2405.14867)
Citation
@misc{faesal2026iris3bdataspace,
author = {Faesal, Hasan},
title = {Iris-3B Data-Space DMD Turbo: 4-Step Distillation of Pixel-Space Diffusion Transformers},
year = {2026},
publisher = {Hugging Face},
howpublished = {\url{https://huggingface.co/hasanfaesal/iris-3b-dataspace-dmd-turbo}}
}