Transformers documentation

Backbone

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v5.22.1).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Backbone

Uma backbone é um modelo usado para extração de recursos para tarefas de visão computacional de alto nível, como detecção de objetos e classificação de imagens. O Transformers fornece uma classe AutoBackbone para inicializar uma backbone do Transformers a partir de pesos de modelo pré-treinados, e duas classes utilitárias:

  • O BackboneMixin permite inicializar um backbone a partir do Transformers ou do timm e inclui funções para retornar os recursos de saída e os índices.
  • BackboneConfigMixin define os recursos de saída e os índices da configuração do backbone.

Os modelos timm são carregados com as classes TimmBackbone e TimmBackboneConfig.

Os backbones são suportados para os seguintes modelos:

AutoBackbone

classe transformers.AutoBackbone

< >

( *args**kwargs )

BackboneMixin

classe transformers.BackboneMixin

< >

( *args**kwargs )

post_init

< >

( )

Sobrescreva post_init para sempre instalar os hooks de captura, pois o backbone SEMPRE capturará as saídas. Precisamos fazer isso em post_init, pois os módulos precisam já ter sido instanciados. Isso evita alguns conflitos com torch.compile, pois a primeira instalação de hook precisará/criará uma quebra de grafo, o que pode conflitar com chamadas externas do usuário, como model = torch.compile(model...).

BackboneConfigMixin

classe transformers.BackboneConfigMixin

< >

( )

Mixin para suportar o tratamento dos atributos out_features e out_indices nas configurações do backbone.

set_output_features_output_indices

< >

( out_features: list | Noneout_indices: list | None )

Parâmetros

  • out_features (list[str], opcional) — Os nomes dos recursos que o backbone deve produzir como saída. O padrão é config._out_features, caso não seja fornecido.
  • out_indices (list[int] ou tuple[int], opcional) — Os índices dos recursos para o backbone produzir como saída. O padrão é config._out_indices, caso não seja fornecido.

Define os índices e recursos de saída para novos valores e os alinha com os stage_names fornecidos. Se uma das entradas não for fornecida, encontra o out_features ou out_indices correspondente para os stage_names fornecidos.

to_dict

< >

( )

Serializa esta instância em um dicionário Python. Sobrescreve o to_dict() padrão de PreTrainedConfig para incluir os atributos out_features e out_indices.

verify_out_features_out_indices

< >

( )

Verifique se out_indices e out_features são válidos para os stage_names fornecidos.

TimmBackbone

classe transformers.TimmBackbone

< >

( config: TimmBackboneConfig**kwargs )

Classe de encapsulamento para modelos do timm a serem usados como backbones. Isso permite usar os modelos do timm de forma intercambiável com os outros modelos da biblioteca, mantendo a mesma API.

TimmBackboneConfig

classe transformers.TimmBackboneConfig

< >

( transformers_version: str | None = Nonearchitectures: list[str] | None = Noneoutput_hidden_states: bool | None = Falsereturn_dict: bool | None = Truedtype: str | torch.dtype | None = Nonechunk_size_feed_forward: int = 0is_encoder_decoder: bool = Falseid2label: dict[int, str] | dict[str, str] | None = Nonelabel2id: dict[str, int] | dict[str, str] | None = Noneproblem_type: Literal['regression', 'single_label_classification', 'multi_label_classification'] | None = Nonebackbone: str | None = Nonenum_channels: int = 3features_only: bool = True_out_indices: list[int] | None = Nonefreeze_batch_norm_2d: bool = Falseoutput_stride: int | None = None )

Parâmetros

  • backbone (str, opcional) — O checkpoint do timm a ser carregado.
  • num_channels (int, opcional, padrão 3) — O número de canais de entrada.
  • features_only (bool, opcional, padrão True) — Se deve exibir apenas os recursos ou também os logits.
  • freeze_batch_norm_2d (bool, opcional, padrão False) — Converte todas as camadas BatchNorm2d e SyncBatchNorm do módulo fornecido em FrozenBatchNorm2d.
  • output_stride (int, opcional) — A proporção entre a resolução espacial dos mapas de características de entrada e de saída.

Esta é a classe de configuração para armazenar a configuração de um TimmBackbone. Ela é usada para instanciar um modelo Timm Backbone de acordo com os argumentos especificados, definindo a arquitetura do modelo. Instanciar uma configuração com os padrões resultará em uma configuração semelhante à do

Os objetos de configuração herdam de PreTrainedConfig e podem ser usados para controlar as saídas do modelo. Consulte a documentação de PreTrainedConfig para mais informações.

Exemplo:

>>> 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
Update on GitHub