RetinaNetBackbone
类keras_hub.models.RetinaNetBackbone(
image_encoder,
min_level,
max_level,
use_p5,
use_fpn_batch_norm=False,
image_shape=(None, None, 3),
data_format=None,
dtype=None,
**kwargs
)
RetinaNet 骨干网络。
结合 CNN 骨干网络(例如 ResNet、MobileNet)和特征金字塔网络(FPN)来提取多尺度特征用于目标检测。
参数
keras.Model
. 用于从输入图像中提取特征的骨干模型(例如 ResNet50、MobileNetV2)。它应该具有金字塔输出(即,一个字典,将 "P2"
、"P3"
等级别名称映射到它们对应的特征张量)。True
,则骨干网络最后一层的输出(通常是 FPN 中的 'P5'
)用作输入,通过额外的卷积层创建更高级别的特征图(例如 'P6'
、'P7'
)。如果为 False
,则直接使用骨干网络中的原始 'P5'
特征图作为输入来创建更粗略的级别,绕过特征金字塔内 'P5'
的任何进一步处理。默认为 False
。False
。None
。引发
min_level
大于 max_level
。backbone_max_level
小于 5 且 max_level
大于或等于 5。from_preset
方法RetinaNetBackbone.from_preset(preset, load_weights=True, **kwargs)
从模型预设实例化一个 keras_hub.models.Backbone
。
预设是一个包含配置、权重和其他文件资源的目录,用于保存和加载预训练模型。preset
可以作为以下之一传递:
'bert_base_en'
'kaggle://user/bert/keras/bert_base_en'
'hf://user/bert_base_en'
'./bert_base_en'
此构造函数可以通过两种方式调用。可以从基类调用,例如 keras_hub.models.Backbone.from_preset()
,也可以从模型类调用,例如 keras_hub.models.GemmaBackbone.from_preset()
。如果从基类调用,则返回对象的子类将从预设目录中的配置推断。
对于任何 Backbone
子类,您可以运行 cls.presets.keys()
来列出该类上所有可用的内置预设。
参数
示例
# Load a Gemma backbone with pre-trained weights.
model = keras_hub.models.Backbone.from_preset(
"gemma_2b_en",
)
# Load a Bert backbone with a pre-trained config and random weights.
model = keras_hub.models.Backbone.from_preset(
"bert_base_en",
load_weights=False,
)
预设 | 参数 | 描述 |
---|---|---|
retinanet_resnet50_fpn_v2_coco | 31.56M | RetinaNet 模型,带有 ResNet50 骨干网络,在 800x800 分辨率的 COCO 数据集上进行微调,FPN 特征从 P5 级别创建。 |
retinanet_resnet50_fpn_coco | 34.12M | RetinaNet 模型,带有 ResNet50 骨干网络,在 800x800 分辨率的 COCO 数据集上进行微调。 |