code: def load_dataset(self, split, epoch=1, combine=False, **kwargs):
      is_train_split = split.startswith("train")
      pre_tokenizer = self.build_tokenizer(self.args)
      bpe_tokenizer = self.build_bpe(self.args)
      self.datasets[
          split
      ] = SpeechToTextDatasetCreatorWithDomain.from_tsv(
          self.args.data,
          self.data_cfg,
          split,
          self.tgt_dict,
          pre_tokenizer,
          bpe_tokenizer,
          is_train_split=is_train_split,
          epoch=epoch,
          seed=self.args.seed,
          src_lang_map=self.src_lang_map,
          tgt_lang_map=self.tgt_lang_map,
          domain_map=self.domain_map,
          speaker_to_id=self.speaker_to_id,
      )
  
file_path: fairseq/examples/attention_head_selection/src/speech_to_text_head_selection.py
imports: import torch
  from fairseq.optim.amp_optimizer import AMPOptimizer
  from fairseq.tasks import register_task
  from fairseq.tasks.speech_to_text import SpeechToTextTask
  from .data.speech_to_text_dataset_with_domain import SpeechToTextDatasetCreatorWithDomain
  from .loss.attention_head_selection import HeadSelectionLoss
label_desc: Use image node_id 4 for calling the SpeechToTextHeadSelectionTask obj's underlying member method code with example usage: obj.load_dataset(split, epoch, combine) without return types