luz.learner module

class Learner(**hparams)

Bases: luz.predictors.BaseLearner

backward(loss)

Backpropagate loss.

Parameters

loss (Tensor) – Loss tensor.

Return type

None

callbacks()
Return type

Union[Callback, Iterable[Callback]]

evaluate(dataset, device='cpu')

Test model.

Parameters
  • model – Model to be tested.

  • dataset (Dataset) – Test data.

  • device (Union[str, device, None]) – Device to use for testing, by default “cpu”.

Return type

float

fit(model, train_loader, criterion, optimizer, max_epochs=1, val_every=1, early_stopping=False, patience=5, val_loader=None, loggers=None, callbacks=None, device='cpu')

Train model.

Parameters
  • train_dataset – Training data.

  • val_dataset – Validation data, by default None.

  • device (Union[str, device, None]) – Device to use for training, by default “cpu”.

Return type

None

get_target(batch)

Get target from batched data.

Parameters

batch (Data) – Batched data.

Returns

Target tensor.

Return type

Optional[torch.Tensor]

input_transform(dataset)
learn(train_dataset, val_dataset=None, device='cpu')

Learn a model based on a given dataset.

Parameters
  • train_dataset (Dataset) – Training dataset used to learn a model.

  • val_dataset (Optional[Dataset]) – Validation dataset, by default None.

  • device (Union[str, device, None]) – Device to use for learning, by default “cpu”.

Returns

Learned model.

Return type

luz.Model

load_state_dict(state_dict)
loader(dataset)
Return type

DataLoader

loggers()
Return type

Union[Logger, Iterable[Logger]]

metrics()
optimizer_step(optimizer)

Step training optimizer.

Parameters

optimizer (Optimizer) – Training optimizer.

Return type

None

output_transform(dataset)
predict(model, loader, device)
run_epoch(model, loader, device, callbacks, criterion, state, optimizer=None)
Return type

float

run_test_batch(model, data, target, criterion)

Run model on a single batch during testing.

Parameters
  • dataset – Batch of data.

  • target (Tensor) – Target tensor.

  • criterion (Callable[[Tensor, Tensor], Tensor]) – Model criterion.

Return type

tuple[Tensor, Tensor]

Returns

  • torch.Tensor – Model output.

  • torch.Tensor – Batch loss.

run_train_batch(model, data, target, criterion, optimizer)

Run model on a single batch during training.

Parameters
  • dataset – Batch of data.

  • target (Tensor) – Target tensor.

  • criterion (Callable[[Tensor, Tensor], Tensor]) – Model criterion.

  • optimizer (Optimizer) – Training optimizer, by default None.

Return type

tuple[Tensor, Tensor]

Returns

  • torch.Tensor – Model output.

  • torch.Tensor – Batch loss.

run_validate_batch(model, data, target, criterion)

Run model on a single batch during validation.

Parameters
  • dataset – Batch of data.

  • target (Tensor) – Target tensor.

  • criterion (Callable[[Tensor, Tensor], Tensor]) – Model criterion.

Return type

tuple[Tensor, Tensor]

Returns

  • torch.Tensor – Model output.

  • torch.Tensor – Batch loss.

state_dict()
test_callbacks()
Return type

Union[Callback, Iterable[Callback]]

test_loader(dataset)
Return type

DataLoader

test_loggers()
Return type

Union[Logger, Iterable[Logger]]

train_callbacks()
Return type

Union[Callback, Iterable[Callback]]

train_loader(dataset)
Return type

DataLoader

train_loggers()
Return type

Union[Logger, Iterable[Logger]]

val_loader(dataset)
Return type

DataLoader