lsmpp's picture
Add files using upload-large-folder tool
4cef5ec verified
<!--Copyright 2020 The HuggingFace Team. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
specific language governing permissions and limitations under the License.
⚠️ Note that this file is in Markdown but contain specific syntax for our doc-builder (similar to MDX) that may not be
rendered properly in your Markdown viewer.
-->
# λͺ¨λΈ 좜λ ₯[[model-outputs]]
λͺ¨λ“  λͺ¨λΈμ—λŠ” [`~utils.ModelOutput`]의 μ„œλΈŒν΄λž˜μŠ€μ˜ μΈμŠ€ν„΄μŠ€μΈ λͺ¨λΈ 좜λ ₯이 μžˆμŠ΅λ‹ˆλ‹€. 이듀은
λͺ¨λΈμ—μ„œ λ°˜ν™˜λ˜λŠ” λͺ¨λ“  정보λ₯Ό ν¬ν•¨ν•˜λŠ” 데이터 κ΅¬μ‘°μ΄μ§€λ§Œ νŠœν”Œμ΄λ‚˜ λ”•μ…”λ„ˆλ¦¬λ‘œλ„ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
예제λ₯Ό 톡해 μ‚΄νŽ΄λ³΄κ² μŠ΅λ‹ˆλ‹€:
```python
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) # 배치 크기 1
outputs = model(**inputs, labels=labels)
```
`outputs` κ°μ²΄λŠ” [`~modeling_outputs.SequenceClassifierOutput`]μž…λ‹ˆλ‹€.
μ•„λž˜ ν•΄λ‹Ή 클래슀의 λ¬Έμ„œμ—μ„œ λ³Ό 수 μžˆλ“―μ΄, `loss`(선택적), `logits`, `hidden_states`(선택적) 및 `attentions`(선택적) ν•­λͺ©μ΄ μžˆμŠ΅λ‹ˆλ‹€. μ—¬κΈ°μ—μ„œλŠ” `labels`λ₯Ό μ „λ‹¬ν–ˆκΈ° λ•Œλ¬Έμ— `loss`κ°€ μžˆμ§€λ§Œ `hidden_states`와 `attentions`κ°€ μ—†λŠ”λ°, μ΄λŠ” `output_hidden_states=True` λ˜λŠ” `output_attentions=True`λ₯Ό μ „λ‹¬ν•˜μ§€ μ•Šμ•˜κΈ° λ•Œλ¬Έμž…λ‹ˆλ‹€.
<Tip>
`output_hidden_states=True`λ₯Ό 전달할 λ•Œ `outputs.hidden_states[-1]`κ°€ `outputs.last_hidden_state`와 μ •ν™•νžˆ μΌμΉ˜ν•  κ²ƒμœΌλ‘œ μ˜ˆμƒν•  수 μžˆμŠ΅λ‹ˆλ‹€.
ν•˜μ§€λ§Œ 항상 그런 것은 μ•„λ‹™λ‹ˆλ‹€. 일뢀 λͺ¨λΈμ€ λ§ˆμ§€λ§‰ 은닉 μƒνƒœκ°€ λ°˜ν™˜λ  λ•Œ μ •κ·œν™”λ₯Ό μ μš©ν•˜κ±°λ‚˜ λ‹€λ₯Έ 후속 ν”„λ‘œμ„ΈμŠ€λ₯Ό μ μš©ν•©λ‹ˆλ‹€.
</Tip>
일반적으둜 μ‚¬μš©ν•  λ•Œμ™€ λ™μΌν•˜κ²Œ 각 속성듀에 μ ‘κ·Όν•  수 있으며, λͺ¨λΈμ΄ ν•΄λ‹Ή 속성을 λ°˜ν™˜ν•˜μ§€ μ•Šμ€ 경우 `None`이 λ°˜ν™˜λ©λ‹ˆλ‹€. μ˜ˆμ‹œμ—μ„œλŠ” `outputs.loss`λŠ” λͺ¨λΈμ—μ„œ κ³„μ‚°ν•œ 손싀이고 `outputs.attentions`λŠ” `None`μž…λ‹ˆλ‹€.
`outputs` 객체λ₯Ό νŠœν”Œλ‘œ κ°„μ£Όν•  λ•ŒλŠ” `None` 값이 μ—†λŠ” μ†μ„±λ§Œ κ³ λ €ν•©λ‹ˆλ‹€.
μ˜ˆμ‹œμ—μ„œλŠ” `loss`와 `logits`λΌλŠ” 두 개의 μš”μ†Œκ°€ μžˆμŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ―€λ‘œ,
```python
outputs[:2]
```
λŠ” `(outputs.loss, outputs.logits)` νŠœν”Œμ„ λ°˜ν™˜ν•©λ‹ˆλ‹€.
`outputs` 객체λ₯Ό λ”•μ…”λ„ˆλ¦¬λ‘œ κ°„μ£Όν•  λ•ŒλŠ” `None` 값이 μ—†λŠ” μ†μ„±λ§Œ κ³ λ €ν•©λ‹ˆλ‹€.
μ˜ˆμ‹œμ—λŠ” `loss`와 `logits`λΌλŠ” 두 개의 ν‚€κ°€ μžˆμŠ΅λ‹ˆλ‹€.
μ—¬κΈ°μ„œλΆ€ν„°λŠ” 두 κ°€μ§€ μ΄μƒμ˜ λͺ¨λΈ μœ ν˜•μ—μ„œ μ‚¬μš©λ˜λŠ” 일반 λͺ¨λΈ 좜λ ₯을 λ‹€λ£Ήλ‹ˆλ‹€. ꡬ체적인 좜λ ₯ μœ ν˜•μ€ ν•΄λ‹Ή λͺ¨λΈ νŽ˜μ΄μ§€μ— λ¬Έμ„œν™”λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€.
## ModelOutput[[transformers.utils.ModelOutput]]
[[autodoc]] utils.ModelOutput
- to_tuple
## BaseModelOutput[[transformers.BaseModelOutput]]
[[autodoc]] modeling_outputs.BaseModelOutput
## BaseModelOutputWithPooling[[transformers.modeling_outputs.BaseModelOutputWithPooling]]
[[autodoc]] modeling_outputs.BaseModelOutputWithPooling
## BaseModelOutputWithCrossAttentions[[transformers.modeling_outputs.BaseModelOutputWithCrossAttentions]]
[[autodoc]] modeling_outputs.BaseModelOutputWithCrossAttentions
## BaseModelOutputWithPoolingAndCrossAttentions[[transformers.modeling_outputs.BaseModelOutputWithPoolingAndCrossAttentions]]
[[autodoc]] modeling_outputs.BaseModelOutputWithPoolingAndCrossAttentions
## BaseModelOutputWithPast[[transformers.modeling_outputs.BaseModelOutputWithPast]]
[[autodoc]] modeling_outputs.BaseModelOutputWithPast
## BaseModelOutputWithPastAndCrossAttentions[[transformers.modeling_outputs.BaseModelOutputWithPastAndCrossAttentions]]
[[autodoc]] modeling_outputs.BaseModelOutputWithPastAndCrossAttentions
## Seq2SeqModelOutput[[transformers.modeling_outputs.Seq2SeqModelOutput]]
[[autodoc]] modeling_outputs.Seq2SeqModelOutput
## CausalLMOutput[[transformers.modeling_outputs.CausalLMOutput]]
[[autodoc]] modeling_outputs.CausalLMOutput
## CausalLMOutputWithCrossAttentions[[transformers.modeling_outputs.CausalLMOutputWithCrossAttentions]]
[[autodoc]] modeling_outputs.CausalLMOutputWithCrossAttentions
## CausalLMOutputWithPast[[transformers.modeling_outputs.CausalLMOutputWithPast]]
[[autodoc]] modeling_outputs.CausalLMOutputWithPast
## MaskedLMOutput[[transformers.modeling_outputs.MaskedLMOutput]]
[[autodoc]] modeling_outputs.MaskedLMOutput
## Seq2SeqLMOutput[[transformers.modeling_outputs.Seq2SeqLMOutput]]
[[autodoc]] modeling_outputs.Seq2SeqLMOutput
## NextSentencePredictorOutput[[transformers.modeling_outputs.NextSentencePredictorOutput]]
[[autodoc]] modeling_outputs.NextSentencePredictorOutput
## SequenceClassifierOutput[[transformers.modeling_outputs.SequenceClassifierOutput]]
[[autodoc]] modeling_outputs.SequenceClassifierOutput
## Seq2SeqSequenceClassifierOutput[[transformers.modeling_outputs.Seq2SeqSequenceClassifierOutput]]
[[autodoc]] modeling_outputs.Seq2SeqSequenceClassifierOutput
## MultipleChoiceModelOutput[[transformers.modeling_outputs.MultipleChoiceModelOutput]]
[[autodoc]] modeling_outputs.MultipleChoiceModelOutput
## TokenClassifierOutput[[transformers.modeling_outputs.TokenClassifierOutput]]
[[autodoc]] modeling_outputs.TokenClassifierOutput
## QuestionAnsweringModelOutput[[transformers.modeling_outputs.QuestionAnsweringModelOutput]]
[[autodoc]] modeling_outputs.QuestionAnsweringModelOutput
## Seq2SeqQuestionAnsweringModelOutput[[transformers.modeling_outputs.Seq2SeqQuestionAnsweringModelOutput]]
[[autodoc]] modeling_outputs.Seq2SeqQuestionAnsweringModelOutput
## Seq2SeqSpectrogramOutput[[transformers.modeling_outputs.Seq2SeqSpectrogramOutput]]
[[autodoc]] modeling_outputs.Seq2SeqSpectrogramOutput
## SemanticSegmenterOutput[[transformers.modeling_outputs.SemanticSegmenterOutput]]
[[autodoc]] modeling_outputs.SemanticSegmenterOutput
## ImageClassifierOutput[[transformers.modeling_outputs.ImageClassifierOutput]]
[[autodoc]] modeling_outputs.ImageClassifierOutput
## ImageClassifierOutputWithNoAttention[[transformers.modeling_outputs.ImageClassifierOutputWithNoAttention]]
[[autodoc]] modeling_outputs.ImageClassifierOutputWithNoAttention
## DepthEstimatorOutput[[transformers.modeling_outputs.DepthEstimatorOutput]]
[[autodoc]] modeling_outputs.DepthEstimatorOutput
## Wav2Vec2BaseModelOutput[[transformers.modeling_outputs.Wav2Vec2BaseModelOutput]]
[[autodoc]] modeling_outputs.Wav2Vec2BaseModelOutput
## XVectorOutput[[transformers.modeling_outputs.XVectorOutput]]
[[autodoc]] modeling_outputs.XVectorOutput
## Seq2SeqTSModelOutput[[transformers.modeling_outputs.Seq2SeqTSModelOutput]]
[[autodoc]] modeling_outputs.Seq2SeqTSModelOutput
## Seq2SeqTSPredictionOutput[[transformers.modeling_outputs.Seq2SeqTSPredictionOutput]]
[[autodoc]] modeling_outputs.Seq2SeqTSPredictionOutput
## SampleTSPredictionOutput[[transformers.modeling_outputs.SampleTSPredictionOutput]]
[[autodoc]] modeling_outputs.SampleTSPredictionOutput
## TFBaseModelOutput[[transformers.modeling_outputs.TFBaseModelOutput]]
[[autodoc]] modeling_tf_outputs.TFBaseModelOutput
## TFBaseModelOutputWithPooling[[transformers.modeling_tf_outputs.TFBaseModelOutputWithPooling]]
[[autodoc]] modeling_tf_outputs.TFBaseModelOutputWithPooling
## TFBaseModelOutputWithPoolingAndCrossAttentions[[transformers.modeling_tf_outputs.TFBaseModelOutputWithPoolingAndCrossAttentions]]
[[autodoc]] modeling_tf_outputs.TFBaseModelOutputWithPoolingAndCrossAttentions
## TFBaseModelOutputWithPast[[transformers.modeling_tf_outputs.TFBaseModelOutputWithPast]]
[[autodoc]] modeling_tf_outputs.TFBaseModelOutputWithPast
## TFBaseModelOutputWithPastAndCrossAttentions[[transformers.modeling_tf_outputs.TFBaseModelOutputWithPastAndCrossAttentions]]
[[autodoc]] modeling_tf_outputs.TFBaseModelOutputWithPastAndCrossAttentions
## TFSeq2SeqModelOutput[[transformers.modeling_tf_outputs.TFSeq2SeqModelOutput]]
[[autodoc]] modeling_tf_outputs.TFSeq2SeqModelOutput
## TFCausalLMOutput[[transformers.modeling_tf_outputs.TFCausalLMOutput]]
[[autodoc]] modeling_tf_outputs.TFCausalLMOutput
## TFCausalLMOutputWithCrossAttentions[[transformers.modeling_tf_outputs.TFCausalLMOutputWithCrossAttentions]]
[[autodoc]] modeling_tf_outputs.TFCausalLMOutputWithCrossAttentions
## TFCausalLMOutputWithPast[[transformers.modeling_tf_outputs.TFCausalLMOutputWithPast]]
[[autodoc]] modeling_tf_outputs.TFCausalLMOutputWithPast
## TFMaskedLMOutput[[transformers.modeling_tf_outputs.TFMaskedLMOutput]]
[[autodoc]] modeling_tf_outputs.TFMaskedLMOutput
## TFSeq2SeqLMOutput[[transformers.modeling_tf_outputs.TFSeq2SeqLMOutput]]
[[autodoc]] modeling_tf_outputs.TFSeq2SeqLMOutput
## TFNextSentencePredictorOutput[[transformers.modeling_tf_outputs.TFNextSentencePredictorOutput]]
[[autodoc]] modeling_tf_outputs.TFNextSentencePredictorOutput
## TFSequenceClassifierOutput[[transformers.modeling_tf_outputs.TFSequenceClassifierOutput]]
[[autodoc]] modeling_tf_outputs.TFSequenceClassifierOutput
## TFSeq2SeqSequenceClassifierOutput[[transformers.modeling_tf_outputs.TFSeq2SeqSequenceClassifierOutput]]
[[autodoc]] modeling_tf_outputs.TFSeq2SeqSequenceClassifierOutput
## TFMultipleChoiceModelOutput[[transformers.modeling_tf_outputs.TFMultipleChoiceModelOutput]]
[[autodoc]] modeling_tf_outputs.TFMultipleChoiceModelOutput
## TFTokenClassifierOutput[[transformers.modeling_tf_outputs.TFTokenClassifierOutput]]
[[autodoc]] modeling_tf_outputs.TFTokenClassifierOutput
## TFQuestionAnsweringModelOutput[[transformers.modeling_tf_outputs.TFQuestionAnsweringModelOutput]]
[[autodoc]] modeling_tf_outputs.TFQuestionAnsweringModelOutput
## TFSeq2SeqQuestionAnsweringModelOutput[[transformers.modeling_tf_outputs.TFSeq2SeqQuestionAnsweringModelOutput]]
[[autodoc]] modeling_tf_outputs.TFSeq2SeqQuestionAnsweringModelOutput
## FlaxBaseModelOutput[[transformers.modeling_flax_outputs.FlaxBaseModelOutput]]
[[autodoc]] modeling_flax_outputs.FlaxBaseModelOutput
## FlaxBaseModelOutputWithPast[[transformers.modeling_flax_outputs.FlaxBaseModelOutputWithPast]]
[[autodoc]] modeling_flax_outputs.FlaxBaseModelOutputWithPast
## FlaxBaseModelOutputWithPooling[[transformers.modeling_flax_outputs.FlaxBaseModelOutputWithPooling]]
[[autodoc]] modeling_flax_outputs.FlaxBaseModelOutputWithPooling
## FlaxBaseModelOutputWithPastAndCrossAttentions[[transformers.modeling_flax_outputs.FlaxBaseModelOutputWithPastAndCrossAttentions]]
[[autodoc]] modeling_flax_outputs.FlaxBaseModelOutputWithPastAndCrossAttentions
## FlaxSeq2SeqModelOutput[[transformers.modeling_flax_outputs.FlaxSeq2SeqModelOutput]]
[[autodoc]] modeling_flax_outputs.FlaxSeq2SeqModelOutput
## FlaxCausalLMOutputWithCrossAttentions[[transformers.modeling_flax_outputs.FlaxCausalLMOutputWithCrossAttentions]]
[[autodoc]] modeling_flax_outputs.FlaxCausalLMOutputWithCrossAttentions
## FlaxMaskedLMOutput[[transformers.modeling_flax_outputs.FlaxMaskedLMOutput]]
[[autodoc]] modeling_flax_outputs.FlaxMaskedLMOutput
## FlaxSeq2SeqLMOutput[[transformers.modeling_flax_outputs.FlaxSeq2SeqLMOutput]]
[[autodoc]] modeling_flax_outputs.FlaxSeq2SeqLMOutput
## FlaxNextSentencePredictorOutput[[transformers.modeling_flax_outputs.FlaxNextSentencePredictorOutput]]
[[autodoc]] modeling_flax_outputs.FlaxNextSentencePredictorOutput
## FlaxSequenceClassifierOutput[[transformers.modeling_flax_outputs.FlaxSequenceClassifierOutput]]
[[autodoc]] modeling_flax_outputs.FlaxSequenceClassifierOutput
## FlaxSeq2SeqSequenceClassifierOutput[[transformers.modeling_flax_outputs.FlaxSeq2SeqSequenceClassifierOutput]]
[[autodoc]] modeling_flax_outputs.FlaxSeq2SeqSequenceClassifierOutput
## FlaxMultipleChoiceModelOutput[[transformers.modeling_flax_outputs.FlaxMultipleChoiceModelOutput]]
[[autodoc]] modeling_flax_outputs.FlaxMultipleChoiceModelOutput
## FlaxTokenClassifierOutput[[transformers.modeling_flax_outputs.FlaxTokenClassifierOutput]]
[[autodoc]] modeling_flax_outputs.FlaxTokenClassifierOutput
## FlaxQuestionAnsweringModelOutput[[transformers.modeling_flax_outputs.FlaxQuestionAnsweringModelOutput]]
[[autodoc]] modeling_flax_outputs.FlaxQuestionAnsweringModelOutput
## FlaxSeq2SeqQuestionAnsweringModelOutput[[transformers.modeling_flax_outputs.FlaxSeq2SeqQuestionAnsweringModelOutput]]
[[autodoc]] modeling_flax_outputs.FlaxSeq2SeqQuestionAnsweringModelOutput