TeaPearce/Conditional_Diffusion_MNIST

where is "Puncond"?

Closed this issue · 2 comments

Where is the “Puncond”in the original paper, please!

This author writes this code clearly what I have seen. I think the Puncond is here in training

context_mask = torch.bernoulli(torch.zeros_like(c)+self.drop_prob).to(self.device)

Sampling is here

context_mask = torch.zeros_like(c_i).to(device)
# double the batch
c_i = c_i.repeat(2)
context_mask = context_mask.repeat(2)
context_mask[n_sample:] = 1. # makes second half of batch context free

Indeed, self.drop_prob is the probability of unconditional training.