Transformers 文档

Backbone

Hugging Face's logo
加入 Hugging Face 社区

并获得增强的文档体验

开始使用

Backbone

backbone(骨干网络)是一个用于提取特征的模型,用于更高级别的计算机视觉任务,如目标检测和图像分类。Transformers 提供了一个 AutoBackbone 类,用于从预训练模型的权重初始化 Transformers 的 backbone,以及两个实用工具类:

  • BackboneMixin 允许从 Transformers 或 timm 初始化 backbone,并包含用于返回输出特征和索引的函数。
  • BackboneConfigMixin 用于设置 backbone 配置的输出特征和索引。

timm 模型通过 TimmBackboneTimmBackboneConfig 类加载。

以下模型支持 Backbones:

AutoBackbone

class transformers.AutoBackbone

< >

( *args **kwargs )

BackboneMixin

class transformers.utils.BackboneMixin

< >

( )

to_dict

< >

( )

将此实例序列化为 Python 字典。重写 `PretrainedConfig` 中的默认 `to_dict()` 方法,以包含 `out_features` 和 `out_indices` 属性。

BackboneConfigMixin

class transformers.utils.BackboneConfigMixin

< >

( )

一个 Mixin,用于支持处理 backbone 配置中的 `out_features` 和 `out_indices` 属性。

to_dict

< >

( )

将此实例序列化为 Python 字典。重写 `PretrainedConfig` 中的默认 `to_dict()` 方法,以包含 `out_features` 和 `out_indices` 属性。

TimmBackbone

class transformers.TimmBackbone

< >

( config **kwargs )

用于 timm 模型的包装类,可作为 backbones 使用。这使得 timm 模型可以与库中的其他模型互换使用,并保持相同的 API。

TimmBackboneConfig

class transformers.TimmBackboneConfig

< >

( backbone = None num_channels = 3 features_only = True use_pretrained_backbone = True out_indices = None freeze_batch_norm_2d = False **kwargs )

参数

  • backbone (str, optional) — 要加载的 timm checkpoint。
  • num_channels (int, optional, defaults to 3) — 输入通道的数量。
  • features_only (bool, optional, defaults to True) — 是否只输出特征,还是同时输出 logits。
  • use_pretrained_backbone (bool, optional, defaults to True) — 是否使用预训练的 backbone。
  • out_indices (list[int], optional) — 如果用作 backbone,则为要输出的特征索引列表。可以是 0、1、2 等(取决于模型有多少个阶段)。如果未设置,则默认为最后一个阶段。
  • freeze_batch_norm_2d (bool, optional, defaults to False) — 将所提供模块的所有 `BatchNorm2d` 和 `SyncBatchNorm` 层转换为 `FrozenBatchNorm2d`。

这是用于存储 timm backbone TimmBackbone 配置的配置类。

它用于根据指定的参数实例化一个 timm backbone 模型,从而定义模型。

配置对象继承自 PretrainedConfig,可用于控制模型输出。有关更多信息,请阅读 PretrainedConfig 的文档。

示例

>>> from transformers import TimmBackboneConfig, TimmBackbone

>>> # Initializing a timm backbone
>>> configuration = TimmBackboneConfig("resnet50")

>>> # Initializing a model from the configuration
>>> model = TimmBackbone(configuration)

>>> # Accessing the model configuration
>>> configuration = model.config
< > 在 GitHub 上更新