code: def load_dataset(
      self,
      path: str,
      data_keys: Optional[Dict[str, str]] = None,
      ref_keys: Optional[List[str]] = None,
      only_keep_necessary_columns: bool = False,
      load_smallest_split: bool = False,
      num_samples: Optional[int] = None,
      shuffle: bool = False,
      **load_dataset_kwargs,
  ) -> Union["DatasetDict", "Dataset"]:
      dataset = super().load_dataset(
          path,
          data_keys=data_keys,
          ref_keys=ref_keys,
          only_keep_necessary_columns=only_keep_necessary_columns,
          load_smallest_split=load_smallest_split,
          num_samples=num_samples,
          shuffle=shuffle,
          **load_dataset_kwargs,
      )
      # TODO: do we want to do that here?
      # eval_dataset = eval_dataset.align_labels_with_mapping(self.config.label2id, self.ref_keys[0])
      return dataset
  
file_path: optimum/optimum/utils/preprocessing/text_classification.py
imports: import copy
  import logging
  from typing import TYPE_CHECKING, Any, Dict, List, Optional, Tuple, Union
  from transformers import PreTrainedTokenizerBase
  from .base import TaskProcessor
label_desc: Use image node_id 5 for calling the TextClassificationProcessing obj's underlying member method code with example usage: obj.load_dataset(path, data_keys, ref_keys, only_keep_necessary_columns, load_smallest_split, num_samples, shuffle) and returns: dataset