Transformers documentation

模型输出

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

模型输出

所有模型的输出都是 ModelOutput 子类的实例。这些是包含模型返回的所有信息的数据结构,但也可以作为元组或字典使用。

让我们通过一个示例来看看效果:

from transformers import BertTokenizer, BertForSequenceClassification
import torch

tokenizer = BertTokenizer.from_pretrained("google-bert/bert-base-uncased")
model = BertForSequenceClassification.from_pretrained("google-bert/bert-base-uncased")

inputs = tokenizer("Hello, my dog is cute", return_tensors="pt")
labels = torch.tensor([1]).unsqueeze(0)  # Batch size 1
outputs = model(**inputs, labels=labels)

outputs 对象是一个 SequenceClassifierOutput,正如我们可以在下方该类的文档中看到,这意味着它有一个可选的 loss、一个 logits、一个可选的 hidden_states 以及一个可选的 attentions 属性。在这里,由于我们传入了 labels,所以有 loss,但由于我们没有传入 output_hidden_states=True 或 output_attentions=True,所以没有 hidden_states 和 attentions。

当 output_hidden_states=True 时,outputs.hidden_states[-1] 并不总是与 outputs.last_hidden_state 相同的张量。许多视觉和音频编码器(例如 ViT、DINOv2、CLIP 和 Wav2Vec2)会在 hidden_states[-1] 中返回最后一层在最终 layernorm 之前 的输出,并在 last_hidden_state 中返回归一化后的输出。请使用 last_hidden_state 作为模型的最终特征。若要使 hidden_states[-1] 与 last_hidden_state 保持一致,请在模型配置中设置 tie_last_hidden_states=True。

您可以像往常一样访问每个属性,如果该属性未被模型返回,您将获得 None。例如,outputs.loss 是模型计算出的损失,而 outputs.attentions 为 None。

将 outputs 对象视为元组时,它只考虑那些值不为 None 的属性。 例如,这里它有两个元素,先是 loss,然后是 logits,因此

outputs[:2]

例如,将返回元组 (outputs.loss, outputs.logits)。

将我们的 outputs 对象视为字典时,它只包含那些值不为 None 的属性。例如,这里有两个键,分别是 loss 和 logits。

此处记录的是被多种模型类型共用的通用模型输出。特定输出类型将在其对应的模型页面上进行说明。

ModelOutput

class transformers.utils.ModelOutput

< >

( *args**kwargs )

所有模型输出的基类,以 dataclass 形式实现。具有 __getitem__ 方法,支持通过整数或切片(类似元组)或字符串(类似字典)进行索引,且会忽略 None 属性。其余行为与普通 Python 字典一致。

无法直接解包 ModelOutput。请先使用 to_tuple() 方法将其转换为元组。

to_tuple

< >

( )

将 self 转换为一个元组,其中包含所有不为 None 的属性/键。

BaseModelOutput

类 transformers.modeling_outputs.BaseModelOutput

< >

( last_hidden_state: typing.Optional[torch.Tensor] = Nonehidden_states: tuple[torch.Tensor, ...] | None = Noneattentions: tuple[torch.Tensor, ...] | None = None )

