Transformers 4.37 中文文档(八十六)(3)

简介: Transformers 4.37 中文文档(八十六)

Transformers 4.37 中文文档(八十六)(2)https://developer.aliyun.com/article/1563237


FlavaForPreTraining

class transformers.FlavaForPreTraining

<来源>

( config: FlavaConfig image_codebook: Optional = None )

参数

  • config (FlavaConfig) — 具有模型所有参数的模型配置类。使用配置文件初始化不会加载与模型关联的权重,只会加载配置。查看 from_pretrained() 方法以加载模型权重。
  • image_codebook (nn.Module) — 如果传入,图像码书将设置为此值。否则,将使用配置中定义的 image_codebook_config 作为第一个参数进行初始化。

用于预训练的 FLAVA 模型,输出损失、嵌入、对数和变换器输出。

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

forward

<来源>

( input_ids: Optional = None input_ids_masked: Optional = None pixel_values: Optional = None codebook_pixel_values: Optional = None attention_mask: Optional = None token_type_ids: Optional = None bool_masked_pos: Optional = None position_ids: Optional = None image_attention_mask: Optional = None skip_unmasked_multimodal_encoder: bool = None mlm_labels: Optional = None mim_labels: Optional = None itm_labels: Optional = None output_attentions: Optional = None output_hidden_states: bool = True return_dict: Optional = None return_loss: Optional = None ) → export const metadata = 'undefined';transformers.models.flava.modeling_flava.FlavaForPreTrainingOutput or tuple(torch.FloatTensor)

参数

  • input_ids_masked(形状为(batch_size, text_seq_len)torch.LongTensor)— 词汇表中输入序列标记的索引。这些是原始任务的掩盖版本,用于 MLM。索引可以使用 AutoTokenizer 以及DataCollatorForMaskedLanguageModeling获取。有关详细信息,请参阅 PreTrainedTokenizer.encode()和 PreTrainedTokenizer.call()。什么是输入 ID?
  • input_ids(形状为(batch_size, text_seq_len)torch.LongTensor)— 词汇表中输入序列标记的索引。索引可以使用 AutoTokenizer 获取。有关详细信息,请参阅 PreTrainedTokenizer.encode()和 PreTrainedTokenizer.call()。什么是输入 ID?
  • token_type_ids(形状为(batch_size, text_seq_len)torch.LongTensor可选)— 段标记索引,用于指示输入的第一部分和第二部分。索引在[0, 1]中选择:
  • 0 对应于句子 A标记,
  • 1 对应于句子 B标记。什么是标记类型 ID?
  • pixel_values(形状为(batch_size, num_channels, height, width)torch.FloatTensor)— 像素值。像素值可以使用 AutoImageProcessor 获取。有关详细信息,请参阅 FlavaImageProcessor.call()。
  • bool_masked_pos(形状为(batch_size, image_num_patches)torch.BoolTensor)— 布尔掩码位置。指示哪些补丁被掩盖(1),哪些没有(0)。
  • interpolate_pos_encoding布尔值可选)— 是否插值预训练位置编码。
  • image_attention_mask(形状为(batch_size, image_num_patches)torch.FloatTensor可选)— 用于避免特定于图像的填充令牌索引执行注意力的掩码。掩码值在[0, 1]中选择:
  • 1 表示未被掩盖的标记,
  • 0 表示被掩盖的标记。什么是注意力掩码?
  • skip_unmasked_multimodal_encoder布尔值可选)— 跳过未掩盖输入的多模态编码器的任何计算。FLAVA 预训练目前不需要未掩盖的多模态嵌入或输出。
  • mlm_labels(形状为(batch_size, text_seq_len)torch.LongTensor可选)— 用于计算从左到右的语言和多模态掩码建模损失(下一个词预测)的标签。索引应在[-100, 0, ..., text_config.vocab_size - 1]中(参见input_ids文档字符串)。索引设置为-100的标记将被忽略(掩盖),损失仅计算具有标签在[0, ..., text_config.vocab_size - 1]中的标记。
  • mim_labels(形状为(batch_size, image_num_patches)torch.LongTensor可选)- 用于计算图像和多模态掩码建模损失的标签。索引应在[-100, 0, ..., image_config.vocab_size - 1]中。将索引设置为-100的标记将被忽略(masked),仅对具有标签在[0, ..., image_config.vocab_size - 1]中的标记计算损失。如果未传递,则它们将使用分配给模型的图像码书自动生成。默认情况下,它使用 FlavaImageCodebook。请参阅 FlavaImageCodebook 以了解如何生成 mim_labels。
  • itm_labels(形状为(batch_size, 1)torch.LongTensor可选)- 用于计算图像文本匹配损失的标签。0 表示配对不匹配,1 表示匹配。标签为 0 的配对也将被跳过用于计算 MMM 和全局对比损失。
  • return_lossbool可选,默认为 None)- 是否返回计算的损失。
  • attention_mask(形状为(batch_size, text_seq_len)torch.FloatTensor可选)- 用于避免在填充标记索引上执行注意力的掩码。掩码值选定在[0, 1]中:
  • 1 表示未被masked的标记,
  • 0 表示被masked的标记。什么是注意力掩码?
  • head_mask(形状为(num_heads,)(num_layers, num_heads)torch.FloatTensor可选)- 用于使自注意力模块的选定头部失效的掩码。掩码值选定在[0, 1]中:
  • 1 表示头部未被masked
  • 0 表示头部是masked
  • output_attentionsbool可选)- 是否返回所有注意力层的注意力张量。有关更多详细信息,请参阅返回张量下的attentions
  • output_hidden_statesbool可选)- 是否返回所有层的隐藏状态。有关更多详细信息,请参阅返回张量下的hidden_states
  • return_dictbool可选)- 是否返回 ModelOutput 而不是普通元组。
    示例 -

