code: def _parse_dropout_option(dropout_option):
      """Parses the string option to --trainer.dropout-schedule and
      returns a list of dropout schedules for different component name patterns.
      Calls _parse_dropout_string() function for each component name pattern
      in the option.
  
      Arguments:
          dropout_option: The string option passed to --trainer.dropout-schedule.
              See its help for details.
              See _self_test() for examples.
          num_archive_to_process: See _parse_dropout_string() for details.
  
      Returns a list of (component_name, dropout_schedule) tuples,
      where dropout_schedule is itself a list of
      (data_fraction, dropout_proportion) tuples sorted in reverse order of
      data_fraction.
      A data fraction of 0 corresponds to beginning of training
      and 1 corresponds to all data.
      """
      components = dropout_option.strip().split(" ")
      dropout_schedule = []
      for component in components:
          parts = component.split("=")
  
          if len(parts) == 2:
              component_name = parts[0]
              this_dropout_str = parts[1]
          elif len(parts) == 1:
              component_name = "*"
              this_dropout_str = parts[0]
          else:
              raise Exception(
                  "The dropout schedule must be specified in the "
                  "format 'pattern1=func1 patter2=func2' where "
                  "the pattern can be omitted for a global function "
                  "for all components.\n"
                  "Got {0} in {1}".format(component, dropout_option)
              )
  
          this_dropout_values = _parse_dropout_string(this_dropout_str)
          dropout_schedule.append((component_name, this_dropout_values))
  
      if _debug_dropout:
          logger.info(
              "Dropout schedules for component names is as follows:"
          )
          logger.info(
              "<component-name-pattern>: [(num_archives_processed), "
              "(dropout_proportion) ...]"
          )
          for name, schedule in dropout_schedule:
              logger.info("{0}: {1}".format(name, schedule))
  
      return dropout_schedule
  
file_path: espnet/egs2/siwis/tts1/steps/libs/nnet3/train/dropout_schedule.py
imports: import logging
label_desc: Use image node_id 1 for calling a global function with example usage: _parse_dropout_option(dropout_option) and returns: dropout_schedule