Skip to content

TorchEBM Examples

This section contains practical examples that demonstrate how to use TorchEBM for energy-based modeling. Each example is fully tested and focuses on a specific use case or feature.

Example Structure

Example Format

Each example follows a consistent structure to help you understand and apply the concepts:

  1. Overview: Brief explanation of the example and its purpose
  2. Code: Complete, runnable code for the example
  3. Explanation: Detailed explanation of key concepts and code sections
  4. Extensions: Suggestions for extending or modifying the example

Running the Examples

All examples can be run using the examples main.py script:

# Clone the repository
git clone https://github.com/soran-ghaderi/torchebm.git
cd torchebm

# Set up your environment
pip install -e .

# List all available examples
python examples/main.py --list

# Run a specific example
python examples/main.py samplers/langevin/visualization_trajectory

Prerequisites

To run these examples, you'll need:

  • Python 3.7+
  • PyTorch 1.9+
  • NumPy
  • Matplotlib

If you haven't installed TorchEBM yet, see the Installation guide.

GPU Acceleration

Most examples support GPU acceleration and will automatically use CUDA if available:

1
2
3
import torch
device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
energy_fn = GaussianEnergy(mean, cov).to(device)

What's Next?

After exploring these examples, you might want to:

  1. Check out the API Reference for detailed documentation
  2. Read the Developer Guide to learn about contributing
  3. Look at the roadmap for upcoming features