Transformers 文档

RegNet

Hugging Face's logo
加入 Hugging Face 社区

并获得增强文档体验

开始使用

RegNet

概述

RegNet 模型由 Ilija Radosavovic、Raj Prateek Kosaraju、Ross Girshick、Kaiming He 和 Piotr Dollár 在 Designing Network Design Spaces 中提出。

作者设计了搜索空间来执行神经架构搜索 (NAS)。他们首先从一个高维搜索空间开始,并通过根据当前搜索空间采样的性能最佳模型经验地应用约束来迭代地缩减搜索空间。

论文的摘要如下:

在这项工作中,我们提出了一种新的网络设计范式。我们的目标是帮助促进对网络设计的理解,并发现适用于各种环境的设计原则。我们不是专注于设计单个网络实例,而是设计网络设计空间,对网络群体进行参数化。整个过程类似于经典的手动网络设计,但提升到了设计空间级别。使用我们的方法,我们探索了网络设计的结构方面,并得到了一个由简单、规则的网络组成的低维设计空间,我们将其称为 RegNet。RegNet 参数化的核心见解出奇地简单:优秀网络的宽度和深度可以用分段线性函数来解释。我们分析了 RegNet 设计空间,并得出了一些与当前网络设计实践不符的有趣发现。RegNet 设计空间提供了简单快速的网络,这些网络在各种浮点运算 (FLOPs) 范围内都能很好地工作。在可比的训练设置和 FLOPs 下,RegNet 模型优于流行的 EfficientNet 模型,并且在 GPU 上的速度提高了 5 倍。

此模型由 Francesco 贡献。该模型的 TensorFlow 版本由 sayakpaulariG23498 贡献。原始代码可以在这里找到 这里

来自 Self-supervised Pretraining of Visual Features in the Wild 的巨大的 10B 模型,在十亿张 Instagram 图片上训练,可在 hub 上获得。

资源

一份官方 Hugging Face 和社区(由 🌎 表示)资源列表,可帮助您开始使用 RegNet。

图像分类

如果您有兴趣提交要在此处包含的资源,请随时打开一个 Pull Request,我们会进行审查!理想情况下,该资源应演示一些新内容,而不是重复现有资源。

RegNetConfig

transformers.RegNetConfig

< >

( num_channels = 3 embedding_size = 32 hidden_sizes = [128, 192, 512, 1088] depths = [2, 6, 12, 2] groups_width = 64 layer_type = 'y' hidden_act = 'relu' **kwargs )

参数

  • num_channels (int, 可选,默认为 3) — 输入通道数。
  • embedding_size (int, 可选,默认为 64) — 嵌入层的维度(隐藏大小)。
  • hidden_sizes (List[int], 可选,默认为 [256, 512, 1024, 2048]) — 每个阶段的维度(隐藏大小)。
  • depths (List[int], 可选,默认为 [3, 4, 6, 3]) — 每个阶段的深度(层数)。
  • layer_type (str, 可选,默认为 "y") — 要使用的层,可以是 "x"“y”x 层是 ResNet 的 BottleNeck 层,其 reduction 固定为 1。而 y 层是 x,但具有挤压和激励。请参阅论文以详细了解这些层的构建方式。
  • hidden_act (str可选,默认为 "relu") — 每个块中的非线性激活函数。如果为字符串,则支持 "gelu""relu""selu""gelu_new"
  • downsample_in_first_stage (bool可选,默认为 False) — 如果为 True,则第一阶段将使用 stride 为 2 的下采样对输入进行下采样。

这是用于存储 RegNetModel 配置的配置类。它用于根据指定的参数实例化 RegNet 模型,定义模型架构。使用默认值实例化配置将产生与 RegNet facebook/regnet-y-040 架构类似的配置。

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

示例

>>> from transformers import RegNetConfig, RegNetModel

>>> # Initializing a RegNet regnet-y-40 style configuration
>>> configuration = RegNetConfig()
>>> # Initializing a model from the regnet-y-40 style configuration
>>> model = RegNetModel(configuration)
>>> # Accessing the model configuration
>>> configuration = model.config
Pytorch
隐藏 Pytorch 内容

RegNetModel

class transformers.RegNetModel

< >

( config )

参数

  • config (RegNetConfig) — 模型配置类,包含模型的所有参数。使用配置文件初始化不会加载与模型关联的权重,仅加载配置。查看 from_pretrained() 方法以加载模型权重。

