DomainCIFAR100ViT#
- class capymoa.ocl.datasets.DomainCIFAR100ViT[source]#
Bases:
SplitCIFAR100ViTDomain incremental CIFAR-100 ViT variant with 20 classes per task.
This dataset has exactly 5 tasks. Each task contains one fine-grained class from each CIFAR-100 superclass (20 classes per task), while labels are remapped to the 20 superclass IDs.
Note that the groupings are subjective based on the original CIFAR-100’s coarse labels.
References:
Krizhevsky, A. (2009). Learning Multiple Layers of Features from Tiny Images.
- __init__(
- shuffle_data: bool = True,
- seed: int = 0,
- directory: Path = get_download_dir(),
- auto_download: bool = True,
- train_transform: Callable[[Any], Tensor] | None = None,
- test_transform: Callable[[Any], Tensor] | None = None,
Create the DomainCIFAR100ViT scenario.
- test_loaders(
- batch_size: int,
- **kwargs: Any,
Get the training streams for the scenario.
- Parameters:
batch_size – Collects vectors in batches of this size.
kwargs – Additional keyword arguments to pass to the DataLoader.
- Returns:
A data loader for each task.
- train_loaders(
- batch_size: int,
- shuffle: bool = False,
- **kwargs: Any,
Get the training streams for the scenario.
The order of the tasks is fixed and does not change between iterations. The datasets themselves are shuffled in
__init__()if shuffle_data is set to True. This is because the order of data is important in online learning since the learner can only see each example once.
- Parameters:
batch_size – Collects vectors in batches of this size.
kwargs – Additional keyword arguments to pass to the DataLoader.
- Returns:
A data loader for each task.
- classes = ['aquatic_mammals', 'fish', 'flowers', 'food_containers', 'fruit_and_vegetables', 'household_electrical_devices', 'household_furniture', 'insects', 'large_carnivores', 'large_man-made_outdoor_things', 'large_natural_outdoor_scenes', 'large_omnivores_and_herbivores', 'medium_mammals', 'non-insect_invertebrates', 'people', 'reptiles', 'small_mammals', 'trees', 'vehicles_1', 'vehicles_2']#
- default_task_count: int = 5#
The default number of tasks in the dataset.
- default_test_transform: Callable[[Any], Tensor] | None = None#
The default transform to apply to the dataset.
- default_train_transform: Callable[[Any], Tensor] | None = None#
The default transform to apply to the dataset.
- mean: Sequence[float] | None#
The mean of the features in the dataset used for normalization.
- num_classes: int = 20#
The number of classes in the dataset.
- shape: Sequence[int] = [768]#
The shape of each input example.
- std: Sequence[float] | None#
The standard deviation of the features in the dataset used for normalization.
- stream: Stream[LabeledInstance]#
Stream containing each task in sequence.
- task_mask: Tensor#
A mask for the output for each task of shape (num_tasks, num_classes)
- task_schedule: Sequence[Set[int]]#
A sequence of sets containing the classes for each task.
In online continual learning your learner may not have access to this attribute. It is provided for evaluation and debugging.