code: def initialise_dataset_loader(
      self, data_param=None, task_param=None, data_partitioner=None
  ):
      self.data_param = data_param
      self.multioutput_param = task_param
  
      # initialise input image readers
      if self.is_training:
          reader_names = ("image", "label", "weight", "sampler")
      elif self.is_inference:
          # in the inference process use `image` input only
          reader_names = ("image",)
      elif self.is_evaluation:
          reader_names = ("image", "label", "inferred")
      else:
          tf.logging.fatal(
              "Action `%s` not supported. Expected one of %s",
              self.action,
              self.SUPPORTED_PHASES,
          )
          raise ValueError
      try:
          reader_phase = self.action_param.dataset_to_infer
      except AttributeError:
          reader_phase = None
      file_lists = data_partitioner.get_file_lists_by(
          phase=reader_phase, action=self.action
      )
      self.readers = [
          ImageReader(reader_names).initialise(
              data_param, task_param, file_list
          )
          for file_list in file_lists
      ]
  
imports: from __future__ import absolute_import, print_function
  import tensorflow
  from niftynet.application.base_application import BaseApplication
  from niftynet.engine.application_factory import ApplicationNetFactory, InitializerFactory, OptimiserFactory
  from niftynet.io.image_reader import ImageReader
  from niftynet.engine.sampler_grid_v2 import GridSampler
  from niftynet.engine.sampler_resize_v2 import ResizeSampler
  from niftynet.engine.sampler_uniform_v2 import UniformSampler
  from niftynet.engine.sampler_weighted_v2 import WeightedSampler
  from niftynet.engine.sampler_balanced_v2 import BalancedSampler
  from niftynet.engine.windows_aggregator_grid import GridSamplesAggregator
  from niftynet.engine.windows_aggregator_resize import ResizeSamplesAggregator
  from niftynet.engine.windows_aggregator_identity import WindowAsImageAggregator
  from niftynet.layer.loss_segmentation import LossFunction
  from niftynet.layer.post_processing import PostProcessingLayer
  from niftynet.engine.application_variables import CONSOLE, TF_SUMMARIES, NETWORK_OUTPUT
label_desc: Use image node_id 2 for calling the MultiOutputApplication obj's underlying member method code with example usage: obj.initialise_dataset_loader(data_param, task_param, data_partitioner) without return types