neuralop.training
.Trainer
- class neuralop.training.Trainer(*, model, n_epochs, wandb_log=True, device=None, amp_autocast=False, data_processor=None, callbacks=None, log_test_interval=1, log_output=False, use_distributed=False, verbose=False)[source]
Methods
evaluate
(loss_dict, data_loader[, log_prefix])Evaluates the model on a dictionary of losses
train
(train_loader, test_loaders, optimizer, ...)Trains the given model on the given datasets. params: train_loader: torch.utils.data.DataLoader training dataloader test_loaders: dict[torch.utils.data.DataLoader] testing dataloaders optimizer: torch.optim.Optimizer optimizer to use during training optimizer: torch.optim.lr_scheduler learning rate scheduler to use during training training_loss: training.losses function cost function to minimize eval_losses: dict[Loss] dict of losses to use in self.eval().
- train(train_loader, test_loaders, optimizer, scheduler, regularizer, training_loss=None, eval_losses=None)[source]
Trains the given model on the given datasets. params: train_loader: torch.utils.data.DataLoader
training dataloader
- test_loaders: dict[torch.utils.data.DataLoader]
testing dataloaders
- optimizer: torch.optim.Optimizer
optimizer to use during training
- optimizer: torch.optim.lr_scheduler
learning rate scheduler to use during training
- training_loss: training.losses function
cost function to minimize
- eval_losses: dict[Loss]
dict of losses to use in self.eval()
- evaluate(loss_dict, data_loader, log_prefix='')[source]
Evaluates the model on a dictionary of losses
- Parameters:
- loss_dictdict of functions
each function takes as input a tuple (prediction, ground_truth) and returns the corresponding loss
- data_loaderdata_loader to evaluate on
- log_prefixstr, default is ‘’
if not ‘’, used as prefix in output dictionary
- Returns:
- errorsdict
dict[f’{log_prefix}_{loss_name}] = loss for loss in loss_dict