dghdgkl's picture
Create review
2c4bafe verified
import torch
class GaussianDiffusion(nn.Module):
def __init__(self, model, timesteps=1000, beta_start=1e-4, beta_end=0.02):
super(GaussianDiffusion, self).__init__()
self.model = model
self.timesteps = timesteps
# Create a schedule of betas (noise variance at each timestep)
self.betas = torch.linspace(beta_start, beta_end, timesteps)
self.alphas = 1 - self.betas
self.alpha_cumprod = torch.cumprod(self.alphas, dim=0)
def add