diffengine.models.utils.timesteps¶
Module Contents¶
Classes¶
Time Steps module. |
|
Later biased Time Steps module. |
|
Earlier biased Time Steps module. |
|
Range biased Time Steps module. |
|
Cubic Sampling Time Steps module. |
|
Wuerstchen Random Time Steps module. |
|
DDIM Time Steps module. |
- class diffengine.models.utils.timesteps.TimeSteps(*args, **kwargs)[source]¶
Bases:
torch.nn.ModuleTime Steps module.
- forward(scheduler, num_batches, device)[source]¶
Forward pass.
Generates time steps for the given batches.
Args:¶
scheduler (DDPMScheduler): Scheduler for training diffusion model. num_batches (int): Batch size. device (str): Device.
- Parameters:
scheduler (diffusers.DDPMScheduler) –
num_batches (int) –
device (str) –
- Return type:
torch.Tensor
- class diffengine.models.utils.timesteps.LaterTimeSteps(bias_multiplier=5.0, bias_portion=0.25)[source]¶
Bases:
torch.nn.ModuleLater biased Time Steps module.
Args:¶
bias_multiplier (float): Bias multiplier. Defaults to 10. bias_portion (float): Portion of later time steps to bias.
Defaults to 0.25.
- forward(scheduler, num_batches, device)[source]¶
Forward pass.
Generates time steps for the given batches.
Args:¶
scheduler (DDPMScheduler): Scheduler for training diffusion model. num_batches (int): Batch size. device (str): Device.
- Parameters:
scheduler (diffusers.DDPMScheduler) –
num_batches (int) –
device (str) –
- Return type:
torch.Tensor
- Parameters:
bias_multiplier (float) –
bias_portion (float) –
- class diffengine.models.utils.timesteps.EarlierTimeSteps(bias_multiplier=5.0, bias_portion=0.25)[source]¶
Bases:
torch.nn.ModuleEarlier biased Time Steps module.
Args:¶
bias_multiplier (float): Bias multiplier. Defaults to 10. bias_portion (float): Portion of earlier time steps to bias.
Defaults to 0.25.
- forward(scheduler, num_batches, device)[source]¶
Forward pass.
Generates time steps for the given batches.
Args:¶
scheduler (DDPMScheduler): Scheduler for training diffusion model. num_batches (int): Batch size. device (str): Device.
- Parameters:
scheduler (diffusers.DDPMScheduler) –
num_batches (int) –
device (str) –
- Return type:
torch.Tensor
- Parameters:
bias_multiplier (float) –
bias_portion (float) –
- class diffengine.models.utils.timesteps.RangeTimeSteps(bias_multiplier=5.0, bias_begin=0.25, bias_end=0.75)[source]¶
Bases:
torch.nn.ModuleRange biased Time Steps module.
Args:¶
bias_multiplier (float): Bias multiplier. Defaults to 10. bias_begin (float): Portion of begin time steps to bias.
Defaults to 0.25.
- bias_end (float): Portion of end time steps to bias.
Defaults to 0.75.
- forward(scheduler, num_batches, device)[source]¶
Forward pass.
Generates time steps for the given batches.
Args:¶
scheduler (DDPMScheduler): Scheduler for training diffusion model. num_batches (int): Batch size. device (str): Device.
- Parameters:
scheduler (diffusers.DDPMScheduler) –
num_batches (int) –
device (str) –
- Return type:
torch.Tensor
- Parameters:
bias_multiplier (float) –
bias_begin (float) –
bias_end (float) –
- class diffengine.models.utils.timesteps.CubicSamplingTimeSteps(*args, **kwargs)[source]¶
Bases:
torch.nn.ModuleCubic Sampling Time Steps module.
For more details about why cubic sampling is used, refer to section 3.4 of https://arxiv.org/abs/2302.08453
- forward(scheduler, num_batches, device)[source]¶
Forward pass.
Generates time steps for the given batches.
Args:¶
scheduler (DDPMScheduler): Scheduler for training diffusion model. num_batches (int): Batch size. device (str): Device.
- Parameters:
scheduler (diffusers.DDPMScheduler) –
num_batches (int) –
device (str) –
- Return type:
torch.Tensor
- class diffengine.models.utils.timesteps.WuerstchenRandomTimeSteps(*args, **kwargs)[source]¶
Bases:
torch.nn.ModuleWuerstchen Random Time Steps module.
- class diffengine.models.utils.timesteps.DDIMTimeSteps(num_ddim_timesteps=50)[source]¶
Bases:
torch.nn.ModuleDDIM Time Steps module.
Args:¶
num_ddim_timesteps (int): Number of DDIM timesteps. Defaults to 50.
- forward(scheduler, num_batches, device)[source]¶
Forward pass.
Generates time steps for the given batches.
Args:¶
scheduler (DDPMScheduler): Scheduler for training diffusion model. num_batches (int): Batch size. device (str): Device.
- Parameters:
scheduler (diffusers.DDPMScheduler) –
num_batches (int) –
device (str) –
- Return type:
torch.Tensor
- Parameters:
num_ddim_timesteps (int) –