MolecularDiffusion.core.lightning_callbacks.generative_eval_callback

Generative evaluation callback for diffusion models.

Performs molecule generation and validity checking during validation.

Attributes

Classes

GenerativeEvalCallback

Generative evaluation callback for diffusion models.

Module Contents

class MolecularDiffusion.core.lightning_callbacks.generative_eval_callback.GenerativeEvalCallback(n_samples: int = 100, batch_size: int = 100, metric: str = 'Validity Relax and connected', output_dir: str = 'generated_molecules', use_posebuster: bool = False, posebuster_timeout: int = 60, monitor_metric: Any = None)

Bases: pytorch_lightning.callbacks.Callback

Generative evaluation callback for diffusion models.

Generates molecules during validation and computes validity metrics. This callback runs the generative analysis from eval.py.

Parameters:
  • n_samples (int) – Number of molecules to generate

  • batch_size (int) – Batch size for generation

  • metric (str) – Primary metric to monitor

  • output_dir (str) – Directory to save generated molecules

  • use_posebuster (bool) – Whether to use posebuster for validation

  • posebuster_timeout (int) – Timeout for posebuster validation

on_validation_epoch_end(trainer: pytorch_lightning.Trainer, pl_module: pytorch_lightning.LightningModule)

Run generative evaluation at the end of validation epoch.

Only runs if this is a validation epoch (respects check_val_every_n_epoch).

batch_size = 100
metric = 'Validity Relax and connected'
monitor_metric = None
n_samples = 100
output_dir = 'generated_molecules'
posebuster_timeout = 60
use_posebuster = False
MolecularDiffusion.core.lightning_callbacks.generative_eval_callback.logger