simet.dataset_loaders.dataset_loader¶
simet.dataset_loaders.dataset_loader ¶
DatasetLoader ¶
DatasetLoader(
real_provider,
synth_provider,
provider_transform=None,
feature_extractor=None,
downstream_transform=None,
)
Load and preprocess real vs. synthetic datasets, and compute features.
Provides a unified interface to
1) subsample providers consistently,
2) build DataLoaders with a given Transform, and
3) extract feature arrays for downstream evaluation (e.g., FID, Precision/Recall, ROC-AUC).
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
real_provider
|
Provider
|
Provider that yields the real dataset (e.g., images). Must implement
|
required |
synth_provider
|
Provider
|
Provider that yields the synthetic dataset, same interface as |
required |
provider_transform
|
Transform | None
|
Transform applied to both providers for feature extraction. If not provided,
defaults to :class: |
None
|
feature_extractor
|
FeatureExtractor | None
|
Feature extractor used to compute |
None
|
downstream_transform
|
Transform | None
|
Optional transform for downstream tasks (separate from feature extraction).
When given, the loader also builds |
None
|
Attributes:
| Name | Type | Description |
|---|---|---|
provider_transform |
Transform
|
The transform actually used for feature extraction (defaults to |
real_dataloader |
DataLoader[VisionDataset]
|
Dataloader for the real dataset with |
synth_dataloader |
DataLoader[VisionDataset]
|
Dataloader for the synthetic dataset with |
real_features |
ndarray
|
Feature matrix extracted from |
synth_features |
ndarray
|
Feature matrix extracted from |
real_downstream_dataloader |
DataLoader[VisionDataset]
|
Present only if |
synth_downstream_dataloader |
DataLoader[VisionDataset]
|
Present only if |
Notes
- Providers are first subsampled consistently via
SubsamplingService.subsample(...)usingprovider_transform, then converted intoDataLoaders. - Feature extraction is performed eagerly at construction time by
feature_extractor. - Private helpers (e.g.,
_to_dataloader,_compute_features) are internal and not part of the public API.
Initialize the DatasetLoader, see class documentation for details.
Source code in simet/dataset_loaders/dataset_loader.py
74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 | |