返回

transformers.models.flava.modeling_flava.FlavaForPreTrainingOutputtuple(torch.FloatTensor)

一个transformers.models.flava.modeling_flava.FlavaForPreTrainingOutput或一个torch.FloatTensor元组(如果传递了return_dict=False或当config.return_dict=False时)包括根据配置()和输入的不同元素。

  • losstorch.FloatTensor可选,当return_loss为 True 时返回)- 为此模型计算的总损失。
  • loss_infoFlavaLosses)- FLAVA 预训练损失的详细信息。检查FlavaLosses类描述以获取关键信息。
  • image_embeddings(形状为(batch_size, output_dim)torch.FloatTensor可选,当存在pixel_values时返回)- 这些基本上是 FlavaImageModel 的汇总输出的图像嵌入。
  • image_outputBaseModelOutputWithPooling可选,当存在pixel_values时返回)- FlavaImageModel 的输出。
  • text_embeddings(形状为(batch_size, output_dim)torch.FloatTensor可选,当存在input_ids时返回)- 这些基本上是 FlavaTextModel 的汇总输出的文本嵌入。
  • text_outputBaseModelOutputWithPooling可选,当存在input_ids时返回)- FlavaTextModel 的输出。
  • multimodal_embeddingstorch.FloatTensor,形状为(batch_size, output_dim)可选,当input_idspixel_values存在且skip_unmasked_multimodal_encoderNoneFalse时返回)- 这些多模态嵌入基本上是 FlavaTextModel 的汇总输出。
  • multimodal_outputBaseModelOutputWithPooling,当input_idspixel_values存在且skip_unmasked_multimodal_encoderNoneFalse时返回)- FlavaMultimodalModel 的输出。
  • image_masked_embeddingstorch.FloatTensor,形状为(batch_size, output_dim)可选,当pixel_values存在时返回)- 这些图像嵌入基本上是 FlavaImageModel 的汇总输出。使用bool_masked_pos来创建被屏蔽的图像。
  • image_masked_outputBaseModelOutputWithPooling可选,当pixel_values存在时返回)- FlavaImageModel 的输出。使用bool_masked_pos来创建被屏蔽的图像。
  • text_masked_embeddingstorch.FloatTensor,形状为(batch_size, output_dim)可选,当input_ids_masked存在时返回)- 这些文本嵌入基本上是 FlavaTextModel 的汇总输出。
  • text_masked_outputBaseModelOutputWithPooling可选,当input_ids_masked存在时返回)- FlavaTextModel 的输出。
  • multimodal_masked_embeddingstorch.FloatTensor,形状为(batch_size, output_dim)可选,当input_idspixel_values存在时返回)- 这些多模态嵌入基本上是 FlavaTextModel 的汇总输出。
  • multimodal_masked_outputBaseModelOutputWithPooling,当input_ids_maskedpixel_values存在时返回)- FlavaMultimodalModel 的输出。
  • mim_logitstorch.FloatTensor,形状为(batch_size, num_image_patches, image_vocab_size)或形状为(total_masked_patches, image_vocab_size)可选,当pixel_values存在且input_ids_masked不存在时返回)- MIM 单模态损失的 logits。使用book_masked_pos来获取被屏蔽的补丁。当bool_masked_pos中有一些补丁被屏蔽时,返回扁平化的输出。
  • mlm_logitstorch.FloatTensor,形状为(batch_size, text_seq_length, text_vocab_size)或形状为(total_masked_seq_length, text_vocab_size)可选,当input_ids_masked存在且pixel_values不存在时返回)- MLM 单模态损失的 logits。当input_ids_masked中有一些标记被屏蔽时,返回扁平化的输出。
  • itm_logitstorch.FloatTensor,形状为(batch_size, 2)可选,当input_ids_maskedpixel_values存在时返回)- ITM 损失的 logits。请注意,ITM 损失是在 FLAVA 中对被屏蔽的配对进行计算的。
  • mmm_image_logitstorch.FloatTensor,形状为(batch_size, num_image_patches, image_vocab_size)或形状为(total_masked_patches, image_vocab_size)可选,当pixel_valuesinput_ids_masked存在时返回)- MMM 图像多模态损失的 logits。使用book_masked_pos来获取被屏蔽的补丁。当bool_masked_pos中有一些补丁被屏蔽时,返回扁平化的输出。
  • mmm_text_logits(形状为(batch_size, text_seq_length, text_vocab_size)或形状为(total_masked_seq_length, text_vocab_size)torch.FloatTensor可选,当pixel_valuesinput_ids_masked存在时返回)- 用于 MMM 文本多模态损失的 logits。当input_ids_masked中有一些标记被屏蔽时,返回扁平化的输出。
  • contrastive_logits_per_image(形状为(image_batch_size, text_batch_size)torch.FloatTensor)- image_embeddingstext_embeddings之间的缩放点积分数,但分别通过 FLAVA 的image_projectiontext_projection层。这代表了图像文本相似性得分。这是在未屏蔽的图像和文本上计算的。
  • contrastive_logits_per_text(形状为(text_batch_size, image_batch_size)torch.FloatTensor)- text_embeddingsimage_embeddings之间的缩放点积分数,但分别通过 FLAVA 的text_projectionimage_projection层。这是在未屏蔽的图像和文本上计算的。

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