基本的 RegNet 模型,输出原始特征,顶部没有任何特定的头部。此模型是 PyTorch torch.nn.Module 的子类。将其用作常规的 PyTorch 模块,并参考 PyTorch 文档了解与一般使用和行为相关的所有事项。

前向传播

< >

( pixel_values: Tensor output_hidden_states: Optional = None return_dict: Optional = None ) transformers.modeling_outputs.BaseModelOutputWithPoolingAndNoAttentiontuple(torch.FloatTensor)

参数

  • pixel_values (torch.FloatTensor 形状为 (batch_size, num_channels, height, width)) — 像素值。可以使用 AutoImageProcessor 获取像素值。有关详细信息,请参阅 ConvNextImageProcessor.call()
  • output_hidden_states (bool可选) — 是否返回所有层的隐藏状态。有关更多详细信息,请参阅返回张量中的 hidden_states
  • return_dict (bool可选) — 是否返回 ModelOutput 而不是普通元组。

返回值

transformers.modeling_outputs.BaseModelOutputWithPoolingAndNoAttentiontuple(torch.FloatTensor)

一个 transformers.modeling_outputs.BaseModelOutputWithPoolingAndNoAttention 或一个 torch.FloatTensor 的元组(如果传递了 return_dict=False 或当 config.return_dict=False 时),包含取决于配置 (RegNetConfig) 和输入的各种元素。

  • last_hidden_state (torch.FloatTensor 形状为 (batch_size, num_channels, height, width)) — 模型最后一层输出的隐藏状态序列。

  • pooler_output (torch.FloatTensor 形状为 (batch_size, hidden_size)) — 在空间维度上进行池化操作后的最后一层隐藏状态。

  • hidden_states (tuple(torch.FloatTensor), 可选, 当传递 output_hidden_states=Trueconfig.output_hidden_states=True 时返回) — torch.FloatTensor 的元组(如果模型具有嵌入层,则包含嵌入层输出的一个张量,以及每个层的输出),形状为 (batch_size, num_channels, height, width)

    模型在每一层输出处的隐藏状态,以及可选的初始嵌入输出。

The RegNetModel 正向传播方法覆盖了 __call__ 特殊方法。

虽然正向传播的步骤需要在这个函数内定义,但之后应该调用 Module 实例而不是这个函数,因为前者会处理预处理和后处理步骤,而后者会默默地忽略它们。

示例

>>> from transformers import AutoImageProcessor, RegNetModel
>>> import torch
>>> from datasets import load_dataset

>>> dataset = load_dataset("huggingface/cats-image", trust_remote_code=True)
>>> image = dataset["test"]["image"][0]

>>> image_processor = AutoImageProcessor.from_pretrained("facebook/regnet-y-040")
>>> model = RegNetModel.from_pretrained("facebook/regnet-y-040")

>>> inputs = image_processor(image, return_tensors="pt")

>>> with torch.no_grad():
...     outputs = model(**inputs)

>>> last_hidden_states = outputs.last_hidden_state
>>> list(last_hidden_states.shape)
[1, 1088, 7, 7]

RegNetForImageClassification

transformers.RegNetForImageClassification

< >

( config )

参数

  • config (RegNetConfig) — 模型配置类,包含模型的所有参数。使用配置文件初始化不会加载与模型关联的权重,仅加载配置。查看 from_pretrained() 方法来加载模型权重。

带有图像分类头的 RegNet 模型(在池化特征之上添加一个线性层),例如用于 ImageNet。

此模型是 PyTorch torch.nn.Module 的子类。将其用作常规 PyTorch 模块,并参考 PyTorch 文档了解所有与一般用法和行为相关的事项。

前向传播

< >

( pixel_values: Optional = None labels: Optional = None output_hidden_states: Optional = None return_dict: Optional = None ) transformers.modeling_outputs.ImageClassifierOutputWithNoAttentiontuple(torch.FloatTensor)

参数

  • pixel_values (torch.FloatTensor 形状为 (batch_size, num_channels, height, width)) — 像素值。可以使用 AutoImageProcessor 获取像素值。有关详细信息,请参阅 ConvNextImageProcessor.call()
  • output_hidden_states (bool, 可选) — 是否返回所有层的隐藏状态。有关更多详细信息,请参阅返回张量中的 hidden_states
  • return_dict (bool, 可选) — 是否返回 ModelOutput 而不是普通元组。
  • labels (torch.LongTensor 形状为 (batch_size,), 可选) — 用于计算图像分类/回归损失的标签。索引应在 [0, ..., config.num_labels - 1] 范围内。如果 config.num_labels > 1,则计算分类损失(交叉熵)。

