LangDAug: Langevin Data Augmentation for Multi-Source Domain Generalization in Medical Image Segmentation

Piyush Tiwary, Kinjawl Bhattacharyya, AP Prathosh
2/14/2026

No official code found. Best implementation: backpropagator/LangDAug (14 stars, last commit 2025-05-28).

Abstract

Medical image segmentation models often struggle to generalize across different domains due to various reasons. Domain Generalization (DG) methods overcome this either through representation learning or data augmentation (DAug). While representation learning methods seek domain-invariant features, they often rely on ad-hoc techniques and lack formal guarantees. DAug methods, which enrich model representations through synthetic samples, have shown comparable or superior performance to representation learning approaches. We propose LangDAug, a novel $\textbf{Lang}$evin $\textbf{D}$ata $\textbf{Aug}$mentation for multi-source domain generalization in 2D medical image segmentation. LangDAug leverages Energy-Based Models (EBMs) trained via contrastive divergence to traverse between source domains, generating intermediate samples through Langevin dynamics. Theoretical analysis shows that LangDAug induces a regularization effect, and for GLMs, it upper-bounds the Rademacher complexity by the intrinsic dimensionality of the data manifold. Through extensive experiments on Fundus segmentation and 2D MRI prostate segmentation benchmarks, we show that LangDAug outperforms state-of-the-art domain generalization methods and effectively complements existing domain-randomization approaches. The codebase for our method is available at https://github.com/backpropagator/LangDAug.

View on arXivView PDF

Code Implementations(1)

Codebase for LangDAug

140C++, CudaMay 19, 20251 years ago

Similar Papers

Cite this paper

@article{tiwary2026langdaug,
  title  = {LangDAug: Langevin Data Augmentation for Multi-Source Domain Generalization in Medical Image Segmentation},
  author = {Piyush Tiwary and Kinjawl Bhattacharyya and AP Prathosh},
  year   = {2026},
  eprint = {2505.19659},
  archivePrefix = {arXiv},
  url    = {https://arxiv.org/abs/2505.19659},
  journal = {ICML 2025 2025}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2505.19659.svg)](https://codeofpaper.com/paper/2505.19659)

Discussion