虽然前向传递的配方需要在此函数内定义,但应该在此之后调用Module实例,而不是在此处调用,因为前者会负责运行前处理和后处理步骤,而后者会默默地忽略它们。

FlavaModel

class transformers.FlavaModel

<来源>

( config: FlavaConfig )

参数

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

裸的 FLAVA 模型变压器输出原始隐藏状态,没有特定的头部。这个模型是 PyTorch 的torch.nn.Module子类。将其用作常规的 PyTorch 模块,并参考 PyTorch 文档以获取与一般用法和行为相关的所有事项。

forward

<来源>

( input_ids: Optional = None pixel_values: Optional = None attention_mask: Optional = None token_type_ids: Optional = None bool_masked_pos: Optional = None position_ids: Optional = None image_attention_mask: Optional = None skip_multimodal_encoder: Optional = None output_attentions: Optional = None output_hidden_states: bool = True return_dict: Optional = None ) → export const metadata = 'undefined';transformers.models.flava.modeling_flava.FlavaModelOutput or tuple(torch.FloatTensor)

参数

  • pixel_values(形状为(batch_size, num_channels, height, width)torch.FloatTensor)- 像素值。像素值可以使用 AutoImageProcessor 获取。有关详细信息,请参阅 FlavaImageProcessor.call()。
  • bool_masked_pos(形状为(batch_size, image_num_patches)torch.BoolTensor)- 布尔掩码位置。指示哪些补丁被屏蔽(1),哪些没有(0)。
  • interpolate_pos_encodingbool可选)- 是否插值预训练位置编码。
  • input_ids(形状为(batch_size, image_num_patches + text_seq_len)torch.LongTensor)- 词汇表中输入序列标记的索引。索引可以使用 AutoTokenizer 获取。有关详细信息,请参阅 PreTrainedTokenizer.encode()和 PreTrainedTokenizer.call()。什么是输入 ID?
  • token_type_ids (torch.LongTensor,形状为 (batch_size, image_num_patches + text_seq_len)可选) — 段令牌索引,指示输入的第一部分和第二部分。 索引在 [0, 1] 中选择:
  • 0 对应于 句子 A 令牌,
  • 1 对应于 句子 B 令牌。 什么是令牌类型 ID?
  • attention_mask (torch.FloatTensor,形状为 (batch_size, image_num_patches + text_seq_len)可选) — 用于避免在填充令牌索引上执行注意力的掩码。 选择的掩码值为 [0, 1]
  • 1 表示未被“掩盖”的令牌。
  • 0 表示被“掩盖”的令牌。 什么是注意力掩码?
  • head_mask (torch.FloatTensor,形状为 (num_heads,)(num_layers, num_heads)可选) — 用于使自注意力模块的选定头部无效的掩码。 选择的掩码值在 [0, 1] 中:
  • 1 表示头部未被“掩盖”,
  • 0 表示头部被“掩盖”。
  • output_attentions (bool可选) — 是否返回所有注意力层的注意力张量。有关更多详细信息,请参见返回张量下的 attentions
  • output_hidden_states (bool可选) — 是否返回所有层的隐藏状态。有关更多详细信息,请参见返回张量下的 hidden_states
  • return_dict (bool可选) — 是否返回 ModelOutput 而不是普通元组。
  • skip_multimodal_encoder (bool可选) — 跳过多模态编码的任何计算。 如果不打算使用多模态编码,则此选项很有用。

