docstr: CatDogImageDataModule
  Args:
      dl_path: root directory where to download the data
      num_workers: number of CPU workers
      batch_size: number of sample in a batch
docstr_tok: ["CatDogImageDataModule","Args",":","dl_path",":","root","directory","where","to","download","the","data","num_workers",":","number","of","CPU","workers","batch_size",":","number","of","sample","in","a","batch"]
code: def __init__(
      self,
      dl_path: Union[str, Path] = "data",
      num_workers: int = 0,
      batch_size: int = 8,
  ):
      """CatDogImageDataModule
      Args:
          dl_path: root directory where to download the data
          num_workers: number of CPU workers
          batch_size: number of sample in a batch
      """
      super().__init__()
  
      self._dl_path = dl_path
      self._num_workers = num_workers
      self._batch_size = batch_size
  
imports: import logging
  from pathlib import Path
  from typing import Union
  import torch
  import torch.nn.functional
  from torch import nn, optim
  from torch.optim.lr_scheduler import MultiStepLR
  from torch.optim.optimizer import Optimizer
  from torch.utils.data import DataLoader
  from torchmetrics.classification import MulticlassAccuracy
  from torchvision import models
  from bigdl.nano.pytorch.vision.datasets import ImageFolder
  from bigdl.nano.pytorch.vision.transforms import transforms
  from torchvision.datasets.utils import download_and_extract_archive
  import pytorch_lightning
  from pl_examples import cli_lightning_logo
  from pytorch_lightning import LightningDataModule
  from pytorch_lightning.callbacks.finetuning import BaseFinetuning
  from pytorch_lightning.utilities import rank_zero_info
  from pytorch_lightning.utilities.cli import LightningCLI
label_desc: Use image node_id 1 to create a new CatDogImageDataModule object from inherited base classes: LightningDataModule with example: obj = CatDogImageDataModule(dl_path, num_workers, batch_size)