class_docstr: This LightningDataModule implementation constructs a PyTorchVideo Kinetics dataset for both
  the train and val partitions. It defines each partition's augmentation and
  preprocessing transforms and configures the PyTorch DataLoaders.
docstr: Defines the train DataLoader that the PyTorch Lightning Trainer trains/tests with.
code: def train_dataloader(self):
      """
      Defines the train DataLoader that the PyTorch Lightning Trainer trains/tests with.
      """
      sampler = (
          DistributedSampler if self.trainer.use_ddp else RandomSampler
      )
      train_transform = self._make_transforms(mode="train")
      self.train_dataset = LimitDataset(
          pytorchvideo.data.Kinetics(
              data_path=os.path.join(self.args.data_path, "train.csv"),
              clip_sampler=pytorchvideo.data.make_clip_sampler(
                  "random", self.args.clip_duration
              ),
              video_path_prefix=self.args.video_path_prefix,
              transform=train_transform,
              video_sampler=sampler,
          )
      )
      return torch.utils.data.DataLoader(
          self.train_dataset,
          batch_size=self.args.batch_size,
          num_workers=self.args.workers,
      )
  
imports: import argparse
  import itertools
  import logging
  import os
  import pytorch_lightning
  import pytorchvideo.data
  import pytorchvideo.models.resnet
  import torch
  import torch.nn.functional
  from pytorch_lightning.callbacks import LearningRateMonitor
  from pytorchvideo.transforms import ApplyTransformToKey, Normalize, RandomShortSideScale, RemoveKey, ShortSideScale, UniformTemporalSubsample
  from slurm import copy_and_run_with_config
  from torch.utils.data import DistributedSampler, RandomSampler
  from torchaudio.transforms import MelSpectrogram, Resample
  from torchvision.transforms import CenterCrop, Compose, Lambda, RandomCrop, RandomHorizontalFlip
label_desc: Use image node_id 5 for calling the KineticsDataModule obj's underlying member method code with example usage: obj.train_dataloader() and returns: torch