返回值

transformers.modeling_outputs.ImageClassifierOutputWithNoAttentiontuple(torch.FloatTensor)

一个 transformers.modeling_outputs.ImageClassifierOutputWithNoAttentiontorch.FloatTensor 的元组(如果传递 return_dict=Falseconfig.return_dict=False),包含根据配置 (RegNetConfig) 和输入而变化的各种元素。

  • loss (torch.FloatTensor 形状为 (1,), 可选, 当提供 labels 时返回) — 分类(如果 config.num_labels==1 则为回归)损失。
  • logits (torch.FloatTensor 形状为 (batch_size, config.num_labels)) — 分类(如果 config.num_labels==1 则为回归)分数(在 SoftMax 之前)。
  • hidden_states (tuple(torch.FloatTensor)可选,当传递 output_hidden_states=Trueconfig.output_hidden_states=True 时返回) — torch.FloatTensor 的元组(如果模型具有嵌入层,则一个用于嵌入的输出,以及每个阶段输出的一个) 形状为 (batch_size, num_channels, height, width)。模型在每个阶段输出处的隐藏状态(也称为特征图)。

RegNetForImageClassification 的前向方法覆盖了 __call__ 特殊方法。

虽然正向传播的步骤需要在这个函数内定义,但之后应该调用 Module 实例而不是这个函数,因为前者会处理预处理和后处理步骤,而后者会默默地忽略它们。

示例

>>> from transformers import AutoImageProcessor, RegNetForImageClassification
>>> import torch
>>> from datasets import load_dataset

>>> dataset = load_dataset("huggingface/cats-image", trust_remote_code=True)
>>> image = dataset["test"]["image"][0]

>>> image_processor = AutoImageProcessor.from_pretrained("facebook/regnet-y-040")
>>> model = RegNetForImageClassification.from_pretrained("facebook/regnet-y-040")

>>> inputs = image_processor(image, return_tensors="pt")

>>> with torch.no_grad():
...     logits = model(**inputs).logits

>>> # model predicts one of the 1000 ImageNet classes
>>> predicted_label = logits.argmax(-1).item()
>>> print(model.config.id2label[predicted_label])
tabby, tabby cat
TensorFlow
隐藏 TensorFlow 内容

TFRegNetModel

transformers.TFRegNetModel

< >

( config: RegNetConfig *inputs **kwargs )

参数

  • config (RegNetConfig) — 模型配置类,包含模型的所有参数。使用配置文件初始化不会加载与模型关联的权重,仅加载配置。查看 from_pretrained() 方法以加载模型权重。

不带任何特定头的基础 RegNet 模型,输出原始特征。此模型是 Tensorflow keras.layers.Layer 的子类。将其用作常规的 Tensorflow 模块,并参考 Tensorflow 文档以了解与一般用法和行为相关的所有事项。

调用

< >

( pixel_values: Tensor output_hidden_states: Optional = None return_dict: Optional = None training: bool = False ) transformers.modeling_tf_outputs.TFBaseModelOutputWithPoolingAndNoAttentiontuple(tf.Tensor)

参数

  • pixel_values (tf.Tensor 形状为 (batch_size, num_channels, height, width)) — 像素值。可以使用 AutoImageProcessor 获取像素值。有关详细信息,请参阅 ConveNextImageProcessor.__call__
  • output_hidden_states (bool可选) — 是否返回所有层的隐藏状态。有关更多详细信息,请参阅返回张量下的 hidden_states
  • return_dict (bool可选) — 是否返回 ModelOutput 而不是普通元组。

返回值

transformers.modeling_tf_outputs.TFBaseModelOutputWithPoolingAndNoAttentiontuple(tf.Tensor)

一个 transformers.modeling_tf_outputs.TFBaseModelOutputWithPoolingAndNoAttentiontf.Tensor 的元组(如果传递了 return_dict=Falseconfig.return_dict=False),包含取决于配置 (RegNetConfig) 和输入的各种元素。

  • last_hidden_state (tf.Tensor 形状为 (batch_size, num_channels, height, width)) — 模型最后一层的输出处的隐藏状态序列。

  • pooler_output (tf.Tensor 形状为 (batch_size, hidden_size)) — 在对空间维度进行池化操作后,最后一层的隐藏状态。

  • hidden_states (tuple(tf.Tensor)可选,当传递 output_hidden_states=Trueconfig.output_hidden_states=True 时返回) — tf.Tensor 的元组(如果模型具有嵌入层,则一个用于嵌入的输出,以及每个层的输出) 形状为 (batch_size, num_channels, height, width)

    模型在每一层输出处的隐藏状态,以及可选的初始嵌入输出。

