torchsig.transforms.dataset_transforms.PatchShuffle¶
- class torchsig.transforms.dataset_transforms.PatchShuffle(patch_size=(3, 10), shuffle_ratio=(0.01, 0.05), **kwargs)[source]¶
Bases:
DatasetTransformRandomly shuffle multiple local regions of samples.
Transform is loosely based on “PatchShuffle Regularization”.
- patch_size¶
patch_size sets the size of each patch to shuffle * If int or float, patch_size is fixed at the value provided. * If list, patch_size is any element in the list. * If tuple, patch_size is in range of (tuple[0], tuple[1]).
- Type:
int, float, list, tuple
patch_size_distribution (Callable[[], int]): Random draw from patch_size distribution. shuffle_ratio (int, float, list, tuple):
shuffle_ratio sets the ratio of the patches to shuffle * If int or float, shuffle_ratio is fixed at the value provided. * If list, shuffle_ratio is any element in the list. * If tuple, shuffle_ratio is in range of (tuple[0], tuple[1]).
shuffle_ratio_distribution (Callable[[], float]): Random draw from shuffle_ratio distribution.
Methods
Add parent Seedable object and set up RNGs accordingly
get_distributionGets second seed, usually used to seed both torch and numpy generators with slightly different seeds
Seed number generators with given seed.
Initialize torch and numpy number generators, and update its children.
Updates bookkeeping to transforms in DatasetSignal's SignalMetadata and checks signal valididty.
Update numpy and torch number generators with parent seed
- __init__(patch_size=(3, 10), shuffle_ratio=(0.01, 0.05), **kwargs) None[source]¶
Transform initialization as Seedable.
- __call__(signal: DatasetSignal) DatasetSignal[source]¶
Performs transforms.
- Parameters:
signal (DatasetSignal) – DatasetSignal to be transformed.
- Raises:
NotImplementedError – Inherited classes must override this method.
- Returns:
Transformed DatasetSignal.
- Return type:
- __repr__() str¶
Transform string representation. Should be able to recreate class from this string.
- Returns:
Transform representation.
- Return type:
- get_second_seed(seed: int) int¶
Gets second seed, usually used to seed both torch and numpy generators with slightly different seeds
- update(signal: DatasetSignal) None¶
Updates bookkeeping to transforms in DatasetSignal’s SignalMetadata and checks signal valididty. Inherited classes should always call self.update() after performing transform operation (inside __call__).
- Parameters:
signal (DatasetSignal) – transformed DatasetSignal.