Loss

오상윤·2023년 4월 13일
0

딥러닝

목록 보기
6/12

Loss

  • Linear Layer 함수가 얼마나 원하는 만큼 동작하는지, 점수로 나타낸다
  • Loss(손실값) : 원하는 출력값(target,y)과 실제 출력값(output,y')의 차이의 합
  • Loss가 작을 수록 가상의 함수를 잘 모사하고 있다
  • Loss가 작은 Linear Layer를 선택하면 된다

Loss function

  • Linear Layer의 파라미터를 바꿀때마다 Loss를 계산
  • Loss Function
    • 입력 : Linear Layer의 파라미터
    • 출력 : Loss

Euclidean Distance

  • 두 점 사이의 거리

RMSE(Root Mean Square Error)

  • Euclidean distance와 비슷한 개념

MSE(Man Square Error)

  • Root와 상수를 뺐지만, 크기 차이로 인한 순서 결과는 바뀌지 않음

결론

  • 우리는 목표로하는 함수를 모사하기 위해
    • 학습용 입력 데이터들을 Linear Layer에 넣어 출력 값들을 구하고
    • 출력 값(y')들과 목표 값(y)들의 차이의 합(Loss)을 최소화해야한다.
  • 결국 Linear Layer 파라미터를 바꾸면서 Loss를 최소화 해야한다

MSE 실습

import torch

def mse(x_hay, x):
  # |x_hat| = (batch_size, dim)
  # |x| = (batch_Size, dim)
  y = ((x - x_hat)**2).mean()

  return y

x = torch.FloatTensor([[1,1],
					   [2, 2]])
x_hat = torch.FloatTensor([[0,0],
						   [0,0]])
mse(x_hat, x)

Predefined MSE in PyTorch

impoty torch.nn.functional as F
F.mse_loss(x_hat,x)

import torch.nn as nn
mse_loss = nn.MSELoss()	 
mse_loss(x_hat,x)
profile
가보자가보자~

0개의 댓글

관련 채용 정보