Transformers documentation

バックボーン

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

バックボーン

バックボーンは、オブジェクト検出や画像分類などの上位のコンピュータビジョンタスクにおける特徴抽出に使用されるモデルです。Transformers は、事前学習済みモデルの重みから Transformers のバックボーンを初期化するための AutoBackbone クラスと、2 つのユーティリティクラスを提供しています:

  • BackboneMixin は、Transformers または timm からバックボーンを初期化することを可能にし、出力特徴量とインデックスを返す関数を含みます。
  • BackboneConfigMixin は、backbone の設定における出力特徴量とインデックスを設定します。

timmモデルは、TimmBackboneクラスとTimmBackboneConfigクラスによって読み込まれます。

Backbonesは、以下のモデルでサポートされています:

AutoBackbone

class transformers.AutoBackbone

< >

( *args**kwargs )

BackboneMixin

class transformers.BackboneMixin

< >

( *args**kwargs )

post_init

< >

( )

post_init をオーバーライドして、キャプチャ用フックを常にインストールするようにします。バックボーンは常に出力をキャプチャするためです。モジュールがすでにインスタンス化されている必要があるため、post_init でこれを行う必要があります。これにより、torch.compile による混乱を回避できます。最初のフックのインストールはグラフのブレイクを必要とする/作成するため、model = torch.compile(model...) のような外部からのユーザー呼び出しと競合する可能性があるためです。

BackboneConfigMixin

クラス transformers.BackboneConfigMixin

< >

( )

バックボーン設定におけるout_featuresおよびout_indices属性の処理をサポートするためのMixinです。

set_output_features_output_indices

< >

( out_features: list | Noneout_indices: list | None )

パラメータ

  • out_features (list[str]、省略可) — backbone が出力する特徴量の名称です。指定しない場合、デフォルトで config._out_features が使用されます。
  • out_indices (list[int] または tuple[int]、省略可) — バックボーンが出力する特徴量のインデックスです。指定しない場合、デフォルトで config._out_indices が使用されます。

出力インデックスと特徴量を新しい値に設定し、指定されたstage_namesと整合させます。 入力の一つが指定されていない場合、指定されたstage_namesに対応するout_featuresまたはout_indicesを特定します。

to_dict

< >

( )

このインスタンスをPythonの辞書にシリアライズします。PreTrainedConfigのデフォルトのto_dict()をオーバーライドし、out_featuresおよびout_indices属性を含めるようにします。

verify_out_features_out_indices

< >

( )

指定された stage_names に対して、out_indices と out_features が有効であることを確認します。

TimmBackbone

クラス transformers.TimmBackbone

< >

( config: TimmBackboneConfig**kwargs )

timm モデルをバックボーンとして使用するためのラッパークラスです。これにより、ライブラリ内の他のモデルと同一の API を保ちながら、timm モデルを相互に交換して使用できます。

TimmBackboneConfig

クラス 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 )

パラメータ

  • backbone (str, 省略可) — 読み込むtimmのチェックポイント。
  • num_channels (int、任意、デフォルトは3) — 入力チャネル数。
  • features_only (bool、任意、デフォルトは True) — features のみを出力するか、logits も出力するかどうかを指定します。
  • freeze_batch_norm_2d (bool、省略可、デフォルトはFalse) — 指定されたモジュールのすべてのBatchNorm2dおよびSyncBatchNormレイヤーをFrozenBatchNorm2dに変換します。
  • output_stride (int、省略可) — 入力特徴マップと出力特徴マップの空間解像度の比率です。

これは 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
Update on GitHub