UnlabeledDataModule

class lightning_pose.data.datamodules.UnlabeledDataModule[source]

Bases: BaseDataModule

Data module that contains labeled and unlabled data loaders.

Methods Summary

setup_unlabeled()

Sets up the unlabeled data loader.

train_dataloader()

An iterable or collection of iterables specifying training samples.

Methods Documentation

setup_unlabeled() None[source]

Sets up the unlabeled data loader.

train_dataloader() CombinedLoader[source]

An iterable or collection of iterables specifying training samples.

For more information about multiple dataloaders, see this section.

The dataloader you return will not be reloaded unless you set :paramref:`~lightning.pytorch.trainer.trainer.Trainer.reload_dataloaders_every_n_epochs` to a positive integer.

For data processing use the following pattern:

  • download in prepare_data()

  • process and split in setup()

However, the above are only necessary for distributed processing.

Warning

do not assign state in prepare_data

  • fit()

  • prepare_data()

  • setup()

Note

Lightning tries to add the correct sampler for distributed and arbitrary hardware. There is no need to set it yourself.

__init__(dataset: Dataset, video_paths_list: list[str] | str, dali_config: dict | DictConfig, view_names: list[str] | None = None, train_batch_size: int = 16, val_batch_size: int = 16, test_batch_size: int = 1, num_workers: int | None = None, train_probability: float = 0.8, val_probability: float | None = None, test_probability: float | None = None, train_frames: float | None = None, torch_seed: int = 42, imgaug: Literal['default', 'dlc', 'dlc-top-down'] = 'default') None[source]

Data module that contains labeled and unlabeled data loaders.

Parameters:
  • dataset – pytorch Dataset for labeled data

  • video_paths_list – absolute paths of videos (“unlabeled” data)

  • view_names – if fitting a non-mirrored multiview model, pass view names in order to correctly organize the video paths

  • dali_config – see dali entry of default config file for keys

  • train_batch_size – number of samples of training batches

  • val_batch_size – number of samples in validation batches

  • test_batch_size – number of samples in test batches

  • num_workers – number of threads used for prefetching data

  • train_probability – fraction of full dataset used for training

  • val_probability – fraction of full dataset used for validation

  • test_probability – fraction of full dataset used for testing

  • train_frames – if integer, select this number of training frames from the initially selected train frames (defined by train_probability); if float, must be between 0 and 1 (exclusive) and defines the fraction of the initially selected train frames

  • torch_seed – control data splits

  • torch_seed – control randomness of labeled data loading

  • imgaug – type of image augmentation to apply to unlabeled frames

__new__(**kwargs)