agedi.diffusion.sdes.ve

Classes

VE

Implements variance-exploding (VE) SDE.

Module Contents

class agedi.diffusion.sdes.ve.VE(sigma_min: float = 0.01, sigma_max: float = 1.0, noise_schedule: agedi.diffusion.sdes.noise_schedules.NoiseSchedule | Type[agedi.diffusion.sdes.noise_schedules.NoiseSchedule] | None = None)

Bases: agedi.diffusion.sdes.SDE

Implements variance-exploding (VE) SDE.

Parameters:
  • sigma_min (float) – The minimum value of the sigma parameter (noise schedule at t=0).

  • sigma_max (float) – The maximum value of the sigma parameter (noise schedule at t=1).

  • noise_schedule (NoiseSchedule instance or class, optional) – Noise schedule to use. Can be an already-instantiated NoiseSchedule (e.g. from a Hydra round-trip) or the class itself. When None (default), Linear is used with sigma_min and sigma_max.

Return type:

VE

sigma_min
sigma_max
get_hparams() Dict

Return hyperparameters for this VE SDE.

drift(x: torch.Tensor, t: torch.Tensor) torch.Tensor

Implement VE drift term.

Defines the drift term of the SDE: f(x, t).

Parameters:
  • x (torch.Tensor) – The positions of the atoms.

  • t (torch.Tensor) – The time at which to calculate the drift term.

Returns:

drift – The drift term of the SDE.

Return type:

torch.Tensor

diffusion(t: torch.Tensor) torch.Tensor

Implement VE diffusion term.

Defines the diffusion term of the SDE: g(t).

Parameters:

t (torch.Tensor) – The time at which to calculate the diffusion term.

Returns:

diffusion – The diffusion term of the SDE.

Return type:

torch.Tensor

mean(t: torch.Tensor) torch.Tensor

Implement VE mean term.

Calculates the mean of transition kernel at time t: mu(t).

Parameters:

t (torch.Tensor) – The time at which to calculate the mean.

Returns:

mean – The mean of the diffusion process.

Return type:

torch.Tensor

var(t: torch.Tensor) torch.Tensor

Implement VE variance term.

Calculates the variance of transition kernel at time t: sigma^2(t).

Parameters:

t (torch.Tensor) – The time at which to calculate the variance.

Returns:

var – The variance of the diffusion process.

Return type:

torch.Tensor

sigma(t: torch.Tensor) torch.Tensor

VE sigma function

Calculates the value of sigma at time t.

Parameters:

t (torch.Tensor) – The time at which to calculate sigma.

Returns:

sigma – The value of sigma at time t.

Return type:

torch.Tensor