コード例 #1
0
            optimizer.zero_grad()
            loss.backward()
            optimizer.step()

            m.track_loss(loss)

        for validation_batch in validation_loader:
            in_features, t_slf = validation_batch
            in_features = in_features.to(run.device)
            t_slf = t_slf.to(run.device)
            preds, mu, logvar = network(in_features)

            mse_valid = mse_loss(t_slf, preds)
            valid_loss = vae_loss(mse_valid, mu, logvar)
            m.track_validation_loss(valid_loss)
        m.end_epoch()

        for param_group in optimizer.param_groups:
            print(param_group['lr'])
        print('epoch: {}, loss: {}, v_loss: {}, lr: {}'.format(
            epoch, m.item_loss, m.validation_loss, lr))
        torch.save(
            {
                'epoch': epoch,
                'model_state_dict': network.state_dict(),
                'optimizer_state_dict': optimizer.state_dict(),
                'loss': m.epoch_loss,
                'lr': lr
            }, MODEL_PATH_VAE)