mobilenet_edgetpu can use group_size override, more consistency in arg wrap/sadface w/ extra group_size arg
parent
b9f020a509
commit
39e92f0c0d
|
@ -488,7 +488,8 @@ def _gen_mnasnet_small(variant, channel_multiplier=1.0, pretrained=False, **kwar
|
|||
|
||||
def _gen_mobilenet_v1(
|
||||
variant, channel_multiplier=1.0, depth_multiplier=1.0,
|
||||
group_size=None, fix_stem_head=False, head_conv=False, pretrained=False, **kwargs):
|
||||
group_size=None, fix_stem_head=False, head_conv=False, pretrained=False, **kwargs
|
||||
):
|
||||
"""
|
||||
Ref impl: https://github.com/tensorflow/models/blob/master/research/slim/nets/mobilenet/mobilenet_v2.py
|
||||
Paper: https://arxiv.org/abs/1801.04381
|
||||
|
@ -625,7 +626,8 @@ def _gen_spnasnet(variant, channel_multiplier=1.0, pretrained=False, **kwargs):
|
|||
|
||||
def _gen_efficientnet(
|
||||
variant, channel_multiplier=1.0, depth_multiplier=1.0, channel_divisor=8,
|
||||
group_size=None, pretrained=False, **kwargs):
|
||||
group_size=None, pretrained=False, **kwargs
|
||||
):
|
||||
"""Creates an EfficientNet model.
|
||||
|
||||
Ref impl: https://github.com/tensorflow/tpu/blob/master/models/official/efficientnet/efficientnet_model.py
|
||||
|
@ -673,7 +675,8 @@ def _gen_efficientnet(
|
|||
|
||||
|
||||
def _gen_efficientnet_edge(
|
||||
variant, channel_multiplier=1.0, depth_multiplier=1.0, group_size=None, pretrained=False, **kwargs):
|
||||
variant, channel_multiplier=1.0, depth_multiplier=1.0, group_size=None, pretrained=False, **kwargs
|
||||
):
|
||||
""" Creates an EfficientNet-EdgeTPU model
|
||||
|
||||
Ref impl: https://github.com/tensorflow/tpu/tree/master/models/official/efficientnet/edgetpu
|
||||
|
@ -704,7 +707,8 @@ def _gen_efficientnet_edge(
|
|||
|
||||
|
||||
def _gen_efficientnet_condconv(
|
||||
variant, channel_multiplier=1.0, depth_multiplier=1.0, experts_multiplier=1, pretrained=False, **kwargs):
|
||||
variant, channel_multiplier=1.0, depth_multiplier=1.0, experts_multiplier=1, pretrained=False, **kwargs
|
||||
):
|
||||
"""Creates an EfficientNet-CondConv model.
|
||||
|
||||
Ref impl: https://github.com/tensorflow/tpu/tree/master/models/official/efficientnet/condconv
|
||||
|
@ -776,7 +780,8 @@ def _gen_efficientnet_lite(variant, channel_multiplier=1.0, depth_multiplier=1.0
|
|||
|
||||
|
||||
def _gen_efficientnetv2_base(
|
||||
variant, channel_multiplier=1.0, depth_multiplier=1.0, group_size=None, pretrained=False, **kwargs):
|
||||
variant, channel_multiplier=1.0, depth_multiplier=1.0, group_size=None, pretrained=False, **kwargs
|
||||
):
|
||||
""" Creates an EfficientNet-V2 base model
|
||||
|
||||
Ref impl: https://github.com/google/automl/tree/master/efficientnetv2
|
||||
|
@ -805,7 +810,8 @@ def _gen_efficientnetv2_base(
|
|||
|
||||
|
||||
def _gen_efficientnetv2_s(
|
||||
variant, channel_multiplier=1.0, depth_multiplier=1.0, group_size=None, rw=False, pretrained=False, **kwargs):
|
||||
variant, channel_multiplier=1.0, depth_multiplier=1.0, group_size=None, rw=False, pretrained=False, **kwargs
|
||||
):
|
||||
""" Creates an EfficientNet-V2 Small model
|
||||
|
||||
Ref impl: https://github.com/google/automl/tree/master/efficientnetv2
|
||||
|
@ -844,7 +850,8 @@ def _gen_efficientnetv2_s(
|
|||
|
||||
|
||||
def _gen_efficientnetv2_m(
|
||||
variant, channel_multiplier=1.0, depth_multiplier=1.0, group_size=None, pretrained=False, **kwargs):
|
||||
variant, channel_multiplier=1.0, depth_multiplier=1.0, group_size=None, pretrained=False, **kwargs
|
||||
):
|
||||
""" Creates an EfficientNet-V2 Medium model
|
||||
|
||||
Ref impl: https://github.com/google/automl/tree/master/efficientnetv2
|
||||
|
@ -875,7 +882,8 @@ def _gen_efficientnetv2_m(
|
|||
|
||||
|
||||
def _gen_efficientnetv2_l(
|
||||
variant, channel_multiplier=1.0, depth_multiplier=1.0, group_size=None, pretrained=False, **kwargs):
|
||||
variant, channel_multiplier=1.0, depth_multiplier=1.0, group_size=None, pretrained=False, **kwargs
|
||||
):
|
||||
""" Creates an EfficientNet-V2 Large model
|
||||
|
||||
Ref impl: https://github.com/google/automl/tree/master/efficientnetv2
|
||||
|
@ -906,7 +914,8 @@ def _gen_efficientnetv2_l(
|
|||
|
||||
|
||||
def _gen_efficientnetv2_xl(
|
||||
variant, channel_multiplier=1.0, depth_multiplier=1.0, group_size=None, pretrained=False, **kwargs):
|
||||
variant, channel_multiplier=1.0, depth_multiplier=1.0, group_size=None, pretrained=False, **kwargs
|
||||
):
|
||||
""" Creates an EfficientNet-V2 Xtra-Large model
|
||||
|
||||
Ref impl: https://github.com/google/automl/tree/master/efficientnetv2
|
||||
|
@ -938,7 +947,8 @@ def _gen_efficientnetv2_xl(
|
|||
|
||||
def _gen_efficientnet_x(
|
||||
variant, channel_multiplier=1.0, depth_multiplier=1.0, channel_divisor=8,
|
||||
group_size=None, version=1, pretrained=False, **kwargs):
|
||||
group_size=None, version=1, pretrained=False, **kwargs
|
||||
):
|
||||
"""Creates an EfficientNet model.
|
||||
|
||||
Ref impl: https://github.com/tensorflow/tpu/blob/master/models/official/efficientnet/efficientnet_model.py
|
||||
|
@ -1084,9 +1094,7 @@ def _gen_mixnet_m(variant, channel_multiplier=1.0, depth_multiplier=1.0, pretrai
|
|||
return model
|
||||
|
||||
|
||||
def _gen_tinynet(
|
||||
variant, model_width=1.0, depth_multiplier=1.0, pretrained=False, **kwargs
|
||||
):
|
||||
def _gen_tinynet(variant, model_width=1.0, depth_multiplier=1.0, pretrained=False, **kwargs):
|
||||
"""Creates a TinyNet model.
|
||||
"""
|
||||
arch_def = [
|
||||
|
@ -1109,8 +1117,7 @@ def _gen_tinynet(
|
|||
return model
|
||||
|
||||
|
||||
def _gen_mobilenet_edgetpu(
|
||||
variant, channel_multiplier=1.0, depth_multiplier=1.0, group_size=None, pretrained=False, **kwargs):
|
||||
def _gen_mobilenet_edgetpu(variant, channel_multiplier=1.0, depth_multiplier=1.0, pretrained=False, **kwargs):
|
||||
"""
|
||||
Based on definitions in: https://github.com/tensorflow/models/tree/d2427a562f401c9af118e47af2f030a0a5599f55/official/projects/edgetpu/vision
|
||||
"""
|
||||
|
@ -1186,7 +1193,7 @@ def _gen_mobilenet_edgetpu(
|
|||
]
|
||||
|
||||
model_kwargs = dict(
|
||||
block_args=decode_arch_def(arch_def, depth_multiplier, group_size=group_size),
|
||||
block_args=decode_arch_def(arch_def, depth_multiplier),
|
||||
num_features=num_features,
|
||||
stem_size=stem_size,
|
||||
stem_kernel_size=stem_kernel_size,
|
||||
|
@ -1199,8 +1206,7 @@ def _gen_mobilenet_edgetpu(
|
|||
return model
|
||||
|
||||
|
||||
def _gen_test_efficientnet(
|
||||
variant, channel_multiplier=1.0, depth_multiplier=1.0, pretrained=False, **kwargs):
|
||||
def _gen_test_efficientnet(variant, channel_multiplier=1.0, depth_multiplier=1.0, pretrained=False, **kwargs):
|
||||
""" Minimal test EfficientNet generator.
|
||||
"""
|
||||
arch_def = [
|
||||
|
|
|
@ -412,7 +412,9 @@ def _create_mnv3(variant: str, pretrained: bool = False, **kwargs) -> MobileNetV
|
|||
return model
|
||||
|
||||
|
||||
def _gen_mobilenet_v3_rw(variant: str, channel_multiplier: float = 1.0, pretrained: bool = False, **kwargs) -> MobileNetV3:
|
||||
def _gen_mobilenet_v3_rw(
|
||||
variant: str, channel_multiplier: float = 1.0, pretrained: bool = False, **kwargs
|
||||
) -> MobileNetV3:
|
||||
"""Creates a MobileNet-V3 model.
|
||||
|
||||
Ref impl: ?
|
||||
|
|
Loading…
Reference in New Issue