Enhancing Gradient-based Discrete Sampling via Parallel Tempering

Luxu Liang, Yuhang Jia, Feng Zhou
2/26/2025
stat.MLcs.LGstat.AP

No confident code implementation found for this paper.

Abstract

While gradient-based discrete samplers are effective in sampling from complex distributions, they are susceptible to getting trapped in local minima, particularly in high-dimensional, multimodal discrete distributions, owing to the discontinuities inherent in these landscapes. To circumvent this issue, we combine parallel tempering, also known as replica exchange, with the discrete Langevin proposal and develop the Parallel Tempering enhanced Discrete Langevin Proposal (PTDLP), which are simulated at a series of temperatures. Significant energy differences prompt sample swaps, which are governed by a Metropolis criterion specifically designed for discrete sampling to ensure detailed balance is maintained. Additionally, we introduce an automatic scheme to determine the optimal temperature schedule and the number of chains, ensuring adaptability across diverse tasks with minimal tuning. Theoretically, we establish that our algorithm converges non-asymptotically to the target energy and exhibits faster mixing compared to a single chain. Empirical results further emphasize the superiority of our method in sampling from complex, multimodal discrete distributions, including synthetic problems, restricted Boltzmann machines, and deep energy-based models.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. Any repos shown below are weak matches — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Similar Papers

Cite this paper

@article{liang2025enhancing,
  title  = {Enhancing Gradient-based Discrete Sampling via Parallel Tempering},
  author = {Luxu Liang and Yuhang Jia and Feng Zhou},
  year   = {2025},
  eprint = {2502.19240},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2502.19240v2}
}

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/2502.19240.svg)](https://codeofpaper.com/paper/2502.19240)

Discussion