torchsig.utils.data_loading.WorkerSeedingDataLoader

class torchsig.utils.data_loading.WorkerSeedingDataLoader(dataset, **kwargs)[source]

Bases: DataLoader, Seedable

A Custom DaaLoader for torchsig that seeds workers differently on worker init based on a shared initial seed;

Methods

add_parent

Add parent Seedable object and set up RNGs accordingly

check_worker_number_rationality

get_distribution

get_second_seed

Gets second seed, usually used to seed both torch and numpy generators with slightly different seeds

init_worker_seed

seed

Seed number generators with given seed.

setup_rngs

Initialize torch and numpy number generators, and update its children.

update_from_parent

Update numpy and torch number generators with parent seed

Attributes

multiprocessing_context

dataset

batch_size

num_workers

pin_memory

drop_last

timeout

sampler

pin_memory_device

prefetch_factor

__init__(dataset, **kwargs)[source]
__repr__() str

Return repr(self).

add_parent(parent) None

Add parent Seedable object and set up RNGs accordingly

get_second_seed(seed: int) int

Gets second seed, usually used to seed both torch and numpy generators with slightly different seeds

Parameters:

seed (int) – Seed to use.

Returns:

New seed.

Return type:

int

seed(seed: int) None

Seed number generators with given seed.

Parameters:

seed (int) – Seed to use.

setup_rngs() None

Initialize torch and numpy number generators, and update its children.

update_from_parent() None

Update numpy and torch number generators with parent seed