Robust Guided Diffusion for Offline Black-Box Optimization

Can Sam Chen, Christopher Beckham, Zixuan Liu, Xue Liu, Christopher Pal
10/1/2024
cs.LGcs.AI

Official code: GGchen1997/RGD (4 stars, last commit 2024-05-05).

Abstract

Offline black-box optimization aims to maximize a black-box function using an offline dataset of designs and their measured properties. Two main approaches have emerged: the forward approach, which learns a mapping from input to its value, thereby acting as a proxy to guide optimization, and the inverse approach, which learns a mapping from value to input for conditional generation. (a) Although proxy-free~(classifier-free) diffusion shows promise in robustly modeling the inverse mapping, it lacks explicit guidance from proxies, essential for generating high-performance samples beyond the training distribution. Therefore, we propose \textit{proxy-enhanced sampling} which utilizes the explicit guidance from a trained proxy to bolster proxy-free diffusion with enhanced sampling control. (b) Yet, the trained proxy is susceptible to out-of-distribution issues. To address this, we devise the module \textit{diffusion-based proxy refinement}, which seamlessly integrates insights from proxy-free diffusion back into the proxy for refinement. To sum up, we propose \textit{\textbf{R}obust \textbf{G}uided \textbf{D}iffusion for Offline Black-box Optimization}~(\textbf{RGD}), combining the advantages of proxy~(explicit guidance) and proxy-free diffusion~(robustness) for effective conditional generation. RGD achieves state-of-the-art results on various design-bench tasks, underscoring its efficacy. Our code is at https://github.com/GGchen1997/RGD.

View on arXivView PDF

Code Implementations(1)

GGchen1997/RGDOfficial100%
40PythonMay 5, 20242 years ago

Similar Papers

Cite this paper

@article{chen2024robust,
  title  = {Robust Guided Diffusion for Offline Black-Box Optimization},
  author = {Can Sam Chen and Christopher Beckham and Zixuan Liu and Xue Liu and Christopher Pal},
  year   = {2024},
  eprint = {2410.00983},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2410.00983v2}
}

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

Discussion