π€ AI Summary
This work proposes an unsupervised flow-matching approach for single-channel multi-source signal separation in the absence of clean source signals. It uniquely integrates a remixing mechanism with flow matching, wherein a teacher model generates estimated sources that are re-mixed to guide a student flow model in bootstrapping its learning directly from observed mixtures. Theoretical analysis reveals an intrinsic connection between the proposed framework and the Wake-Sleep algorithm. By synergistically combining flow-based generative modeling, self-supervised regression, and a teacher-student architecture, the method substantially outperforms existing unsupervised approaches on both image and audio benchmarks, establishing a new state of the art in unsupervised source separation.
π Abstract
The goal of single-channel source separation is to reconstruct $K$ sources given their mixture. In supervised settings where vast amounts of clean source data are available, this challenging, ill-posed problem has been addressed successfully by generative diffusion and flow-based prior models. However, access to such clean source samples is often limited, and even when available, supervised models are vulnerable to domain shifts. To bridge this gap, we present Separation via Unsupervised Remixing Flow (SURF), an unsupervised flow matching approach for source separation that learns directly from observed mixtures. This method relies on a novel combination of state-of-the-art supervised flow matching and regression-based self-supervised techniques. At a high level, starting from a teacher model, we utilize a "remixing" step to bootstrap the learning of a student flow model from the teacher's estimates. We provide insights into the objectives optimized by this approach and draw a novel connection to the Wake-Sleep algorithm. Empirical evaluations on image and audio benchmarks demonstrate that SURF establishes a new state-of-the-art, significantly outperforming existing unsupervised methods. See our demo page for examples. https://google.github.io/df-conformer/surf/