Transformers documentation
PPLCNetV4
Este modelo foi contribuído para o Hugging Face Transformers em 2026-05-19.
PPLCNetV4
O PPLCNetV4 é fornecido apenas como uma rede backbone. Nenhum checkpoint pré-treinado para classificação de imagens foi oficialmente lançado.
PPLCNetV4Config
classe 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 )
Parâmetros
- scale (
float, opcional, padrão 1.0) — Fator de escala para as dimensões de canal do modelo, usado para ajustar o tamanho do modelo e o custo computacional sem alterar a arquitetura geral (por exemplo, 0.25, 0.5, 1.0, 1.5). - block_configs (
list[list[tuple]], opcional, padrãoNone) — Configuração para cada bloco em cada estágio. Cada tupla contém: (kernel_size, in_channels, out_channels, stride, use_squeeze_excitation). SeNone, usa a configuração padrão do PP-LCNet. - stem_channels (
list[int], opcional, padrão[3, 48, 96]) — Dimensões dos canais para as camadas do stem:- O primeiro número (3) é o número de canais da imagem de entrada
- O segundo número (48) são os canais intermediários do caule
- O terceiro número (96) são os canais do cauda de saída
- reduction (
int, opcional, padrão 4) — Fator de redução para as dimensões dos canais de características nos blocos squeeze-and-excitation (SE), usado para reduzir o número de parâmetros do modelo e a complexidade computacional, mantendo a capacidade de representação das características. - hidden_act (
str, opcional, padrãorelu) — A função de ativação não linear (função ou string) no decodificador. Por exemplo,"gelu","relu","silu", etc. - num_channels (
int, opcional, padrão3) — O número de canais de entrada. - stem_strides (
Sequence[int | list[int] | tuple[int, ...]], opcional, padrão(2, 1, 1, 2, 1)) — Padrões de stride para as camadas do stem. - stem_type (
str, opcional, padrão élarge) — O tipo de camada de stem a ser usado. Pode ser um dos seguintes:"large": Caule padrão do PP-LCNetV4."small": Variante com dimensões de canal menores.
- use_learnable_affine_block (
bool, opcional, padrãoFalse) — Indica se deve usar Learnable Affine Blocks (LAB) na rede. LAB adiciona parâmetros de escala e viés aprendíveis após certas operações.
Esta é a classe de configuração para armazenar a configuração de um Pp Lcnet V4Model. Ela é usada para instanciar um modelo Pp Lcnet V4 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 PaddlePaddle/Not_yet_released
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.
PPLCNetV4Backbone
classe transformers.PPLCNetV4Backbone
< source >( config: PPLCNetV4Config )
Parâmetros
- config (PPLCNetV4Config) — Classe de configuração do modelo com todos os parâmetros do modelo. A inicialização com um arquivo de configuração não carrega os pesos associados ao modelo, apenas a configuração. Consulte o método from_pretrained() para carregar os pesos do modelo.
Modelo de backbone PPLCNetV4 para extração de recursos.
Este modelo herda de PreTrainedModel. Consulte a documentação da classe pai para os métodos genéricos que a biblioteca implementa para todos os seus modelos (como download ou salvamento, redimensionamento dos embeddings de entrada, poda de cabeças, etc.)
Este modelo também é uma subclasse de torch.nn.Module do PyTorch. Use-o como um Módulo PyTorch regular e consulte a documentação do PyTorch para todos os assuntos relacionados ao uso geral e ao comportamento.
forward
< source >( pixel_values: Tensor**kwargs: *<class 'transformers.utils.generic.TransformersKwargs'> ) → BackboneOutput or tuple(torch.Tensor)
Parâmetros
- pixel_values (
torch.Tensorde forma(batch_size, num_channels, image_size, image_size)) — Os tensores correspondentes às imagens de entrada. Os valores de pixels podem ser obtidos usandoimage_processor_class. Consulteimage_processor_class.__call__para mais detalhes (processor_classusaimage_processor_classpara processar as imagens).
Retorna
BackboneOutput ou tuple(torch.Tensor)
Um BackboneOutput ou uma tupla de
torch.Tensor (se return_dict=False for passado ou quando config.return_dict=False) contendo vários
elementos, dependendo da configuração (PPLCNetV4Config) e das entradas.
O método forward do PPLCNetV4Backbone substitui o método especial __call__.
Embora a receita para a passagem direta precise ser definida dentro desta função, deve-se chamar a instância de
Moduleem seguida, em vez desta, pois a primeira cuida da execução das etapas de pré e pós-processamento, enquanto a segunda as ignora silenciosamente.
feature_maps (
tuple(torch.Tensor)de forma(batch_size, num_channels, height, width)) — Mapas de características dos estágios.hidden_states (
tuple(torch.Tensor), opcional, retornado quandooutput_hidden_states=Trueé passado ou quandoconfig.output_hidden_states=True) — Tupla detorch.Tensor(um para a saída dos embeddings + um para a saída de cada camada) de forma(batch_size, sequence_length, hidden_size)ou(batch_size, num_channels, height, width), dependendo do backbone.Estados ocultos do modelo na saída de cada estágio, além das saídas do embedding inicial.
attentions (
tuple(torch.Tensor), opcional, retornado quandooutput_attentions=Trueé passado ou quandoconfig.output_attentions=True) — Tupla detorch.Tensor(um para cada camada) com forma(batch_size, num_heads, sequence_length, sequence_length). Aplicável apenas se o backbone usar atenção.Pesos de atenção após o softmax de atenção, usados para calcular a média ponderada nos cabeçalhos de autoatenção.
Exemplos:
>>> 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)