MobileNetV5ImageClassifier 类keras_hub.models.MobileNetV5ImageClassifier(
backbone,
num_classes,
preprocessor=None,
head_hidden_size=2048,
global_pool="avg",
drop_rate=0.0,
head_dtype=None,
**kwargs
)
一个端到端的用于图像分类的 MobileNetV5 模型。
该模型将一个分类头附加到一个 MobileNetV5Backbone 上。该头部由一个全局池化层、一个可选的卷积头、一个 dropout 层和一个最终的密集分类层组成。
该模型可以选择性地配置一个 preprocessor 层,在这种情况下,它将在 fit()、predict() 和 evaluate() 期间自动对图像输入应用预处理。
参数
keras_hub.models.MobileNetV5Backbone 实例。keras_hub.models.ImageClassifierPreprocessor 或 None。如果为 None,则此模型将不应用预处理。keras.mixed_precision.DTypePolicy。用于头部计算和权重的 dtype。示例
import keras
from keras_hub.models import MobileNetV5Backbone
from keras_hub.models import MobileNetV5ImageClassifier
# Randomly initialized task model with a custom config.
model_args = {
"stackwise_block_types": [["er"], ["uir", "uir"]],
"stackwise_num_blocks": [1, 2],
"stackwise_num_filters": [[24], [48, 48]],
"stackwise_strides": [[2], [2, 1]],
"stackwise_act_layers": [["relu"], ["relu", "relu"]],
"stackwise_exp_ratios": [[4.0], [6.0, 6.0]],
"stackwise_se_ratios": [[0.0], [0.0, 0.0]],
"stackwise_dw_kernel_sizes": [[0], [5, 5]],
"stackwise_dw_start_kernel_sizes": [[0], [0, 0]],
"stackwise_dw_end_kernel_sizes": [[0], [0, 0]],
"stackwise_exp_kernel_sizes": [[3], [0, 0]],
"stackwise_pw_kernel_sizes": [[1], [0, 0]],
"stackwise_num_heads": [[0], [0, 0]],
"stackwise_key_dims": [[0], [0, 0]],
"stackwise_value_dims": [[0], [0, 0]],
"stackwise_kv_strides": [[0], [0, 0]],
"stackwise_use_cpe": [[False], [False, False]],
"use_msfa": False,
}
backbone = MobileNetV5Backbone(**model_args)
model = MobileNetV5ImageClassifier(backbone, 1000)
images = keras.ops.ones((1, 224, 224, 3))
output = model.predict(images)
backbone 属性keras_hub.models.MobileNetV5ImageClassifier.backbone
一个具有核心架构的 keras_hub.models.Backbone 模型。
preprocessor 属性keras_hub.models.MobileNetV5ImageClassifier.preprocessor
用于预处理输入的 keras_hub.models.Preprocessor 层。