dist = torch.distributions.categorical.Categorical(logits=logits)
t_next = dist.sample()
- if seq_logproba is not None:
- all_t = torch.arange(t_next.size(0))
- seq_logproba += logits[all_t, t_next].sum(dim=-1)
+ all_n = torch.arange(t_next.size(0))
+ seq_logproba += logits[all_n, t_next].sum(dim=-1)
input[:, s] = ar_mask[:, s] * t_next + (1 - ar_mask[:, s]) * input[:, s]