maite.protocols.image_classification.DataLoader#

class maite.protocols.image_classification.DataLoader(*args, **kwargs)[source]#

A dataloader protocol for the image classification ML subproblem providing batch-level data access.

Implementers must provide an iterable object (returning an iterator via the __iter__ method) that yields tuples containing batches of data. These tuples contain types Sequence[ArrayLike] (elements of shape (C, H, W)), Sequence[ArrayLike] (elements shape (Cl, )), and Sequence[DatumMetadataType], which correspond to model input batch, model target type batch, and a datum metadata batch.

Note: Unlike Dataset, this protocol does not require indexing support, only iterating.

Methods

__iter__ -> Iterator[tuple[Sequence[ArrayLike], Sequence[ArrayLike], Sequence[DatumMetadataType]]]

Return an iterator over batches of data, where each batch contains a tuple of of model input batch (as Sequence[ArrayLike]), model target batch (as Sequence[ArrayLike]), and batched datum-level metadata (as Sequence[DatumMetadataType]), respectively.