返回

transformers.models.flava.modeling_flava.FlavaModelOutputtuple(torch.FloatTensor)

一个 transformers.models.flava.modeling_flava.FlavaModelOutput 或一个 torch.FloatTensor 元组(如果传递了 return_dict=False 或当 config.return_dict=False 时),包括根据配置 () 和输入而异的各种元素。

  • image_embeddings (torch.FloatTensor,形状为 (batch_size, output_dim)可选,当 pixel_values 存在时返回) — 基本上是 FlavaImageModel 的汇总输出的图像嵌入。
  • image_output (BaseModelOutputWithPooling可选,当 pixel_values 存在时返回) — FlavaImageModel 的输出。
  • text_embeddings (torch.FloatTensor,形状为 (batch_size, output_dim)可选,当 input_ids 存在时返回) — 基本上是 FlavaTextModel 的汇总输出的文本嵌入。
  • text_output (BaseModelOutputWithPooling可选,当 input_ids 存在时返回) — FlavaTextModel 的输出。
  • multimodal_embeddings (torch.FloatTensor,形状为 (batch_size, output_dim)可选,当 input_idspixel_values 存在且 skip_multimodal_encoderNoneFalse 时返回) — 基本上是 FlavaTextModel 的汇总输出的多模态嵌入。
  • multimodal_output (BaseModelOutputWithPooling,当 input_idspixel_values 存在且 skip_multimodal_encoderNoneFalse 时返回) — FlavaMultimodalModel 的输出。

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

