1. 손실함수
N개의 데이터 샘플, n차원
- L1
- L2 : Euclidean distance
- RMSE
- MSE
MSE는 L2 노름의 제곱에 상수를 곱한
2. 실습
def mse(x_hat, x):
# |x|=(batch_size, dim)
print((x-x_hat)**2)
y=((x-x_hat)**2).mean()
return y
x=torch.FloatTensor([[1,1],[2,2]])
x_hat=torch.FloatTensor([[0,0],[0,0]])
print(mse(x_hat,x)) #2.5
- torch.nn.function 사용
import torch.nn.functional as F
F.mse_loss(x_hat,x) #2.5
F.mse_loss(x_hat,x, reduction='sum') #10
F.mse_loss(x_hat,x,reduction='none')
"""tensor([[1., 1.],
[4., 4.]])"""
- torch.nn 사용
import torch.nn as nn
mse_loss=nn.MSELoss()
mse_loss(x_hat,x) #2.5
'딥러닝 > 파이토치 딥러닝' 카테고리의 다른 글
8장. 로지스틱 회귀 (1) | 2024.05.01 |
---|---|
7장 선형회귀(linear regression) (0) | 2024.04.22 |
6장 경사하강법 (0) | 2024.04.22 |
4장. 선형계층 (0) | 2024.04.10 |
3장 파이토치 튜토리얼 (0) | 2024.04.04 |