def optim_step(self):
    self.loss.backward()
    torch.nn.utils.clip_grad_norm(self.encoder.parameters(), 40.0)
    torch.nn.utils.clip_grad_norm(self.decoder.parameters(), 40.0)
    self.encoder_optimizer.step()
    self.decoder_optimizer.step()
    self.critic_optimizer.step()
def optim_step(self):
    self.loss.backward()
    torch.nn.utils.clip_grad_norm(self.encoder.parameters(), 40.0)
    torch.nn.utils.clip_grad_norm(self.decoder.parameters(), 40.0)
    self.encoder_optimizer.step()
    self.decoder_optimizer.step()
    self.critic_optimizer.step()