Transformers documentation
PPLCNetV4
Model ini disumbangkan ke Hugging Face Transformers pada 2026-05-19.
PPLCNetV4
PPLCNetV4 disediakan hanya sebagai jaringan backbone. Tidak ada checkpoint klasifikasi gambar terlatih yang telah dirilis secara resmi.
PPLCNetV4Config
kelas transformers.PPLCNetV4Config
< source >( 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 = Nonescale: float | int = 1.0block_configs: list | None = Nonestem_channels: list[int] | tuple[int, ...] = (3, 48, 96)reduction: int = 4hidden_act: str = 'relu'_out_features: list[str] | None = None_out_indices: list[int] | None = Nonenum_channels: int = 3stem_strides: Sequence = (2, 1, 1, 2, 1)stem_type: str = 'large'use_learnable_affine_block: bool = False )
Parameter
- scale (
float, opsional, default 1.0) — Faktor penskalaan untuk dimensi channel model, digunakan untuk menyesuaikan ukuran model dan biaya komputasi tanpa mengubah arsitektur keseluruhan (misalnya, 0.25, 0.5, 1.0, 1.5). - block_configs (
list[list[tuple]], opsional, defaultNone) — Konfigurasi untuk setiap blok di setiap stage. Setiap tuple berisi: (kernel_size, in_channels, out_channels, stride, use_squeeze_excitation). JikaNone, menggunakan konfigurasi PP-LCNet default. - stem_channels (
list[int], opsional, defaultnya[3, 48, 96]) — Dimensi channel untuk lapisan stem:- Angka pertama (3) adalah saluran gambar input
- Angka kedua (48) adalah kanal batang antara
- Angka ketiga (96) adalah kanal batang output
- reduction (
int, opsional, default 4) — Faktor reduksi untuk dimensi kanal fitur dalam blok squeeze-and-excitation (SE), yang digunakan untuk mengurangi jumlah parameter model dan kompleksitas komputasi sambil mempertahankan representabilitas fitur. - hidden_act (
str, opsional, defaultnyarelu) — Fungsi aktivasi non-linear (fungsi atau string) di decoder. Misalnya,"gelu","relu","silu", dan sebagainya. - num_channels (
int, opsional, defaultnya3) — Jumlah saluran input. - stem_strides (
Sequence[int | list[int] | tuple[int, ...]], opsional, default(2, 1, 1, 2, 1)) — Pola stride untuk lapisan stem. - stem_type (
str, opsional, defaultnyalarge) — Jenis lapisan stem yang akan digunakan. Bisa berupa salah satu dari:"large": Stem PP-LCNetV4 standar."small": Varian dengan dimensi channel yang lebih kecil.
- use_learnable_affine_block (
bool, opsional, defaultFalse) — Apakah akan menggunakan Learnable Affine Blocks (LAB) dalam jaringan. LAB menambahkan parameter skala dan bias yang dapat dipelajari setelah operasi tertentu.
Ini adalah kelas konfigurasi untuk menyimpan konfigurasi dari Pp Lcnet V4Model. Kelas ini digunakan untuk membuat instans model Pp Lcnet V4 berdasarkan argumen yang ditentukan, sehingga mendefinisikan arsitektur model. Membuat instans konfigurasi dengan nilai bawaan akan menghasilkan konfigurasi yang serupa dengan konfigurasi dari PaddlePaddle/Not_yet_released
Objek konfigurasi mewarisi dari PreTrainedConfig dan dapat digunakan untuk mengontrol output model. Baca dokumentasi dari PreTrainedConfig untuk informasi lebih lanjut.
PPLCNetV4Backbone
kelas transformers.PPLCNetV4Backbone
< source >( config: PPLCNetV4Config )
Parameter
- config (PPLCNetV4Config) — Kelas konfigurasi model dengan semua parameter model. Inisialisasi dengan file konfigurasi tidak memuat bobot yang terkait dengan model, hanya konfigurasinya. Lihat metode from_pretrained() untuk memuat bobot model.
Model backbone PPLCNetV4 untuk ekstraksi fitur.
Model ini mewarisi dari PreTrainedModel. Periksa dokumentasi kelas induk untuk metode generik yang diimplementasikan oleh pustaka untuk semua model (seperti mengunduh atau menyimpan, mengubah ukuran embedding input, memangkas kepala, dll.)
Model ini juga merupakan subclass dari torch.nn.Module PyTorch. Gunakan sebagai PyTorch Module biasa dan merujuk ke dokumentasi PyTorch untuk semua hal yang berkaitan dengan penggunaan dan perilaku umum.
forward
< source >( pixel_values: Tensor**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → BackboneOutput or tuple(torch.FloatTensor)
Parameter
- pixel_values (
torch.Tensordengan bentuk(batch_size, num_channels, image_size, image_size)) — Tensor yang sesuai dengan gambar input. Nilai piksel dapat diperoleh menggunakanimage_processor_class. Lihatimage_processor_class.__call__untuk detailnya (processor_classmenggunakanimage_processor_classuntuk memproses gambar).
Mengembalikan
BackboneOutput atau tuple(torch.FloatTensor)
BackboneOutput atau tuple dari
torch.FloatTensor (jika return_dict=False diteruskan atau ketika config.return_dict=False) yang terdiri dari berbagai
elemen tergantung pada konfigurasi (PPLCNetV4Config) dan input.
Metode forward dari PPLCNetV4Backbone menimpa metode khusus __call__.
Meskipun resep untuk forward pass perlu didefinisikan di dalam fungsi ini, sebaiknya panggil instance
Modulesetelahnya alih-alih fungsi ini, karena yang pertama menangani langkah-langkah pra-pemrosesan dan pasca-pemrosesan, sedangkan yang kedua mengabaikannya secara diam-diam.
feature_maps (
tuple(torch.FloatTensor)dengan bentuk(batch_size, num_channels, height, width)) — Feature maps dari setiap tahap.hidden_states (
tuple(torch.FloatTensor), opsional, dikembalikan saatoutput_hidden_states=Truedilewatkan atau saatconfig.output_hidden_states=True) — Tuple daritorch.FloatTensor(satu untuk output embeddings + satu untuk output setiap layer) dengan bentuk(batch_size, sequence_length, hidden_size)atau(batch_size, num_channels, height, width), tergantung pada backbone.Hidden-states model pada output setiap tahap ditambah output embedding awal.
attentions (
tuple(torch.FloatTensor), opsional, dikembalikan saatoutput_attentions=Truedilewatkan atau saatconfig.output_attentions=True) — Tuple daritorch.FloatTensor(satu untuk setiap layer) dengan bentuk(batch_size, num_heads, sequence_length, sequence_length). Hanya berlaku jika backbone menggunakan attention.Bobot perhatian setelah softmax perhatian, digunakan untuk menghitung rata-rata berbobot di kepala perhatian diri (self-attention).
Contoh:
>>> from transformers import PPLCNetV4Config, PPLCNetV4Backbone
>>> import torch
>>> config = PPLCNetV4Config()
>>> model = PPLCNetV4Backbone(config)
>>> pixel_values = torch.randn(1, 3, 224, 224)
>>> with torch.no_grad():
... outputs = model(pixel_values)
>>> feature_maps = outputs.feature_maps
>>> list(feature_maps[-1].shape)