Accelerating Diffusion Models for Inverse Problems through Shortcut Sampling
Gongye Liu, Haoze Sun, Jiayi Li, Fei Yin, Yujiu Yang
TL;DR
Inverse problems $y=Hx+n$ are addressed with pre-trained diffusion priors by introducing Shortcut Sampling for Diffusion (SSD) that uses a transitional state $\mathscr{E}$ to bridge the measured image $y$ and the restored image $x$ via the forward process, starting from $H^{\dagger}y$. SSD replaces random-noise initialization with Distortion Adaptive Inversion (DA Inversion) to produce $\mathscr{E}$ and applies back projection as a consistency constraint during generation, with SSD$^+$ for noisy or imperfect degradation. The method achieves competitive or state-of-the-art results at low NFEs (e.g., 30 NFEs) and even surpasses some baselines at 100 NFEs across multiple IR tasks on CelebA and ImageNet. The work provides code and demonstrates speedups and robustness for zero-shot diffusion-based inverse problems.
Abstract
Diffusion models have recently demonstrated an impressive ability to address inverse problems in an unsupervised manner. While existing methods primarily focus on modifying the posterior sampling process, the potential of the forward process remains largely unexplored. In this work, we propose Shortcut Sampling for Diffusion(SSD), a novel approach for solving inverse problems in a zero-shot manner. Instead of initiating from random noise, the core concept of SSD is to find a specific transitional state that bridges the measurement image y and the restored image x. By utilizing the shortcut path of "input - transitional state - output", SSD can achieve precise restoration with fewer steps. To derive the transitional state during the forward process, we introduce Distortion Adaptive Inversion. Moreover, we apply back projection as additional consistency constraints during the generation process. Experimentally, we demonstrate SSD's effectiveness on multiple representative IR tasks. Our method achieves competitive results with only 30 NFEs compared to state-of-the-art zero-shot methods(100 NFEs) and outperforms them with 100 NFEs in certain tasks. Code is available at https://github.com/GongyeLiu/SSD
