MCPcopy Create free account
hub / github.com/Project-MONAI/MONAI / from_string

Method from_string

monai/networks/nets/efficientnet.py:960–997  ·  view source on GitHub ↗

Get a BlockArgs object from a string notation of arguments. Args: block_string (str): A string notation of arguments. Examples: "r1_k3_s11_e1_i32_o16_se0.25". Returns: BlockArgs: namedtuple defined at the top of this

(block_string: str)

Source from the content-addressed store, hash-verified

958
959 @staticmethod
960 def from_string(block_string: str):
961 """
962 Get a BlockArgs object from a string notation of arguments.
963
964 Args:
965 block_string (str): A string notation of arguments.
966 Examples: "r1_k3_s11_e1_i32_o16_se0.25".
967
968 Returns:
969 BlockArgs: namedtuple defined at the top of this function.
970 """
971 ops = block_string.split("_")
972 options = {}
973 for op in ops:
974 splits = re.split(r"(\d.*)", op)
975 if len(splits) >= 2:
976 key, value = splits[:2]
977 options[key] = value
978
979 # check stride
980 stride_check = (
981 ("s" in options and len(options["s"]) == 1)
982 or (len(options["s"]) == 2 and options["s"][0] == options["s"][1])
983 or (len(options["s"]) == 3 and options["s"][0] == options["s"][1] and options["s"][0] == options["s"][2])
984 )
985 if not stride_check:
986 raise ValueError("invalid stride option received")
987
988 return BlockArgs(
989 num_repeat=int(options["r"]),
990 kernel_size=int(options["k"]),
991 stride=int(options["s"][0]),
992 expand_ratio=int(options["e"]),
993 input_filters=int(options["i"]),
994 output_filters=int(options["o"]),
995 id_skip=("noskip" not in block_string),
996 se_ratio=float(options["se"]) if "se" in options else None,
997 )
998
999 def to_string(self):
1000 """

Callers 2

__init__Method · 0.80

Calls 2

BlockArgsClass · 0.85
splitMethod · 0.80

Tested by 1