class_docstr: Block Decoder for readability,
  straight from the official TensorFlow repository.
class_docstr_tok: ["Block","Decoder","for","readability",",","straight","from","the","official","TensorFlow","repository","."]
docstr: Get a block through a string notation of arguments.
  
  Args:
      block_string (str): A string notation of arguments.
                          Examples: 'r1_k3_s11_e1_i32_o16_se0.25_noskip'.
  
  Returns:
      BlockArgs: The namedtuple defined at the top of this file.
docstr_tok: ["Get","a","block","through","a","string","notation","of","arguments",".","Args",":","block_string","(","str",")",":","A","string","notation","of","arguments",".","Examples",":","'r1_k3_s11_e1_i32_o16_se0.25_noskip","'",".","Returns",":","BlockArgs",":","The","namedtuple","defined","at","the","top","of","this","file","."]
code: def _decode_block_string(block_string):
      """Get a block through a string notation of arguments.
  
      Args:
          block_string (str): A string notation of arguments.
                              Examples: 'r1_k3_s11_e1_i32_o16_se0.25_noskip'.
  
      Returns:
          BlockArgs: The namedtuple defined at the top of this file.
      """
      assert isinstance(block_string, str)
  
      ops = block_string.split("_")
      options = {}
      for op in ops:
          splits = re.split(r"(\d.*)", op)
          if len(splits) >= 2:
              key, value = splits[:2]
              options[key] = value
  
      # Check stride
      assert ("s" in options and len(options["s"]) == 1) or (
          len(options["s"]) == 2 and options["s"][0] == options["s"][1]
      )
  
      return BlockArgs(
          num_repeat=int(options["r"]),
          kernel_size=int(options["k"]),
          stride=[int(options["s"][0])],
          expand_ratio=int(options["e"]),
          input_filters=int(options["i"]),
          output_filters=int(options["o"]),
          se_ratio=float(options["se"]) if "se" in options else None,
          id_skip=("noskip" not in block_string),
      )
  
imports: import re
  import math
  import collections
  from functools import partial
  import torch
  from torch import nn
  from torch.nn import functional
  from torch.utils import model_zoo
label_desc: Use image node_id 1 for calling the BlockDecoder obj's underlying member method code with example usage: obj._decode_block_string(block_string) and returns: BlockArgs