TFRegNetModel 的前向方法覆盖了 __call__ 特殊方法。

虽然正向传播的步骤需要在这个函数内定义,但之后应该调用 Module 实例而不是这个函数,因为前者会处理预处理和后处理步骤,而后者会默默地忽略它们。

示例

>>> from transformers import AutoImageProcessor, TFRegNetModel
>>> from datasets import load_dataset

>>> dataset = load_dataset("huggingface/cats-image", trust_remote_code=True)
>>> image = dataset["test"]["image"][0]

>>> image_processor = AutoImageProcessor.from_pretrained("facebook/regnet-y-040")
>>> model = TFRegNetModel.from_pretrained("facebook/regnet-y-040")

>>> inputs = image_processor(image, return_tensors="tf")
>>> outputs = model(**inputs)

>>> last_hidden_states = outputs.last_hidden_state
>>> list(last_hidden_states.shape)
[1, 1088, 7, 7]

TFRegNetForImageClassification

transformers.TFRegNetForImageClassification

< >

( config: RegNetConfig *inputs **kwargs )

参数

  • config (RegNetConfig) — 模型配置类,包含模型的所有参数。使用配置文件初始化不会加载与模型关联的权重,仅加载配置。查看 from_pretrained() 方法以加载模型权重。

带有图像分类头的 RegNet 模型(在池化特征之上添加一个线性层),例如用于 ImageNet。

此模型是 Tensorflow keras.layers.Layer 的子类。将其作为常规的 Tensorflow 模块使用,并参考 Tensorflow 文档了解与一般用法和行为相关的所有事项。

调用

< >

( pixel_values: Optional = None labels: Optional = None output_hidden_states: Optional = None return_dict: Optional = None training: bool = False ) transformers.modeling_tf_outputs.TFSequenceClassifierOutputtuple(tf.Tensor)

参数

  • pixel_values (tf.Tensor 形状为 (batch_size, num_channels, height, width)) — 像素值。可以使用 AutoImageProcessor 获取像素值。有关详细信息,请参阅 ConveNextImageProcessor.__call__
  • output_hidden_states (bool, 可选) — 是否返回所有层的隐藏状态。有关更多详细信息,请参阅返回张量中的 hidden_states
  • return_dict (bool, 可选) — 是否返回 ModelOutput 而不是普通元组。
  • labels (tf.Tensor 形状为 (batch_size,), 可选) — 用于计算图像分类/回归损失的标签。索引应在 [0, ..., config.num_labels - 1] 中。如果 config.num_labels > 1,则计算分类损失(交叉熵)。

返回值

transformers.modeling_tf_outputs.TFSequenceClassifierOutputtuple(tf.Tensor)

一个 transformers.modeling_tf_outputs.TFSequenceClassifierOutputtf.Tensor 的元组(如果传递了 return_dict=Falseconfig.return_dict=False),包含根据配置 (RegNetConfig) 和输入而异的各种元素。

  • loss (tf.Tensor 形状为 (batch_size, ), 可选,在提供 labels 时返回) — 分类(如果 config.num_labels==1 则为回归)损失。

  • logits (tf.Tensor 形状为 (batch_size, config.num_labels)) — 分类(如果 config.num_labels==1 则为回归)分数(在 SoftMax 之前)。

  • hidden_states (tuple(tf.Tensor), 可选,在传递 output_hidden_states=Trueconfig.output_hidden_states=True 时返回) — tf.Tensor 的元组(一个用于嵌入的输出 + 一个用于每一层的输出),形状为 (batch_size, sequence_length, hidden_size)

    模型在每一层输出处的隐藏状态以及初始嵌入输出。

  • attentions (tuple(tf.Tensor), 可选,在传递 output_attentions=Trueconfig.output_attentions=True 时返回) — tf.Tensor 的元组(每一层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length)

    注意力 softmax 之后的注意力权重,用于计算自注意力头中的加权平均值。

TFRegNetForImageClassification 的前向方法覆盖了 __call__ 特殊方法。

虽然正向传播的步骤需要在这个函数内定义,但之后应该调用 Module 实例而不是这个函数,因为前者会处理预处理和后处理步骤,而后者会默默地忽略它们。

