MCPcopy Create free account
hub / github.com/MotrixLab/FineMoGen / __init__

Method __init__

mogen/models/utils/gaussian_diffusion.py:1249–1263  ·  view source on GitHub ↗
(self, use_timesteps, **kwargs)

Source from the content-addressed store, hash-verified

1247 """
1248
1249 def __init__(self, use_timesteps, **kwargs):
1250 self.use_timesteps = set(use_timesteps)
1251 self.timestep_map = []
1252 self.original_num_steps = len(kwargs["betas"])
1253
1254 base_diffusion = GaussianDiffusion(**kwargs) # pylint: disable=missing-kwoa
1255 last_alpha_cumprod = 1.0
1256 new_betas = []
1257 for i, alpha_cumprod in enumerate(base_diffusion.alphas_cumprod):
1258 if i in self.use_timesteps:
1259 new_betas.append(1 - alpha_cumprod / last_alpha_cumprod)
1260 last_alpha_cumprod = alpha_cumprod
1261 self.timestep_map.append(i)
1262 kwargs["betas"] = np.array(new_betas)
1263 super().__init__(**kwargs)
1264
1265 def p_mean_variance(self, model, *args, **kwargs):
1266 return super().p_mean_variance(self._wrap_model(model), *args,

Callers

nothing calls this directly

Calls 2

GaussianDiffusionClass · 0.85
__init__Method · 0.45

Tested by

no test coverage detected