EfficientNetV2Backbone
类keras_cv.models.EfficientNetV2Backbone(
include_rescaling,
width_coefficient,
depth_coefficient,
stackwise_kernel_sizes,
stackwise_num_repeats,
stackwise_input_filters,
stackwise_output_filters,
stackwise_expansion_ratios,
stackwise_squeeze_and_excite_ratios,
stackwise_strides,
stackwise_conv_types,
skip_connection_dropout=0.2,
depth_divisor=8,
min_depth=8,
activation="swish",
input_shape=(None, None, 3),
input_tensor=None,
**kwargs
)
实例化 EfficientNetV2 架构。
参考
参数
True
,输入将通过 Rescaling(1/255.0)
层。keras.layers.Input()
的输出),用作模型的图像输入。示例
# Construct an EfficientNetV2 from a preset:
efficientnet = keras_cv.models.EfficientNetV2Backbone.from_preset(
"efficientnetv2_s"
)
images = tf.ones((1, 256, 256, 3))
outputs = efficientnet.predict(images)
# Alternatively, you can also customize the EfficientNetV2 architecture:
model = EfficientNetV2Backbone(
stackwise_kernel_sizes=[3, 3, 3, 3, 3, 3],
stackwise_num_repeats=[2, 4, 4, 6, 9, 15],
stackwise_input_filters=[24, 24, 48, 64, 128, 160],
stackwise_output_filters=[24, 48, 64, 128, 160, 256],
stackwise_expansion_ratios=[1, 4, 4, 4, 6, 6],
stackwise_squeeze_and_excite_ratios=[0.0, 0.0, 0, 0.25, 0.25, 0.25],
stackwise_strides=[1, 2, 2, 2, 1, 2],
stackwise_conv_types=[
"fused",
"fused",
"fused",
"unfused",
"unfused",
"unfused",
],
width_coefficient=1.0,
depth_coefficient=1.0,
include_rescaling=False,
)
images = tf.ones((1, 256, 256, 3))
outputs = efficientnet.predict(images)
from_preset
方法EfficientNetV2Backbone.from_preset()
从预设配置和权重实例化 EfficientNetV2Backbone 模型。
参数
None
,它遵循预设是否有可用的预训练权重。示例
# Load architecture and weights from preset
model = keras_cv.models.EfficientNetV2Backbone.from_preset(
"efficientnetv2_s_imagenet",
)
# Load randomly initialized model from preset architecture with weights
model = keras_cv.models.EfficientNetV2Backbone.from_preset(
"efficientnetv2_s_imagenet",
load_weights=False,
预设名称 | 参数 | 描述 |
---|---|---|
efficientnetv2_s | 20.33M | 具有 6 个卷积块的 EfficientNet 架构。 |
efficientnetv2_m | 53.15M | 具有 7 个卷积块的 EfficientNet 架构。 |
efficientnetv2_l | 117.75M | 具有 7 个卷积块的 EfficientNet 架构,但比 efficientnetv2_m 中的过滤器更多。 |
efficientnetv2_b0 | 5.92M | 具有 6 个卷积块的 EfficientNet B 型架构。此 B 型模型具有 width_coefficient=1.0 和 depth_coefficient=1.0 。 |
efficientnetv2_b1 | 6.93M | 具有 6 个卷积块的 EfficientNet B 型架构。此 B 型模型具有 width_coefficient=1.0 和 depth_coefficient=1.1 。 |
efficientnetv2_b2 | 8.77M | 具有 6 个卷积块的 EfficientNet B 型架构。此 B 型模型具有 width_coefficient=1.1 和 depth_coefficient=1.2 。 |
efficientnetv2_b3 | 12.93M | 具有 7 个卷积块的 EfficientNet B 型架构。此 B 型模型具有 width_coefficient=1.2 和 depth_coefficient=1.4 。 |
efficientnetv2_s_imagenet | 20.33M | 具有 6 个卷积块的 EfficientNet 架构。权重初始化为预训练的 ImageNet 分类权重。发布的权重能够在 ImageNet 上获得 83.9% 的 top 1 准确率和 96.7% 的 top 5 准确率。 |
efficientnetv2_b0_imagenet | 5.92M | 具有 6 个卷积块的 EfficientNet B 型架构。此 B 型模型具有 width_coefficient=1.0 和 depth_coefficient=1.0 。权重初始化为预训练的 ImageNet 分类权重。发布的权重能够在 ImageNet 上获得 77.1% 的 top 1 准确率和 93.3% 的 top 5 准确率。 |
efficientnetv2_b1_imagenet | 6.93M | 具有 6 个卷积块的 EfficientNet B 型架构。此 B 型模型具有 width_coefficient=1.0 和 depth_coefficient=1.1 。权重初始化为预训练的 ImageNet 分类权重。发布的权重能够在 ImageNet 上获得 79.1% 的 top 1 准确率和 94.4% 的 top 5 准确率。 |
efficientnetv2_b2_imagenet | 8.77M | 具有 6 个卷积块的 EfficientNet B 型架构。此 B 型模型具有 width_coefficient=1.1 和 depth_coefficient=1.2 。权重初始化为预训练的 ImageNet 分类权重。发布的权重能够在 ImageNet 上获得 80.1% 的 top 1 准确率和 94.9% 的 top 5 准确率。 |
EfficientNetV2B0Backbone
类keras_cv.models.EfficientNetV2B0Backbone(
include_rescaling,
width_coefficient,
depth_coefficient,
stackwise_kernel_sizes,
stackwise_num_repeats,
stackwise_input_filters,
stackwise_output_filters,
stackwise_expansion_ratios,
stackwise_squeeze_and_excite_ratios,
stackwise_strides,
stackwise_conv_types,
skip_connection_dropout=0.2,
depth_divisor=8,
min_depth=8,
activation="swish",
input_shape=(None, None, 3),
input_tensor=None,
**kwargs
)
实例化 EfficientNetV2B0 架构。
参考
参数
True
,输入将通过 Rescaling(1/255.0)
层。layers.Input()
的输出),用作模型的图像输入。EfficientNetV2B1Backbone
类keras_cv.models.EfficientNetV2B1Backbone(
include_rescaling,
width_coefficient,
depth_coefficient,
stackwise_kernel_sizes,
stackwise_num_repeats,
stackwise_input_filters,
stackwise_output_filters,
stackwise_expansion_ratios,
stackwise_squeeze_and_excite_ratios,
stackwise_strides,
stackwise_conv_types,
skip_connection_dropout=0.2,
depth_divisor=8,
min_depth=8,
activation="swish",
input_shape=(None, None, 3),
input_tensor=None,
**kwargs
)
实例化 EfficientNetV2B1 架构。
参考
参数
True
,输入将通过 Rescaling(1/255.0)
层。layers.Input()
的输出),用作模型的图像输入。EfficientNetV2B2Backbone
类keras_cv.models.EfficientNetV2B2Backbone(
include_rescaling,
width_coefficient,
depth_coefficient,
stackwise_kernel_sizes,
stackwise_num_repeats,
stackwise_input_filters,
stackwise_output_filters,
stackwise_expansion_ratios,
stackwise_squeeze_and_excite_ratios,
stackwise_strides,
stackwise_conv_types,
skip_connection_dropout=0.2,
depth_divisor=8,
min_depth=8,
activation="swish",
input_shape=(None, None, 3),
input_tensor=None,
**kwargs
)
实例化 EfficientNetV2B2 架构。
参考
参数
True
,输入将通过 Rescaling(1/255.0)
层。layers.Input()
的输出),用作模型的图像输入。EfficientNetV2B3Backbone
类keras_cv.models.EfficientNetV2B3Backbone(
include_rescaling,
width_coefficient,
depth_coefficient,
stackwise_kernel_sizes,
stackwise_num_repeats,
stackwise_input_filters,
stackwise_output_filters,
stackwise_expansion_ratios,
stackwise_squeeze_and_excite_ratios,
stackwise_strides,
stackwise_conv_types,
skip_connection_dropout=0.2,
depth_divisor=8,
min_depth=8,
activation="swish",
input_shape=(None, None, 3),
input_tensor=None,
**kwargs
)
实例化 EfficientNetV2B3 架构。
参考
参数
True
,输入将通过 Rescaling(1/255.0)
层。layers.Input()
的输出),用作模型的图像输入。EfficientNetV2SBackbone
类keras_cv.models.EfficientNetV2SBackbone(
include_rescaling,
width_coefficient,
depth_coefficient,
stackwise_kernel_sizes,
stackwise_num_repeats,
stackwise_input_filters,
stackwise_output_filters,
stackwise_expansion_ratios,
stackwise_squeeze_and_excite_ratios,
stackwise_strides,
stackwise_conv_types,
skip_connection_dropout=0.2,
depth_divisor=8,
min_depth=8,
activation="swish",
input_shape=(None, None, 3),
input_tensor=None,
**kwargs
)
实例化 EfficientNetV2S 架构。
参考
参数
True
,输入将通过 Rescaling(1/255.0)
层。layers.Input()
的输出),用作模型的图像输入。EfficientNetV2MBackbone
类keras_cv.models.EfficientNetV2MBackbone(
include_rescaling,
width_coefficient,
depth_coefficient,
stackwise_kernel_sizes,
stackwise_num_repeats,
stackwise_input_filters,
stackwise_output_filters,
stackwise_expansion_ratios,
stackwise_squeeze_and_excite_ratios,
stackwise_strides,
stackwise_conv_types,
skip_connection_dropout=0.2,
depth_divisor=8,
min_depth=8,
activation="swish",
input_shape=(None, None, 3),
input_tensor=None,
**kwargs
)
实例化 EfficientNetV2M 架构。
参考
参数
True
,输入将通过 Rescaling(1/255.0)
层。layers.Input()
的输出),用作模型的图像输入。EfficientNetV2LBackbone
类keras_cv.models.EfficientNetV2LBackbone(
include_rescaling,
width_coefficient,
depth_coefficient,
stackwise_kernel_sizes,
stackwise_num_repeats,
stackwise_input_filters,
stackwise_output_filters,
stackwise_expansion_ratios,
stackwise_squeeze_and_excite_ratios,
stackwise_strides,
stackwise_conv_types,
skip_connection_dropout=0.2,
depth_divisor=8,
min_depth=8,
activation="swish",
input_shape=(None, None, 3),
input_tensor=None,
**kwargs
)
实例化 EfficientNetV2L 架构。
参考
参数
True
,输入将通过 Rescaling(1/255.0)
层。layers.Input()
的输出),用作模型的图像输入。