avalanche.benchmarks.split_validation_class_balanced
- avalanche.benchmarks.split_validation_class_balanced(validation_size: int | float, dataset: TaskAwareSupervisedClassificationDataset) Tuple[TaskAwareSupervisedClassificationDataset, TaskAwareSupervisedClassificationDataset] [source]
Class-balanced dataset split.
This splitting strategy splits dataset into train and validation data of size validation_size using a class-balanced split. Samples of each class are chosen randomly.
You can use this split strategy to split a benchmark with:
validation_size = 0.2 foo = lambda data: split_validation_class_balanced(validation_size, data) bm = benchmark_with_validation_stream(bm, split_strategy=foo)
- Parameters:
validation_size – The percentage of samples to allocate to the validation experience as a float between 0 and 1.
dataset – The dataset to split.
- Returns:
A tuple containing 2 elements: the new training and validation datasets.