参数

  • last_hidden_state (torch.Tensor,形状为 (batch_size, sequence_length, hidden_size)) — 模型最后一层输出的隐藏状态序列。
  • hidden_states (tuple(torch.Tensor), 可选, 当传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,加上每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

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

  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

模型输出的基类,可能包含隐藏状态和注意力。

BaseModelOutputWithPooling

类 transformers.modeling_outputs.BaseModelOutputWithPooling

< >

( last_hidden_state: typing.Optional[torch.Tensor] = Nonepooler_output: typing.Optional[torch.Tensor] = Nonehidden_states: tuple[torch.Tensor, ...] | None = Noneattentions: tuple[torch.Tensor, ...] | None = None )

参数

  • last_hidden_state (torch.Tensor,形状为 (batch_size, sequence_length, hidden_size)) — 模型最后一层输出的隐藏状态序列。
  • pooler_output (torch.Tensor,形状为 (batch_size, hidden_size)) — 序列中第一个 token(分类 token)的最后一层隐藏状态,经过用于辅助预训练任务的层进一步处理后的结果。例如,对于 BERT 系列模型,这返回的是分类 token 经过线性层和 tanh 激活函数处理后的结果。线性层的权重在预训练期间通过下一句预测(分类)目标进行训练。
  • hidden_states (tuple(torch.Tensor), 可选, 当传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,加上每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

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

  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

模型输出的基类,同时包含最后一个隐藏状态的池化结果。

BaseModelOutputWithCrossAttentions

类 transformers.modeling_outputs.BaseModelOutputWithCrossAttentions

< >

( last_hidden_state: typing.Optional[torch.Tensor] = Nonehidden_states: tuple[torch.Tensor, ...] | None = Noneattentions: tuple[torch.Tensor, ...] | None = Nonecross_attentions: tuple[torch.Tensor, ...] | None = None )

参数

  • last_hidden_state (torch.Tensor,形状为 (batch_size, sequence_length, hidden_size)) — 模型最后一层输出的隐藏状态序列。
  • hidden_states (tuple(torch.Tensor), 可选, 当传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,加上每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

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

  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

  • cross_attentions (tuple(torch.Tensor), 可选, 当 output_attentions=True 且 config.add_cross_attention=True 被传入时,或当 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

    解码器交叉注意力层在注意力 softmax 之后的注意力权重,用于在交叉注意力头中计算加权平均值。

模型输出的基类,可能包含隐藏状态和注意力。

BaseModelOutputWithPoolingAndCrossAttentions

class transformers.modeling_outputs.BaseModelOutputWithPoolingAndCrossAttentions

< >

( last_hidden_state: typing.Optional[torch.Tensor] = Nonepooler_output: typing.Optional[torch.Tensor] = Nonehidden_states: tuple[torch.Tensor, ...] | None = Nonepast_key_values: transformers.cache_utils.Cache | None = Noneattentions: tuple[torch.Tensor, ...] | None = Nonecross_attentions: tuple[torch.Tensor, ...] | None = None )

参数

  • last_hidden_state (torch.Tensor,形状为 (batch_size, sequence_length, hidden_size)) — 模型最后一层输出的隐藏状态序列。
  • pooler_output (torch.Tensor,形状为 (batch_size, hidden_size)) — 序列中第一个 token(分类 token)的最后一层隐藏状态,经过用于辅助预训练任务的层进一步处理后的结果。例如,对于 BERT 系列模型,这返回的是分类 token 经过线性层和 tanh 激活函数处理后的结果。线性层的权重在预训练期间通过下一句预测(分类)目标进行训练。
  • hidden_states (tuple(torch.Tensor), 可选, 当传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,加上每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

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

  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

  • cross_attentions (tuple(torch.Tensor), 可选, 当 output_attentions=True 且 config.add_cross_attention=True 被传入时,或当 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

    解码器交叉注意力层在注意力 softmax 之后的注意力权重,用于在交叉注意力头中计算加权平均值。

  • past_key_values (Cache, 可选, 在以下情况下返回 use_cache=True 被传入或 config.use_cache=True) — 它是一个 Cache 实例。有关更多详细信息,请参阅我们的 kv cache 指南.

    包含预计算的隐藏状态(自注意力块中的键和值,以及如果 config.is_encoder_decoder=True 则还包括交叉注意力块中的键和值),可用于(参见 past_key_values 输入)加速顺序解码。

模型输出的基类,同时包含最后一个隐藏状态的池化结果。

BaseModelOutputWithPast

类 transformers.modeling_outputs.BaseModelOutputWithPast

< >

( last_hidden_state: typing.Optional[torch.Tensor] = Nonepast_key_values: transformers.cache_utils.Cache | None = Nonehidden_states: tuple[torch.Tensor, ...] | None = Noneattentions: tuple[torch.Tensor, ...] | None = None )

参数

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

    如果使用了 past_key_values,则仅输出形状为 (batch_size, 1, hidden_size) 的序列的最后一个隐藏状态。

  • past_key_values (Cache, 可选, 在以下情况下返回 use_cache=True 被传入或 config.use_cache=True) — 它是一个 Cache 实例。有关更多详细信息,请参阅我们的 kv cache 指南.

    包含预计算的隐藏状态(自注意力块中的键和值,以及如果 config.is_encoder_decoder=True 则还包括交叉注意力块中的键和值),可用于(参见 past_key_values 输入)加速顺序解码。

  • hidden_states (tuple(torch.Tensor), 可选, 当传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,加上每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

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

  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

模型输出的基类,其中可能还包含过去的键/值(以加速顺序解码)。

BaseModelOutputWithPastAndCrossAttentions

class transformers.modeling_outputs.BaseModelOutputWithPastAndCrossAttentions

< >

( last_hidden_state: typing.Optional[torch.Tensor] = Nonepast_key_values: transformers.cache_utils.Cache | None = Nonehidden_states: tuple[torch.Tensor, ...] | None = Noneattentions: tuple[torch.Tensor, ...] | None = Nonecross_attentions: tuple[torch.Tensor, ...] | None = None )

参数

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

    如果使用了 past_key_values,则仅输出形状为 (batch_size, 1, hidden_size) 的序列的最后一个隐藏状态。

  • past_key_values (Cache, 可选, 在以下情况下返回 use_cache=True 被传入或 config.use_cache=True) — 它是一个 Cache 实例。有关更多详细信息,请参阅我们的 kv cache 指南.

    包含预计算的隐藏状态(自注意力块中的键和值,以及如果 config.is_encoder_decoder=True 则还包括交叉注意力块中的键和值),可用于(参见 past_key_values 输入)加速顺序解码。

  • hidden_states (tuple(torch.Tensor), 可选, 当传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,加上每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

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

  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

  • cross_attentions (tuple(torch.Tensor), 可选, 当 output_attentions=True 且 config.add_cross_attention=True 被传入时,或当 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

    解码器交叉注意力层在注意力 softmax 之后的注意力权重,用于在交叉注意力头中计算加权平均值。

模型输出的基类,其中可能还包含过去的键/值(以加速顺序解码)。

Seq2SeqModelOutput

类 transformers.modeling_outputs.Seq2SeqModelOutput

< >

( last_hidden_state: typing.Optional[torch.Tensor] = Nonepast_key_values: transformers.cache_utils.EncoderDecoderCache | None = Nonedecoder_hidden_states: tuple[torch.Tensor, ...] | None = Nonedecoder_attentions: tuple[torch.Tensor, ...] | None = Nonecross_attentions: tuple[torch.Tensor, ...] | None = Noneencoder_last_hidden_state: typing.Optional[torch.Tensor] = Noneencoder_hidden_states: tuple[torch.Tensor, ...] | None = Noneencoder_attentions: tuple[torch.Tensor, ...] | None = None )

参数

  • last_hidden_state (torch.Tensor 形状为 (batch_size, sequence_length, hidden_size)) — 模型解码器最后一层输出的隐藏状态序列。

    如果使用了 past_key_values,则仅输出形状为 (batch_size, 1, hidden_size) 的序列的最后一个隐藏状态。

  • past_key_values (EncoderDecoderCache, 可选, 在以下情况下返回 use_cache=True 被传入或 config.use_cache=True) — 它是一个 EncoderDecoderCache 实例。有关更多详细信息,请参阅我们的 kv cache 指南.

    包含预计算的隐藏状态(自注意力块和交叉注意力块中的键和值),可用于(参见 past_key_values 输入)加速顺序解码。

  • decoder_hidden_states (tuple(torch.Tensor), 可选, 在传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,加上每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

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

  • decoder_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

  • cross_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

    解码器交叉注意力层在注意力 softmax 之后的注意力权重,用于在交叉注意力头中计算加权平均值。

  • encoder_last_hidden_state (torch.Tensor,形状为 (batch_size, sequence_length, hidden_size),可选) — 模型编码器最后一层输出的隐藏状态序列。
  • encoder_hidden_states (tuple(torch.Tensor), 可选, 当 output_hidden_states=True 被传入或 config.output_hidden_states=True) — 元组,包含 torch.Tensor ((如果模型有嵌入层,则包含嵌入层的输出,加上每一层的输出) (batch_size, sequence_length, hidden_size).

    编码器每层输出处的隐藏状态,以及可选的初始嵌入输出。

  • encoder_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

模型编码器输出的基类,同时包含:可加速顺序解码的预计算隐藏状态。

CausalLMOutput

class transformers.modeling_outputs.CausalLMOutput

< >

( loss: typing.Optional[torch.Tensor] = Nonelogits: typing.Optional[torch.Tensor] = Nonehidden_states: tuple[torch.Tensor, ...] | None = Noneattentions: tuple[torch.Tensor, ...] | None = None )

参数

  • loss (torch.Tensor,形状为 (1,),可选,在提供 labels 时返回) — 语言建模损失(用于下一个词元预测)。
  • logits (torch.Tensor,形状为 (batch_size, sequence_length, config.vocab_size)) — 语言建模头的预测分数(SoftMax 之前每个词汇表 token 的分数)。
  • hidden_states (tuple(torch.Tensor), 可选, 当传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,加上每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

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

  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

因果语言模型(或自回归)输出的基类。

CausalLMOutputWithCrossAttentions

类 transformers.modeling_outputs.CausalLMOutputWithCrossAttentions

< >

( loss: typing.Optional[torch.Tensor] = Nonelogits: typing.Optional[torch.Tensor] = Nonepast_key_values: transformers.cache_utils.Cache | None = Nonehidden_states: tuple[torch.Tensor, ...] | None = Noneattentions: tuple[torch.Tensor, ...] | None = Nonecross_attentions: tuple[torch.Tensor, ...] | None = None )

参数

  • loss (torch.Tensor,形状为 (1,),可选,在提供 labels 时返回) — 语言建模损失(用于下一个词元预测)。
  • logits (torch.Tensor,形状为 (batch_size, sequence_length, config.vocab_size)) — 语言建模头的预测分数(SoftMax 之前每个词汇表 token 的分数)。
  • hidden_states (tuple(torch.Tensor), 可选, 当传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,加上每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

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

  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

  • cross_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

  • past_key_values (Cache, 可选, 在以下情况下返回 use_cache=True 被传入或 config.use_cache=True) — 它是一个 Cache 实例。有关更多详细信息,请参阅我们的 kv cache 指南.

    包含预计算的隐藏状态(注意力块中的键和值),可用于(参见 past_key_values 输入)加速顺序解码。

因果语言模型(或自回归)输出的基类。

CausalLMOutputWithPast

类 transformers.modeling_outputs.CausalLMOutputWithPast

< >

( loss: typing.Optional[torch.Tensor] = Nonelogits: typing.Optional[torch.Tensor] = Nonepast_key_values: transformers.cache_utils.Cache | None = Nonehidden_states: tuple[torch.Tensor, ...] | None = Noneattentions: tuple[torch.Tensor, ...] | None = None )

参数

  • loss (torch.Tensor,形状为 (1,),可选,在提供 labels 时返回) — 语言建模损失(用于下一个词元预测)。
  • logits (torch.Tensor,形状为 (batch_size, sequence_length, config.vocab_size)) — 语言建模头的预测分数(SoftMax 之前每个词汇表 token 的分数)。
  • past_key_values (Cache, 可选, 在以下情况下返回 use_cache=True 被传入或 config.use_cache=True) — 它是一个 Cache 实例。有关更多详细信息,请参阅我们的 kv cache 指南.

    包含预计算的隐藏状态(自注意力块中的键和值),可用于(参见 past_key_values 输入)加速顺序解码。

  • hidden_states (tuple(torch.Tensor), 可选, 当传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,加上每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

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

  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

因果语言模型(或自回归)输出的基类。

MaskedLMOutput

class transformers.modeling_outputs.MaskedLMOutput

< >

( loss: typing.Optional[torch.Tensor] = Nonelogits: typing.Optional[torch.Tensor] = Nonehidden_states: tuple[torch.Tensor, ...] | None = Noneattentions: tuple[torch.Tensor, ...] | None = None )

参数

  • loss (torch.Tensor,形状为 (1,),可选,在提供 labels 时返回) — 掩码语言建模(MLM)损失。
  • logits (torch.Tensor,形状为 (batch_size, sequence_length, config.vocab_size)) — 语言建模头的预测分数(SoftMax 之前每个词汇表 token 的分数)。
  • hidden_states (tuple(torch.Tensor), 可选, 当传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,加上每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

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

  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

掩码语言模型输出的基类。

Seq2SeqLMOutput

class transformers.modeling_outputs.Seq2SeqLMOutput

< >

( loss: typing.Optional[torch.Tensor] = Nonelogits: typing.Optional[torch.Tensor] = Nonepast_key_values: transformers.cache_utils.EncoderDecoderCache | None = Nonedecoder_hidden_states: tuple[torch.Tensor, ...] | None = Nonedecoder_attentions: tuple[torch.Tensor, ...] | None = Nonecross_attentions: tuple[torch.Tensor, ...] | None = Noneencoder_last_hidden_state: typing.Optional[torch.Tensor] = Noneencoder_hidden_states: tuple[torch.Tensor, ...] | None = Noneencoder_attentions: tuple[torch.Tensor, ...] | None = None )

参数

  • loss (torch.Tensor,形状为 (1,),可选,在提供 labels 时返回) — 语言建模损失。
  • logits (torch.Tensor,形状为 (batch_size, sequence_length, config.vocab_size)) — 语言建模头的预测分数(SoftMax 之前每个词汇表 token 的分数)。
  • past_key_values (EncoderDecoderCache, 可选, 在以下情况下返回 use_cache=True 被传入或 config.use_cache=True) — 它是一个 EncoderDecoderCache 实例。有关更多详细信息,请参阅我们的 kv cache 指南.

    包含预计算的隐藏状态(自注意力块和交叉注意力块中的键和值),可用于(参见 past_key_values 输入)加速顺序解码。

  • decoder_hidden_states (tuple(torch.Tensor), 可选, 在传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,以及每个层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

    解码器在每一层输出处的隐藏状态,以及初始嵌入输出。

  • decoder_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

  • cross_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

    解码器交叉注意力层在注意力 softmax 之后的注意力权重,用于在交叉注意力头中计算加权平均值。

  • encoder_last_hidden_state (torch.Tensor,形状为 (batch_size, sequence_length, hidden_size),可选) — 模型编码器最后一层输出的隐藏状态序列。
  • encoder_hidden_states (tuple(torch.Tensor), 可选, 当 output_hidden_states=True 被传入或 config.output_hidden_states=True) — 元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,以及每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

    编码器在每一层输出处的隐藏状态,以及初始嵌入输出。

  • encoder_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

序列到序列语言模型输出的基类。

NextSentencePredictorOutput

类 transformers.modeling_outputs.NextSentencePredictorOutput

< >

( loss: typing.Optional[torch.Tensor] = Nonelogits: typing.Optional[torch.Tensor] = Nonehidden_states: tuple[torch.Tensor, ...] | None = Noneattentions: tuple[torch.Tensor, ...] | None = None )

参数

  • loss (torch.Tensor,形状为 (1,),可选,在提供 next_sentence_label 时返回) — 下一句预测(分类)损失。
  • logits (torch.Tensor,形状为 (batch_size, 2)) — 下一个序列预测(分类)头的预测分数(SoftMax 之前 True/False 延续的分数)。
  • hidden_states (tuple(torch.Tensor), 可选, 当传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,加上每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

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

  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

用于预测两个句子是否连续的模型输出的基类。

SequenceClassifierOutput

类 transformers.modeling_outputs.SequenceClassifierOutput

< >

( loss: typing.Optional[torch.Tensor] = Nonelogits: typing.Optional[torch.Tensor] = Nonehidden_states: tuple[torch.Tensor, ...] | None = Noneattentions: tuple[torch.Tensor, ...] | None = None )

参数

  • loss (torch.Tensor,形状为 (1,),可选,在提供 labels 时返回) — 分类损失(如果 config.num_labels==1,则为回归损失)。
  • logits(形状为 (batch_size, config.num_labels) 的 torch.Tensor)— 分类(如果 config.num_labels==1 则为回归)得分(SoftMax 之前)。
  • hidden_states (tuple(torch.Tensor), 可选, 当传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,加上每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

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

  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

句子分类模型输出的基类。

Seq2SeqSequenceClassifierOutput

类 transformers.modeling_outputs.Seq2SeqSequenceClassifierOutput

< >

( loss: typing.Optional[torch.Tensor] = Nonelogits: typing.Optional[torch.Tensor] = Nonepast_key_values: transformers.cache_utils.EncoderDecoderCache | None = Nonedecoder_hidden_states: tuple[torch.Tensor, ...] | None = Nonedecoder_attentions: tuple[torch.Tensor, ...] | None = Nonecross_attentions: tuple[torch.Tensor, ...] | None = Noneencoder_last_hidden_state: typing.Optional[torch.Tensor] = Noneencoder_hidden_states: tuple[torch.Tensor, ...] | None = Noneencoder_attentions: tuple[torch.Tensor, ...] | None = None )

参数

  • loss (torch.Tensor,形状为 (1,),可选,在提供 label 时返回) — 分类损失(如果 config.num_labels==1,则为回归损失)。
  • logits(形状为 (batch_size, config.num_labels) 的 torch.Tensor)— 分类(如果 config.num_labels==1 则为回归)得分(SoftMax 之前)。
  • past_key_values (EncoderDecoderCache, 可选, 在以下情况下返回 use_cache=True 被传入或 config.use_cache=True) — 它是一个 EncoderDecoderCache 实例。有关更多详细信息,请参阅我们的 kv cache 指南.

    包含预计算的隐藏状态(自注意力块和交叉注意力块中的键和值),可用于(参见 past_key_values 输入)加速顺序解码。

  • decoder_hidden_states (tuple(torch.Tensor), 可选, 在传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,以及每个层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

    解码器在每一层输出处的隐藏状态,以及初始嵌入输出。

  • decoder_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

  • cross_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

    解码器交叉注意力层在注意力 softmax 之后的注意力权重,用于在交叉注意力头中计算加权平均值。

  • encoder_last_hidden_state (torch.Tensor,形状为 (batch_size, sequence_length, hidden_size),可选) — 模型编码器最后一层输出的隐藏状态序列。
  • encoder_hidden_states (tuple(torch.Tensor), 可选, 当 output_hidden_states=True 被传入或 config.output_hidden_states=True) — 元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,以及每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

    编码器在每一层输出处的隐藏状态,以及初始嵌入输出。

  • encoder_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

序列到序列句子分类模型输出的基类。

MultipleChoiceModelOutput

class transformers.modeling_outputs.MultipleChoiceModelOutput

< >

( loss: typing.Optional[torch.Tensor] = Nonelogits: typing.Optional[torch.Tensor] = Nonehidden_states: tuple[torch.Tensor, ...] | None = Noneattentions: tuple[torch.Tensor, ...] | None = None )

参数

  • loss (torch.Tensor,形状为 (1,),可选,在提供 labels 时返回) — 分类损失。
  • logits (torch.Tensor 形状为 (batch_size, num_choices)) — num_choices 是输入张量的第二维。(参见 input_ids )。

    分类分数(SoftMax 之前)。

  • hidden_states (tuple(torch.Tensor), 可选, 当传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,加上每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

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

  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

多选模型输出的基类。

TokenClassifierOutput

class transformers.modeling_outputs.TokenClassifierOutput

< >

( loss: typing.Optional[torch.Tensor] = Nonelogits: typing.Optional[torch.Tensor] = Nonehidden_states: tuple[torch.Tensor, ...] | None = Noneattentions: tuple[torch.Tensor, ...] | None = None )

参数

  • loss (torch.Tensor,形状为 (1,),可选,在提供 labels 时返回) — 分类损失。
  • logits(形状为 (batch_size, sequence_length, config.num_labels) 的 torch.Tensor)— 分类分数(SoftMax 之前)。
  • hidden_states (tuple(torch.Tensor), 可选, 当传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,加上每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

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

  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

用于标记分类模型输出的基类。

QuestionAnsweringModelOutput

class transformers.modeling_outputs.QuestionAnsweringModelOutput

< >

( loss: typing.Optional[torch.Tensor] = Nonestart_logits: typing.Optional[torch.Tensor] = Noneend_logits: typing.Optional[torch.Tensor] = Nonehidden_states: tuple[torch.Tensor, ...] | None = Noneattentions: tuple[torch.Tensor, ...] | None = None )

参数

  • loss (torch.Tensor,形状为 (1,),可选,在提供 labels 时返回) — 总跨度提取损失是起始位置和结束位置的交叉熵之和。
  • start_logits(形状为 (batch_size, sequence_length) 的 torch.Tensor)— 跨度起始分数(SoftMax 之前)。
  • end_logits(形状为 (batch_size, sequence_length) 的 torch.Tensor)— 跨度结束分数(SoftMax 之前)。
  • hidden_states (tuple(torch.Tensor), 可选, 当传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,加上每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

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

  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

问答模型输出的基类。

Seq2SeqQuestionAnsweringModelOutput

class transformers.modeling_outputs.Seq2SeqQuestionAnsweringModelOutput

< >

( loss: typing.Optional[torch.Tensor] = Nonestart_logits: typing.Optional[torch.Tensor] = Noneend_logits: typing.Optional[torch.Tensor] = Nonepast_key_values: transformers.cache_utils.EncoderDecoderCache | None = Nonedecoder_hidden_states: tuple[torch.Tensor, ...] | None = Nonedecoder_attentions: tuple[torch.Tensor, ...] | None = Nonecross_attentions: tuple[torch.Tensor, ...] | None = Noneencoder_last_hidden_state: typing.Optional[torch.Tensor] = Noneencoder_hidden_states: tuple[torch.Tensor, ...] | None = Noneencoder_attentions: tuple[torch.Tensor, ...] | None = None )

参数

  • loss (torch.Tensor,形状为 (1,),可选,在提供 labels 时返回) — 总跨度提取损失是起始位置和结束位置的交叉熵之和。
  • start_logits(形状为 (batch_size, sequence_length) 的 torch.Tensor)— 跨度起始分数(SoftMax 之前)。
  • end_logits(形状为 (batch_size, sequence_length) 的 torch.Tensor)— 跨度结束分数(SoftMax 之前)。
  • past_key_values (EncoderDecoderCache, 可选, 在以下情况下返回 use_cache=True 被传入或 config.use_cache=True) — 它是一个 EncoderDecoderCache 实例。有关更多详细信息,请参阅我们的 kv cache 指南.

    包含预计算的隐藏状态(自注意力块和交叉注意力块中的键和值),可用于(参见 past_key_values 输入)加速顺序解码。

  • decoder_hidden_states (tuple(torch.Tensor), 可选, 在传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,以及每个层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

    解码器在每一层输出处的隐藏状态,以及初始嵌入输出。

  • decoder_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

  • cross_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

    解码器交叉注意力层在注意力 softmax 之后的注意力权重,用于在交叉注意力头中计算加权平均值。

  • encoder_last_hidden_state (torch.Tensor,形状为 (batch_size, sequence_length, hidden_size),可选) — 模型编码器最后一层输出的隐藏状态序列。
  • encoder_hidden_states (tuple(torch.Tensor), 可选, 当 output_hidden_states=True 被传入或 config.output_hidden_states=True) — 元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,以及每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

    编码器在每一层输出处的隐藏状态,以及初始嵌入输出。

  • encoder_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

序列到序列问答模型输出的基类。

Seq2SeqSpectrogramOutput

class transformers.modeling_outputs.Seq2SeqSpectrogramOutput

< >

( loss: typing.Optional[torch.Tensor] = Nonespectrogram: typing.Optional[torch.Tensor] = Nonepast_key_values: transformers.cache_utils.EncoderDecoderCache | None = Nonedecoder_hidden_states: tuple[torch.Tensor, ...] | None = Nonedecoder_attentions: tuple[torch.Tensor, ...] | None = Nonecross_attentions: tuple[torch.Tensor, ...] | None = Noneencoder_last_hidden_state: typing.Optional[torch.Tensor] = Noneencoder_hidden_states: tuple[torch.Tensor, ...] | None = Noneencoder_attentions: tuple[torch.Tensor, ...] | None = None )

参数

  • loss (torch.Tensor,形状为 (1,),可选,在提供 labels 时返回) — 频谱图生成损失。
  • spectrogram(形状为 (batch_size, sequence_length, num_bins) 的 torch.Tensor)— 预测的频谱图。
  • past_key_values (EncoderDecoderCache, 可选, 在以下情况下返回 use_cache=True 被传入或 config.use_cache=True) — 它是一个 EncoderDecoderCache 实例。有关更多详细信息,请参阅我们的 kv cache 指南.

    包含预计算的隐藏状态(自注意力块和交叉注意力块中的键和值),可用于(参见 past_key_values 输入)加速顺序解码。

  • decoder_hidden_states (tuple(torch.Tensor), 可选, 在传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,以及每个层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

    解码器在每一层输出处的隐藏状态,以及初始嵌入输出。

  • decoder_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

  • cross_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

    解码器交叉注意力层在注意力 softmax 之后的注意力权重,用于在交叉注意力头中计算加权平均值。

  • encoder_last_hidden_state (torch.Tensor,形状为 (batch_size, sequence_length, hidden_size),可选) — 模型编码器最后一层输出的隐藏状态序列。
  • encoder_hidden_states (tuple(torch.Tensor), 可选, 当 output_hidden_states=True 被传入或 config.output_hidden_states=True) — 元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,以及每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

    编码器在每一层输出处的隐藏状态,以及初始嵌入输出。

  • encoder_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

序列到序列频谱输出的基类。

SemanticSegmenterOutput

class transformers.modeling_outputs.SemanticSegmenterOutput

< >

( loss: typing.Optional[torch.Tensor] = Nonelogits: typing.Optional[torch.Tensor] = Nonehidden_states: tuple[torch.Tensor, ...] | None = Noneattentions: tuple[torch.Tensor, ...] | None = None )

参数

  • loss (torch.Tensor,形状为 (1,),可选,在提供 labels 时返回) — 分类损失(如果 config.num_labels==1,则为回归损失)。
  • logits (torch.Tensor 形状为 (batch_size, config.num_labels, logits_height, logits_width)) — 每个像素的分类分数。返回的 logits 不一定与作为输入传入的 pixel_values 具有相同的大小。这是为了避免进行两次插值,从而在用户需要作为后处理将 logits 调整回原始图像大小时损失一些质量。您应该始终检查 logits 的形状,并根据需要进行调整。

    返回的 logits 的大小不一定与作为输入传入的 pixel_values 相同。这样做的目的是避免进行两次插值,从而在用户需要作为后处理将 logits 调整回原始图像大小时损失一些质量。您应始终检查 logits 的形状,并根据需要进行调整。

  • hidden_states (tuple(torch.Tensor), 可选, 当传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,加上每一层输出的一个张量),形状为 (batch_size, patch_size, hidden_size).

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

  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, patch_size, sequence_length).

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

语义分割模型输出的基类。

ImageClassifierOutput

类 transformers.modeling_outputs.ImageClassifierOutput

< >

( loss: typing.Optional[torch.Tensor] = Nonelogits: typing.Optional[torch.Tensor] = Nonehidden_states: tuple[torch.Tensor, ...] | None = Noneattentions: tuple[torch.Tensor, ...] | None = None )

参数

  • loss (torch.Tensor,形状为 (1,),可选,在提供 labels 时返回) — 分类损失(如果 config.num_labels==1,则为回归损失)。
  • logits(形状为 (batch_size, config.num_labels) 的 torch.Tensor)— 分类(如果 config.num_labels==1 则为回归)得分(SoftMax 之前)。
  • hidden_states (tuple(torch.Tensor),可选,在传入 output_hidden_states=True 或 config.output_hidden_states=True 时返回) — torch.Tensor 的元组(如果模型具有嵌入层,则包含嵌入层输出的一个张量,以及每个阶段输出的一个张量),形状为 (batch_size, sequence_length, hidden_size)。模型在每个阶段输出处的隐藏状态(也称为特征图)。
  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, patch_size, sequence_length).

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

图像分类模型输出的基类。

ImageClassifierOutputWithNoAttention

类 transformers.modeling_outputs.ImageClassifierOutputWithNoAttention

< >

( loss: typing.Optional[torch.Tensor] = Nonelogits: typing.Optional[torch.Tensor] = Nonehidden_states: tuple[torch.Tensor, ...] | None = None )

参数

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

图像分类模型输出的基类。

DepthEstimatorOutput

class transformers.modeling_outputs.DepthEstimatorOutput

< >

( loss: typing.Optional[torch.Tensor] = Nonepredicted_depth: typing.Optional[torch.Tensor] = Nonehidden_states: tuple[torch.Tensor, ...] | None = Noneattentions: tuple[torch.Tensor, ...] | None = None )

参数

  • loss (torch.Tensor,形状为 (1,),可选,在提供 labels 时返回) — 分类损失(如果 config.num_labels==1,则为回归损失)。
  • predicted_depth(形状为 (batch_size, height, width) 的 torch.Tensor)— 每个像素的预测深度。
  • hidden_states (tuple(torch.Tensor), 可选, 当传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,加上每一层输出的一个张量),形状为 (batch_size, num_channels, height, width).

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

  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, patch_size, sequence_length).

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

深度估计模型输出的基类。

Wav2Vec2BaseModelOutput

class transformers.modeling_outputs.Wav2Vec2BaseModelOutput

< >

( last_hidden_state: typing.Optional[torch.Tensor] = Noneextract_features: typing.Optional[torch.Tensor] = Nonehidden_states: tuple[torch.Tensor, ...] | None = Noneattentions: tuple[torch.Tensor, ...] | None = None )

参数

  • last_hidden_state (torch.Tensor,形状为 (batch_size, sequence_length, hidden_size)) — 模型最后一层输出的隐藏状态序列。
  • extract_features (torch.Tensor,形状为 (batch_size, sequence_length, conv_dim[-1])) — 模型最后一个卷积层提取的特征向量序列。
  • hidden_states (tuple(torch.Tensor), 可选, 当传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((嵌入层输出一个 + 每层输出各一个),形状为 (batch_size, sequence_length, hidden_size).

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

  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

使用 Wav2Vec2 损失目标进行训练的模型基类。

XVectorOutput

class transformers.modeling_outputs.XVectorOutput

< >

( loss: typing.Optional[torch.Tensor] = Nonelogits: typing.Optional[torch.Tensor] = Noneembeddings: typing.Optional[torch.Tensor] = Nonehidden_states: tuple[torch.Tensor, ...] | None = Noneattentions: tuple[torch.Tensor, ...] | None = None )

参数

  • loss (torch.Tensor,形状为 (1,),可选,在提供 labels 时返回) — 分类损失。
  • logits (torch.Tensor,形状为 (batch_size, config.xvector_output_dim)) — AMSoftmax 之前的分类隐藏状态。
  • embeddings (torch.Tensor,形状为 (batch_size, config.xvector_output_dim)) — 用于基于向量相似性检索的语句嵌入。
  • hidden_states (tuple(torch.Tensor), 可选, 当传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((嵌入层输出一个 + 每层输出各一个),形状为 (batch_size, sequence_length, hidden_size).

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

  • attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

Wav2Vec2ForXVector 的输出类型。

Seq2SeqTSModelOutput

class transformers.modeling_outputs.Seq2SeqTSModelOutput

< >

( last_hidden_state: typing.Optional[torch.Tensor] = Nonepast_key_values: transformers.cache_utils.EncoderDecoderCache | None = Nonedecoder_hidden_states: tuple[torch.Tensor, ...] | None = Nonedecoder_attentions: tuple[torch.Tensor, ...] | None = Nonecross_attentions: tuple[torch.Tensor, ...] | None = Noneencoder_last_hidden_state: typing.Optional[torch.Tensor] = Noneencoder_hidden_states: tuple[torch.Tensor, ...] | None = Noneencoder_attentions: tuple[torch.Tensor, ...] | None = Noneloc: typing.Optional[torch.Tensor] = Nonescale: typing.Optional[torch.Tensor] = Nonestatic_features: typing.Optional[torch.Tensor] = None )

参数

  • last_hidden_state (torch.Tensor 形状为 (batch_size, sequence_length, hidden_size)) — 模型解码器最后一层输出的隐藏状态序列。

    如果使用了 past_key_values,则仅输出形状为 (batch_size, 1, hidden_size) 的序列的最后一个隐藏状态。

  • past_key_values (EncoderDecoderCache, 可选, 在以下情况下返回 use_cache=True 被传入或 config.use_cache=True) — 它是一个 EncoderDecoderCache 实例。有关更多详细信息,请参阅我们的 kv cache 指南.

    包含预计算的隐藏状态(自注意力块和交叉注意力块中的键和值),可用于(参见 past_key_values 输入)加速顺序解码。

  • decoder_hidden_states (tuple(torch.Tensor), 可选, 在传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,加上每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

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

  • decoder_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

  • cross_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

    解码器交叉注意力层在注意力 softmax 之后的注意力权重,用于在交叉注意力头中计算加权平均值。

  • encoder_last_hidden_state (torch.Tensor,形状为 (batch_size, sequence_length, hidden_size),可选) — 模型编码器最后一层输出的隐藏状态序列。
  • encoder_hidden_states (tuple(torch.Tensor), 可选, 当 output_hidden_states=True 被传入或 config.output_hidden_states=True) — 元组,包含 torch.Tensor ((如果模型有嵌入层,则包含嵌入层的输出,加上每一层的输出) (batch_size, sequence_length, hidden_size).

    编码器每层输出处的隐藏状态,以及可选的初始嵌入输出。

  • encoder_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

  • loc (torch.Tensor,形状为 (batch_size,) 或 (batch_size, input_size),可选) — 平移每个时间序列上下文窗口的值,用于向模型提供具有相同量级的输入,随后再平移回原始量级。
  • scale (torch.Tensor,形状为 (batch_size,) 或 (batch_size, input_size),可选) — 用于缩放每个时间序列上下文窗口的值,以便为模型提供量级相同的输入,随后再将其缩放回原始量级。
  • static_features (torch.Tensor,形状为 (batch_size, feature size),可选) — 批次中每个时间序列的静态特征,在推理时会被复制到协变量中。

时间序列模型编码器输出的基类,其中还包含可加速顺序解码的预计算隐藏状态。

Seq2SeqTSPredictionOutput

类 transformers.modeling_outputs.Seq2SeqTSPredictionOutput

< >

( loss: typing.Optional[torch.Tensor] = Noneparams: tuple[torch.Tensor, ...] | None = Nonepast_key_values: transformers.cache_utils.EncoderDecoderCache | None = Nonedecoder_hidden_states: tuple[torch.Tensor, ...] | None = Nonedecoder_attentions: tuple[torch.Tensor, ...] | None = Nonecross_attentions: tuple[torch.Tensor, ...] | None = Noneencoder_last_hidden_state: typing.Optional[torch.Tensor] = Noneencoder_hidden_states: tuple[torch.Tensor, ...] | None = Noneencoder_attentions: tuple[torch.Tensor, ...] | None = Noneloc: typing.Optional[torch.Tensor] = Nonescale: typing.Optional[torch.Tensor] = Nonestatic_features: typing.Optional[torch.Tensor] = None )

参数

  • loss (torch.Tensor,形状为 (1,),可选,在提供 future_values 时返回) — 分布损失。
  • params(形状为 (batch_size, num_samples, num_params) 的 torch.Tensor)— 所选分布的参数。
  • past_key_values (EncoderDecoderCache, 可选, 在以下情况下返回 use_cache=True 被传入或 config.use_cache=True) — 它是一个 EncoderDecoderCache 实例。有关更多详细信息,请参阅我们的 kv cache 指南.

    包含预计算的隐藏状态(自注意力块和交叉注意力块中的键和值),可用于(参见 past_key_values 输入)加速顺序解码。

  • decoder_hidden_states (tuple(torch.Tensor), 可选, 在传入 output_hidden_states=True 或 config.output_hidden_states=True) — 的元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,以及每个层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

    解码器在每一层输出处的隐藏状态,以及初始嵌入输出。

  • decoder_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

  • cross_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

    解码器交叉注意力层在注意力 softmax 之后的注意力权重,用于在交叉注意力头中计算加权平均值。

  • encoder_last_hidden_state (torch.Tensor,形状为 (batch_size, sequence_length, hidden_size),可选) — 模型编码器最后一层输出的隐藏状态序列。
  • encoder_hidden_states (tuple(torch.Tensor), 可选, 当 output_hidden_states=True 被传入或 config.output_hidden_states=True) — 元组 torch.Tensor ((如果模型有嵌入层,则包含嵌入层输出的一个张量,以及每一层输出的一个张量),形状为 (batch_size, sequence_length, hidden_size).

    编码器在每一层输出处的隐藏状态,以及初始嵌入输出。

  • encoder_attentions (tuple(torch.Tensor), 可选, 在传入 output_attentions=True 或 config.output_attentions=True) — 的元组 torch.Tensor ((每层一个),形状为 (batch_size, num_heads, sequence_length, sequence_length).

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

  • loc (torch.Tensor,形状为 (batch_size,) 或 (batch_size, input_size),可选) — 平移每个时间序列上下文窗口的值,用于向模型提供具有相同量级的输入,随后再平移回原始量级。
  • scale (torch.Tensor,形状为 (batch_size,) 或 (batch_size, input_size),可选) — 用于缩放每个时间序列上下文窗口的值,以便为模型提供量级相同的输入,随后再将其缩放回原始量级。
  • static_features (torch.Tensor,形状为 (batch_size, feature size),可选) — 批次中每个时间序列的静态特征,在推理时会被复制到协变量中。

时间序列模型解码器输出的基类,其中还包含损失值以及所选分布的参数。

SampleTSPredictionOutput

class transformers.modeling_outputs.SampleTSPredictionOutput

< >

( sequences: typing.Optional[torch.Tensor] = None )

参数

  • sequences(形状为 (batch_size, num_samples, prediction_length) 或 (batch_size, num_samples, prediction_length, input_size) 的 torch.Tensor)— 从所选分布中采样的值。

时间序列模型预测输出的基类,包含从所选分布中采样的值。

Update on GitHub