[python] 파이썬 PyTorch에서 다중 클래스 분류를 위한 손실 함수는 무엇인가?

예를 들어, 다음과 같이 손실 함수를 사용할 수 있습니다:

import torch
import torch.nn as nn

# 모델 출력
outputs = torch.tensor([[0.2, 0.3, 0.5],
                        [0.8, 0.1, 0.1],
                        [0.3, 0.4, 0.3]])

# 정답 레이블
targets = torch.tensor([2, 0, 1])

# 손실 함수 정의
criterion = nn.CrossEntropyLoss()

# 손실 계산
loss = criterion(outputs, targets)

print(loss)

이 코드에서 outputs는 모델의 출력을 나타내며, 각각 3개의 클래스에 대한 확률 값을 포함하고 있습니다. targets는 예측하려는 실제 클래스 레이블입니다.

CrossEntropyLoss 함수는 모델의 출력과 정답 레이블을 사용하여 손실을 계산합니다. 손실 값은 실수로 반환됩니다.