示例

>>> from transformers import AutoImageProcessor, TFRegNetForImageClassification
>>> import tensorflow as tf
>>> from datasets import load_dataset

>>> dataset = load_dataset("huggingface/cats-image", trust_remote_code=True)
>>> image = dataset["test"]["image"][0]

>>> image_processor = AutoImageProcessor.from_pretrained("facebook/regnet-y-040")
>>> model = TFRegNetForImageClassification.from_pretrained("facebook/regnet-y-040")

>>> inputs = image_processor(image, return_tensors="tf")
>>> logits = model(**inputs).logits

>>> # model predicts one of the 1000 ImageNet classes
>>> predicted_label = int(tf.math.argmax(logits, axis=-1))
>>> print(model.config.id2label[predicted_label])
tabby, tabby cat
JAX
隐藏 JAX 内容

FlaxRegNetModel

transformers.FlaxRegNetModel

  • config (RegNetConfig) — 模型配置类,包含模型的所有参数。使用配置文件初始化不会加载与模型关联的权重,仅加载配置。查看 from_pretrained() 方法来加载模型权重。
  • dtype (jax.numpy.dtype, 可选,默认为 jax.numpy.float32) — 计算的数据类型。可以是 jax.numpy.float32jax.numpy.float16(在 GPU 上)和 jax.numpy.bfloat16(在 TPU 上)之一。

    这可以用于在 GPU 或 TPU 上启用混合精度训练或半精度推理。如果指定,所有计算都将使用给定的 dtype 执行。

    请注意,这仅指定计算的 dtype,不影响模型参数的 dtype。

    如果您希望更改模型参数的 dtype,请参阅 to_fp16()to_bf16()

基本的 RegNet 模型,输出原始特征,没有任何特定的头部。

此模型继承自 FlaxPreTrainedModel。查看超类文档以了解库为其所有模型实现的通用方法(例如,下载、保存和转换来自 PyTorch 模型的权重)。

此模型也是 flax.linen.Module 的子类。将其用作常规 Flax linen 模块,并参考 Flax 文档以了解与一般用法和行为相关的所有事项。

最后,此模型支持 JAX 的固有特性,例如

__call__

< >

( pixel_values params: dict = None train: bool = False output_hidden_states: Optional = None return_dict: Optional = None ) transformers.modeling_flax_outputs.FlaxBaseModelOutputWithPoolingtuple(torch.FloatTensor)

返回值

transformers.modeling_flax_outputs.FlaxBaseModelOutputWithPoolingtuple(torch.FloatTensor)

一个 transformers.modeling_flax_outputs.FlaxBaseModelOutputWithPooling 或一个 torch.FloatTensor 的元组(如果传递了 return_dict=False 或当 config.return_dict=False 时),包含取决于配置(<class 'transformers.models.regnet.configuration_regnet.RegNetConfig'>)和输入的各种元素。

  • last_hidden_state (jnp.ndarray 形状为 (batch_size, sequence_length, hidden_size)) — 模型最后一层的输出处的隐藏状态序列。

  • pooler_output (jnp.ndarray 形状为 (batch_size, hidden_size)) — 序列的第一个标记(分类标记)的最后一层隐藏状态,通过线性层和 Tanh 激活函数进一步处理。在预训练期间,线性层权重是从下一个句子预测(分类)目标训练的。

  • hidden_states (tuple(jnp.ndarray), 可选,当传递 output_hidden_states=True 或当 config.output_hidden_states=True 时返回) — jnp.ndarray 的元组(一个用于嵌入的输出 + 一个用于每一层的输出),形状为 (batch_size, sequence_length, hidden_size)

    模型在每一层输出处的隐藏状态以及初始嵌入输出。

  • attentions (tuple(jnp.ndarray), 可选,当传递 output_attentions=True 或当 config.output_attentions=True 时返回) — jnp.ndarray 的元组(每一层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length)

    注意力 softmax 之后的注意力权重,用于计算自注意力头中的加权平均值。

FlaxRegNetPreTrainedModel 的前向方法覆盖了 __call__ 特殊方法。

虽然正向传播的步骤需要在这个函数内定义,但之后应该调用 Module 实例而不是这个函数,因为前者会处理预处理和后处理步骤,而后者会默默地忽略它们。

示例

>>> from transformers import AutoImageProcessor, FlaxRegNetModel
>>> from PIL import Image
>>> import requests

