transformers/docs/source/zh/main_classes/output.md

8.4 KiB

模型输出

所有模型的输出都是 [~utils.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 对象是 [~modeling_outputs.SequenceClassifierOutput],如下面该类的文档中所示,它表示它有一个可选的 loss,一个 logits,一个可选的 hidden_states 和一个可选的 attentions 属性。在这里,我们有 loss,因为我们传递了 labels,但我们没有 hidden_statesattentions,因为我们没有传递 output_hidden_states=Trueoutput_attentions=True

当传递 output_hidden_states=True 时,您可能希望 outputs.hidden_states[-1]outputs.last_hidden_states 完全匹配。然而,这并不总是成立。一些模型在返回最后的 hidden state时对其应用归一化或其他后续处理。

您可以像往常一样访问每个属性,如果模型未返回该属性,您将得到 None。在这里,例如,outputs.loss 是模型计算的损失,而 outputs.attentionsNone

当将我们的 outputs 对象视为元组时,它仅考虑那些没有 None 值的属性。例如这里它有两个元素,losslogits,所以

outputs[:2]

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

将我们的 outputs 对象视为字典时,它仅考虑那些没有 None 值的属性。例如在这里它有两个键,分别是 losslogits

我们在这里记录了被多个类型模型使用的通用模型输出。特定输出类型在其相应的模型页面上有文档。

ModelOutput

autodoc utils.ModelOutput - to_tuple

BaseModelOutput

autodoc modeling_outputs.BaseModelOutput

BaseModelOutputWithPooling

autodoc modeling_outputs.BaseModelOutputWithPooling

BaseModelOutputWithCrossAttentions

autodoc modeling_outputs.BaseModelOutputWithCrossAttentions

BaseModelOutputWithPoolingAndCrossAttentions

autodoc modeling_outputs.BaseModelOutputWithPoolingAndCrossAttentions

BaseModelOutputWithPast

autodoc modeling_outputs.BaseModelOutputWithPast

BaseModelOutputWithPastAndCrossAttentions

autodoc modeling_outputs.BaseModelOutputWithPastAndCrossAttentions

Seq2SeqModelOutput

autodoc modeling_outputs.Seq2SeqModelOutput

CausalLMOutput

autodoc modeling_outputs.CausalLMOutput

CausalLMOutputWithCrossAttentions

autodoc modeling_outputs.CausalLMOutputWithCrossAttentions

CausalLMOutputWithPast

autodoc modeling_outputs.CausalLMOutputWithPast

MaskedLMOutput

autodoc modeling_outputs.MaskedLMOutput

Seq2SeqLMOutput

autodoc modeling_outputs.Seq2SeqLMOutput

NextSentencePredictorOutput

autodoc modeling_outputs.NextSentencePredictorOutput

SequenceClassifierOutput

autodoc modeling_outputs.SequenceClassifierOutput

Seq2SeqSequenceClassifierOutput

autodoc modeling_outputs.Seq2SeqSequenceClassifierOutput

MultipleChoiceModelOutput

autodoc modeling_outputs.MultipleChoiceModelOutput

TokenClassifierOutput

autodoc modeling_outputs.TokenClassifierOutput

QuestionAnsweringModelOutput

autodoc modeling_outputs.QuestionAnsweringModelOutput

Seq2SeqQuestionAnsweringModelOutput

autodoc modeling_outputs.Seq2SeqQuestionAnsweringModelOutput

Seq2SeqSpectrogramOutput

autodoc modeling_outputs.Seq2SeqSpectrogramOutput

SemanticSegmenterOutput

autodoc modeling_outputs.SemanticSegmenterOutput

ImageClassifierOutput

autodoc modeling_outputs.ImageClassifierOutput

ImageClassifierOutputWithNoAttention

autodoc modeling_outputs.ImageClassifierOutputWithNoAttention

DepthEstimatorOutput

autodoc modeling_outputs.DepthEstimatorOutput

Wav2Vec2BaseModelOutput

autodoc modeling_outputs.Wav2Vec2BaseModelOutput

XVectorOutput

autodoc modeling_outputs.XVectorOutput

Seq2SeqTSModelOutput

autodoc modeling_outputs.Seq2SeqTSModelOutput

Seq2SeqTSPredictionOutput

autodoc modeling_outputs.Seq2SeqTSPredictionOutput

SampleTSPredictionOutput

autodoc modeling_outputs.SampleTSPredictionOutput

TFBaseModelOutput

autodoc modeling_tf_outputs.TFBaseModelOutput

TFBaseModelOutputWithPooling

autodoc modeling_tf_outputs.TFBaseModelOutputWithPooling

TFBaseModelOutputWithPoolingAndCrossAttentions

autodoc modeling_tf_outputs.TFBaseModelOutputWithPoolingAndCrossAttentions

TFBaseModelOutputWithPast

autodoc modeling_tf_outputs.TFBaseModelOutputWithPast

TFBaseModelOutputWithPastAndCrossAttentions

autodoc modeling_tf_outputs.TFBaseModelOutputWithPastAndCrossAttentions

TFSeq2SeqModelOutput

autodoc modeling_tf_outputs.TFSeq2SeqModelOutput

TFCausalLMOutput

autodoc modeling_tf_outputs.TFCausalLMOutput

TFCausalLMOutputWithCrossAttentions

autodoc modeling_tf_outputs.TFCausalLMOutputWithCrossAttentions

TFCausalLMOutputWithPast

autodoc modeling_tf_outputs.TFCausalLMOutputWithPast

TFMaskedLMOutput

autodoc modeling_tf_outputs.TFMaskedLMOutput

TFSeq2SeqLMOutput

autodoc modeling_tf_outputs.TFSeq2SeqLMOutput

TFNextSentencePredictorOutput

autodoc modeling_tf_outputs.TFNextSentencePredictorOutput

TFSequenceClassifierOutput

autodoc modeling_tf_outputs.TFSequenceClassifierOutput

TFSeq2SeqSequenceClassifierOutput

autodoc modeling_tf_outputs.TFSeq2SeqSequenceClassifierOutput

TFMultipleChoiceModelOutput

autodoc modeling_tf_outputs.TFMultipleChoiceModelOutput

TFTokenClassifierOutput

autodoc modeling_tf_outputs.TFTokenClassifierOutput

TFQuestionAnsweringModelOutput

autodoc modeling_tf_outputs.TFQuestionAnsweringModelOutput

TFSeq2SeqQuestionAnsweringModelOutput

autodoc modeling_tf_outputs.TFSeq2SeqQuestionAnsweringModelOutput

FlaxBaseModelOutput

autodoc modeling_flax_outputs.FlaxBaseModelOutput

FlaxBaseModelOutputWithPast

autodoc modeling_flax_outputs.FlaxBaseModelOutputWithPast

FlaxBaseModelOutputWithPooling

autodoc modeling_flax_outputs.FlaxBaseModelOutputWithPooling

FlaxBaseModelOutputWithPastAndCrossAttentions

autodoc modeling_flax_outputs.FlaxBaseModelOutputWithPastAndCrossAttentions

FlaxSeq2SeqModelOutput

autodoc modeling_flax_outputs.FlaxSeq2SeqModelOutput

FlaxCausalLMOutputWithCrossAttentions

autodoc modeling_flax_outputs.FlaxCausalLMOutputWithCrossAttentions

FlaxMaskedLMOutput

autodoc modeling_flax_outputs.FlaxMaskedLMOutput

FlaxSeq2SeqLMOutput

autodoc modeling_flax_outputs.FlaxSeq2SeqLMOutput

FlaxNextSentencePredictorOutput

autodoc modeling_flax_outputs.FlaxNextSentencePredictorOutput

FlaxSequenceClassifierOutput

autodoc modeling_flax_outputs.FlaxSequenceClassifierOutput

FlaxSeq2SeqSequenceClassifierOutput

autodoc modeling_flax_outputs.FlaxSeq2SeqSequenceClassifierOutput

FlaxMultipleChoiceModelOutput

autodoc modeling_flax_outputs.FlaxMultipleChoiceModelOutput

FlaxTokenClassifierOutput

autodoc modeling_flax_outputs.FlaxTokenClassifierOutput

FlaxQuestionAnsweringModelOutput

autodoc modeling_flax_outputs.FlaxQuestionAnsweringModelOutput

FlaxSeq2SeqQuestionAnsweringModelOutput

autodoc modeling_flax_outputs.FlaxSeq2SeqQuestionAnsweringModelOutput