尽管前向传递的配方需要在此函数内定义,但应该在此之后调用Module实例,而不是在此处调用,因为前者负责运行预处理和后处理步骤,而后者会默默地忽略它们。

示例:

>>> from PIL import Image
>>> import requests
>>> from transformers import AutoProcessor, FlavaModel
>>> model = FlavaModel.from_pretrained("facebook/flava-full")
>>> processor = AutoProcessor.from_pretrained("facebook/flava-full")
>>> url = "http://images.cocodataset.org/val2017/000000039769.jpg"
>>> image = Image.open(requests.get(url, stream=True).raw)
>>> inputs = processor(text=["a photo of a cat"], images=image, return_tensors="pt", padding=True)
>>> outputs = model(**inputs)
>>> image_embeddings = outputs.image_embeddings
>>> text_embeddings = outputs.text_embeddings
>>> multimodal_embeddings = outputs.multimodal_embeddings
>>> outputs.image_embeddings.shape
torch.Size([1, 197, 768])
>>> text_embeddings.shape
torch.Size([1, 7, 768])
>>> multimodal_embeddings.shape
torch.Size([1, 205, 768])
get_text_features

<来源>

( input_ids: Optional = None attention_mask: Optional = None token_type_ids: Optional = None position_ids: Optional = None output_attentions: Optional = None output_hidden_states: Optional = None return_dict: Optional = None )

参数

  • input_ids(形状为(batch_size, text_seq_length)torch.LongTensor)— 输入序列标记在词汇表中的索引。可以使用 AutoTokenizer 获取索引。有关详细信息,请参阅 PreTrainedTokenizer.encode()和 PreTrainedTokenizer.call()。什么是输入 ID?
  • token_type_ids(形状为(batch_size, text_seq_length)torch.LongTensor可选)— 段标记索引,指示输入的第一部分和第二部分。索引选择在[0, 1]中:
  • 0 对应于句子 A标记,
  • 1 对应于句子 B标记。什么是标记类型 ID?
  • attention_mask(形状为(batch_size, text_seq_length)torch.FloatTensor可选)— 用于避免在填充标记索引上执行注意力的掩码。掩码值选择在[0, 1]之间:
  • 1 表示未被“masked”的标记,
  • 对于被masked掉的标记,值为 0。什么是注意力掩码?
  • head_mask(形状为(num_heads,)(num_layers, num_heads)torch.FloatTensor可选)— 用于使自注意力模块的选定头部失效的掩码。掩码值选择在[0, 1]中:
  • 1 表示头部未被“masked”,
  • 0 表示头部被masked
  • output_attentionsbool可选)— 是否返回所有注意力层的注意力张量。有关更多详细信息,请参阅返回的张量下的attentions
  • output_hidden_statesbool可选)— 是否返回所有层的隐藏状态。有关更多详细信息,请参阅返回的张量下的hidden_states
  • return_dictbool可选)— 是否返回 ModelOutput 而不是普通元组。

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

尽管前向传递的配方需要在此函数内定义,但应该在此之后调用Module实例,而不是在此处调用,因为前者负责运行预处理和后处理步骤,而后者会默默地忽略它们。

get_image_features

<来源>

( pixel_values: Optional = None bool_masked_pos: Optional = None interpolate_pos_encoding: Optional = None attention_mask: Optional = None head_mask: Optional = None output_attentions: Optional = None output_hidden_states: Optional = None return_dict: Optional = None )

