Optimizing Backward Policies in GFlowNets via Trajectory Likelihood Maximization

Timofei Gritsaev, Nikita Morozov, Sergey Samsonov, Daniil Tiapkin
10/20/2024
cs.LG

No official code found. Best implementation: tgritsaev/gflownet-tlm (29 stars, MIT, PyTorch, last commit 2025-03-02).

Abstract

Generative Flow Networks (GFlowNets) are a family of generative models that learn to sample objects with probabilities proportional to a given reward function. The key concept behind GFlowNets is the use of two stochastic policies: a forward policy, which incrementally constructs compositional objects, and a backward policy, which sequentially deconstructs them. Recent results show a close relationship between GFlowNet training and entropy-regularized reinforcement learning (RL) problems with a particular reward design. However, this connection applies only in the setting of a fixed backward policy, which might be a significant limitation. As a remedy to this problem, we introduce a simple backward policy optimization algorithm that involves direct maximization of the value function in an entropy-regularized Markov Decision Process (MDP) over intermediate rewards. We provide an extensive experimental evaluation of the proposed approach across various benchmarks in combination with both RL and GFlowNet algorithms and demonstrate its faster convergence and mode discovery in complex environments.

View on arXivView PDF

Code Implementations(1)

PyTorchMIT

The source code for the paper "Optimizing Backward Policies in GFlowNets via Trajectory Likelihood Maximization" (ICLR 2025)

291Shell, PythonNov 1, 20241 years agoMIT
deep-learninggflownetpytorchreinforcement-learning

Similar Papers

Cite this paper

@article{gritsaev2024optimizing,
  title  = {Optimizing Backward Policies in GFlowNets via Trajectory Likelihood Maximization},
  author = {Timofei Gritsaev and Nikita Morozov and Sergey Samsonov and Daniil Tiapkin},
  year   = {2024},
  eprint = {2410.15474},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2410.15474v2},
  journal = {ICLR 2024 2024}
}

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

Discussion