>>> url = "http://images.cocodataset.org/val2017/000000039769.jpg"
>>> image = Image.open(requests.get(url, stream=True).raw)

>>> image_processor = AutoImageProcessor.from_pretrained("facebook/regnet-y-040")
>>> model = FlaxRegNetModel.from_pretrained("facebook/regnet-y-040")

>>> inputs = image_processor(images=image, return_tensors="np")
>>> outputs = model(**inputs)
>>> last_hidden_states = outputs.last_hidden_state

FlaxRegNetForImageClassification

transformers.FlaxRegNetForImageClassification

< >

( config: RegNetConfig input_shape = (1, 224, 224, 3) seed: int = 0 dtype: dtype = <class 'jax.numpy.float32'> _do_init: bool = True **kwargs )

参数

  • config (RegNetConfig) — 模型配置类,包含模型的所有参数。使用配置文件初始化不会加载与模型关联的权重,仅加载配置。查看 from_pretrained() 方法来加载模型权重。
  • dtype (jax.numpy.dtype可选,默认为 jax.numpy.float32) — 计算的数据类型。可以是 jax.numpy.float32jax.numpy.float16(在 GPU 上)和 jax.numpy.bfloat16(在 TPU 上)之一。

    这可用于启用 GPU 或 TPU 上的混合精度训练或半精度推理。如果指定,所有计算都将使用给定的 dtype 执行。

    请注意,这仅指定计算的 dtype,而不影响模型参数的 dtype。

    如果希望更改模型参数的 dtype,请参阅 to_fp16()to_bf16()

带有图像分类头的 RegNet 模型(在池化特征之上添加一个线性层),例如用于 ImageNet。

此模型继承自 FlaxPreTrainedModel。查看超类文档以了解库为其所有模型实现的通用方法(例如,下载、保存和转换来自 PyTorch 模型的权重)。

此模型也是 flax.linen.Module 的子类。将其用作常规 Flax linen 模块,并参考 Flax 文档以了解与一般用法和行为相关的所有事项。

最后,此模型支持 JAX 的固有特性,例如

__call__

< >

( pixel_values params: dict = None train: bool = False output_hidden_states: Optional = None return_dict: Optional = None ) transformers.modeling_flax_outputs.FlaxImageClassifierOutputWithNoAttentiontuple(torch.FloatTensor)

返回值

transformers.modeling_flax_outputs.FlaxImageClassifierOutputWithNoAttentiontuple(torch.FloatTensor)

一个 transformers.modeling_flax_outputs.FlaxImageClassifierOutputWithNoAttention 或一个 torch.FloatTensor 的元组(如果传递了 return_dict=False 或当 config.return_dict=False 时),包含取决于配置(<class 'transformers.models.regnet.configuration_regnet.RegNetConfig'>)和输入的各种元素。

  • logits (jnp.ndarray 形状为 (batch_size, config.num_labels)) — 分类(或如果 config.num_labels==1 则为回归)分数(在 SoftMax 之前)。
  • hidden_states (tuple(jnp.ndarray)可选,当传递 output_hidden_states=True 或当
  • config.output_hidden_states=True):jnp.ndarray 的元组(如果模型具有嵌入层,则一个用于嵌入的输出,以及每个阶段输出的一个)形状为 (batch_size, num_channels, height, width)。模型在每个阶段输出处的隐藏状态(也称为特征图)。

FlaxRegNetPreTrainedModel 的前向方法覆盖了 __call__ 特殊方法。

虽然正向传播的步骤需要在这个函数内定义,但之后应该调用 Module 实例而不是这个函数,因为前者会处理预处理和后处理步骤,而后者会默默地忽略它们。

示例

>>> from transformers import AutoImageProcessor, FlaxRegNetForImageClassification
>>> from PIL import Image
>>> import jax
>>> import requests

>>> url = "http://images.cocodataset.org/val2017/000000039769.jpg"
>>> image = Image.open(requests.get(url, stream=True).raw)

>>> image_processor = AutoImageProcessor.from_pretrained("facebook/regnet-y-040")
>>> model = FlaxRegNetForImageClassification.from_pretrained("facebook/regnet-y-040")

>>> inputs = image_processor(images=image, return_tensors="np")
>>> outputs = model(**inputs)
>>> logits = outputs.logits

>>> # model predicts one of the 1000 ImageNet classes
>>> predicted_class_idx = jax.numpy.argmax(logits, axis=-1)
>>> print("Predicted class:", model.config.id2label[predicted_class_idx.item()])
< > 在 GitHub 上更新