参数

  • pixel_values(形状为(batch_size, num_channels, height, width)torch.FloatTensor)— 像素值。像素值可以使用 AutoImageProcessor 获取。有关详细信息,请参阅 FlavaImageProcessor.call()。
  • bool_masked_pos(形状为(batch_size, image_num_patches)torch.BoolTensor)— 布尔掩码位置。指示哪些补丁被掩盖(1),哪些没有(0)。
  • interpolate_pos_encodingbool可选)— 是否插值预训练位置编码。
  • attention_mask(形状为(batch_size, image_num_patches)torch.FloatTensor可选)— 用于避免在填充标记索引上执行注意力的掩码。掩码值选择在[0, 1]之间:
  • 1 表示未被“masked”的标记,
  • 对于被masked掉的标记,值为 0。什么是注意力掩码?
  • head_mask (torch.FloatTensor of shape (num_heads,) or (num_layers, num_heads), optional) — 用于使自注意力模块中选择的头部失效的掩码。掩码值选在[0, 1]之间:
  • 1 表示头部未被掩盖,
  • 0 表示头部被掩盖
  • output_attentions (bool, optional) — 是否返回所有注意力层的注意力张量。有关更多详细信息,请参阅返回张量下的attentions
  • output_hidden_states (bool, optional) — 是否返回所有层的隐藏状态。有关更多详细信息,请参阅返回张量下的hidden_states
  • return_dict (bool, optional) — 是否返回 ModelOutput 而不是普通元组。

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

尽管前向传递的步骤需要在此函数内定义,但应该在此之后调用Module实例,而不是在此处调用,因为前者会负责运行预处理和后处理步骤,而后者会默默地忽略它们。

FlavaImageCodebook

class transformers.FlavaImageCodebook

<来源>

( config: FlavaImageCodebookConfig **kwargs: Any )

参数

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

FLAVA 的图像代码簿模型受到 DALL-E 原始编码器的启发。输出原始隐藏状态,可用于根据 DALL-E 的词汇为基于图像的 MIM 生成图像标记。用于为 MIM 生成图像的图像标记,请使用get_codebook_indices

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

forward

<来源>

( pixel_values: FloatTensor )
get_codebook_indices

<来源>

( pixel_values: Tensor )
get_codebook_probs

<来源>

( pixel_values: Tensor )

FlavaTextModel

class transformers.FlavaTextModel

<来源>

( config: FlavaTextConfig add_pooling_layer: bool = True )

参数

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

裸的 FLAVA 文本模型变压器输出原始隐藏状态,没有特定的头部。此模型是 PyTorch torch.nn.Module子类。将其用作常规 PyTorch 模块,并参考 PyTorch 文档以获取与一般用法和行为相关的所有事项。

forward

<来源>

( input_ids: Optional = None attention_mask: Optional = None token_type_ids: Optional = None position_ids: Optional = None head_mask: Optional = None output_attentions: Optional = None output_hidden_states: Optional = None return_dict: Optional = None ) → export const metadata = 'undefined';transformers.modeling_outputs.BaseModelOutputWithPooling or tuple(torch.FloatTensor)

参数

  • input_ids (torch.LongTensor of shape (batch_size, text_seq_length))  — Indices of input sequence tokens in the vocabulary. Indices can be  obtained using AutoTokenizer. See PreTrainedTokenizer.encode() and  PreTrainedTokenizer.call() for details. What are input IDs?
  • token_type_ids (torch.LongTensor of shape (batch_size, text_seq_length), optional) — 段标记索引,用于指示输入的第一部分和第二部分。索引选定在[0, 1]之间:
  • 0 对应于句子 A标记。
  • 1 对应于句子 B标记。什么是标记类型 ID?
  • attention_mask (torch.FloatTensor of shape (batch_size, text_seq_length), optional) — 用于避免在填充标记索引上执行注意力的掩码。掩码值选定在[0, 1]之间:
  • 1 表示未被掩盖的标记,
  • 0 表示被掩盖的标记。什么是注意力掩码?
  • head_mask (torch.FloatTensor of shape (num_heads,) or (num_layers, num_heads), optional) — 用于使自注意力模块中的选定头部失效的掩码。掩码值选定在[0, 1]之间:
  • 1 表示头部未被掩盖,
  • 0 表示头部被掩盖。
  • output_attentions (bool, optional) — 是否返回所有注意力层的注意力张量。有关更多详细信息,请参阅返回张量中的attentions
  • output_hidden_states (bool, optional) — 是否返回所有层的隐藏状态。有关更多详细信息,请参阅返回张量中的hidden_states
  • return_dict (bool, optional) — 是否返回 ModelOutput 而不是普通元组。

返回

transformers.modeling_outputs.BaseModelOutputWithPooling 或tuple(torch.FloatTensor)

