in agents/diffusion.py [0:0]
def p_mean_variance(self, x, t, s, grad=True):
if grad:
x_recon = self.predict_start_from_noise(x, t=t, noise=self.model(x, t, s))
else:
x_recon = self.predict_start_from_noise(x, t=t, noise=self.model_frozen(x, t, s))
if self.clip_denoised:
x_recon.clamp_(-self.max_action, self.max_action)
else:
assert RuntimeError()
model_mean, posterior_variance, posterior_log_variance = self.q_posterior(x_start=x_recon, x_t=x, t=t)
return model_mean, posterior_variance, posterior_log_variance