一个 transformers.modeling_outputs.BaseModelOutputWithPooling 或一个torch.FloatTensor的元组(如果传递return_dict=False或当config.return_dict=False时),包括根据配置(FlavaTextConfig)和输入的不同元素。

  • last_hidden_state (torch.FloatTensor of shape (batch_size, sequence_length, hidden_size)) — 模型最后一层的隐藏状态的序列。
  • pooler_output (torch.FloatTensor of shape (batch_size, hidden_size))  — Last layer hidden-state of the first token of the sequence  (classification token) after further processing through the layers used  for the auxiliary pretraining task. E.g. for BERT-family of models, this  returns the classification token after processing through a linear  layer and a tanh activation function. The linear layer weights are  trained from the next sentence prediction (classification) objective  during pretraining.
  • hidden_states (tuple(torch.FloatTensor), optional, returned when output_hidden_states=True is passed or when config.output_hidden_states=True) — Tuple of torch.FloatTensor (one for the output of the embeddings, if the model has an embedding layer, + one for the output of each layer) of shape (batch_size, sequence_length, hidden_size)
    模型每一层的隐藏状态以及可选的初始嵌入输出。
  • attentionstuple(torch.FloatTensor)可选,当传递output_attentions=True或当config.output_attentions=True时返回)— 形状为(batch_size, num_heads, sequence_length, sequence_length)torch.FloatTensor元组(每层一个)。
    在注意力 softmax 之后的注意力权重,用于计算自注意力头中的加权平均值。

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

尽管前向传递的步骤需要在此函数内定义,但应该在此之后调用Module实例,而不是在此处调用,因为前者负责运行预处理和后处理步骤,而后者会默默地忽略它们。

示例:

>>> from transformers import AutoTokenizer, FlavaTextModel
>>> import torch
>>> tokenizer = AutoTokenizer.from_pretrained("facebook/flava-full")
>>> model = FlavaTextModel.from_pretrained("facebook/flava-full")
>>> inputs = tokenizer("Hello, my dog is cute", return_tensors="pt")
>>> outputs = model(**inputs)
>>> last_hidden_states = outputs.last_hidden_state


Transformers 4.37 中文文档(八十六)(4)https://developer.aliyun.com/article/1563239

相关文章
|
4月前
|
机器学习/深度学习 存储 PyTorch
Transformers 4.37 中文文档(五十二)(3)
Transformers 4.37 中文文档(五十二)
32 0
|
4月前
|
PyTorch 算法框架/工具 索引
Transformers 4.37 中文文档(五十二)(2)
Transformers 4.37 中文文档(五十二)
28 0
|
4月前
|
PyTorch 算法框架/工具 开发工具
Transformers 4.37 中文文档(八十六)(5)
Transformers 4.37 中文文档(八十六)
47 4
|
4月前
|
存储 编解码 JSON
Transformers 4.37 中文文档(八十六)(1)
Transformers 4.37 中文文档(八十六)
47 3
|
4月前
|
存储 编解码 PyTorch
Transformers 4.37 中文文档(八十六)(2)
Transformers 4.37 中文文档(八十六)
36 3
|
4月前
|
存储 PyTorch 开发工具
Transformers 4.37 中文文档(八十六)(4)
Transformers 4.37 中文文档(八十六)
27 3
|
4月前
|
编解码 PyTorch 算法框架/工具
Transformers 4.37 中文文档(七十一)(3)
Transformers 4.37 中文文档(七十一)
30 1
|
4月前
|
缓存 自然语言处理 PyTorch
Transformers 4.37 中文文档(五十七)(4)
Transformers 4.37 中文文档(五十七)
23 0
|
4月前
|
存储 自然语言处理 PyTorch
Transformers 4.37 中文文档(五十七)(3)
Transformers 4.37 中文文档(五十七)
19 0
|
4月前
|
缓存 PyTorch 算法框架/工具
Transformers 4.37 中文文档(五十七)(2)
Transformers 4.37 中文文档(五十七)
16 0