본문 바로가기

(Regression) 쉽게 이해하는 Loss Function - Error, Variance, Bias 관계는?

Derrick 발행일 : 2024-04-05
728x90
반응형

 

현업 문제에서 접목시킬 수 있는 머신러닝 알고리즘 중, 가장 기본이 되는 것은 'Regression'. 기초적인 Loss function부터 Regularized Linear Model까지 학습을 해보자.

 

Regression 알고리즘에서의
Loss Function이란?

 

 


1. Error of Model

Loss function은 모델의 성능을 측정하거나 학습할 때 모델이 얼마만큼 잘 학습할 수 있는지 기준(척도)이다. 

 

# 좋은 알고리즘(Algorithm)의 기준
: 예상하고 있는 expected output의 퀄리티가 높게 나오는 경우와 에러도 낮은 경우에 해당된다. 
→ 여기서의 에러(Error)는 loss function으로 정의될 수 있다.

1) 학습할 수 있는 데이터셋이 있고
2) 이 데이터셋을 알고리즘을 통해 학습을 시키고
3) 학습이 완료되면 새로운 데이터를 넣었을 때, 얼마나 좋은 퀄리티의 target(y)를 예측하는지가 관건이다.

 

★ 가장 중요한 것은 에러가 낮아야 한다!
 - 우리가 가지고 있는 정답셋(True)인 y와 알고리즘의 output인 y^의 차이를 에러(Error)이며, 이 에러가 낮아야 한다.

 


2. Variance vs Bias

 

 

 # Error = Variance + Bias

- Variance : 추정값(Algorithm Output)의 평균과 추정값들 간의 차이
 → Variance는 추정값들의 흩어진 정도를 의미한다.
- Bias : 추정값(Algorithm Output)의 평균과 참된 값(True)들 간의 차이
 → Bias는 True값과 추정값의 거리를 의미

 

위의 과녁 사진처럼 Variance와 Bias가 낮고 높음에 따라 정중앙(True값)으로 표현할 수 있다.
→ Variance와 Bias가 모두 높다면, 모델의 에러가 굉장히 높아진다.
→ Variance가 낮으면 조금 더 True값에 근접해지고, Bias가 낮을수록 값들의 흩어짐이 덜한 것을 알 수 있다.
→ 가장 이상적인 것은 Variance와 Bias가 모두 낮은 경우에 해당한다.

# Underfitting
 : 과녁의 아래/왼쪽(3번)에 해당되는 그림으로 Bias ↑, Variance ↓
 
# Overfitting
 : 과녁의 위/오른쪽(2번)에 해당되는 그림으로 Bias ↓, Variance ↑

★ 따라서 우리의 궁극적인 목적은 에러를 줄이고, 에러를 줄이기 위해 Variance와 Bias를 줄이는 것이다.

 


3. Data Noise

# Error = Noise(Data) + Variance + Bias

에러 중에 Variance와 Bias만 있는 것이 아니다. 가장 중요한 것 중에 하나가 바로 Data의 Noise이다. 어떤 데이터가 잘 생성되어있지 않거나 Data preprocessing이 되지 않는 등의 이유로 Noise가 생기게 되면, Bias와 Variance로 제어함으로써 모델의 에러를 충분히 줄여도 한계가 있다.

 

 


4. Regression Problem Loss Function

1) Simple Linear Regression

아래는 Linear Regression의 경우, 에러가 어떻게 적용되는지 확인해보자
- Simple Linear Regression : 독립변수(X) 1개, 종속변수(Y) 1개
- Multi Linear Regression : 독립변수(X's) 여러 개, 종속 변수(Y) 1개

 

위의 예시는 아빠의 키를 가지고 아들의 키를 예측하는 모델이다. 위의 빨간선의 수식이 'E(Y) = β(0) +β(1)X' 으로 표현한다면 아래와 같이 정의할 수 있다. 

 

추정값(y^)과 다르게 실제 y값에는 error(ε)가 붙게 된다. 여기서 error(ε)는 x값이 들어왔을때 구축한 모델에 대해서 실제값(y)과 추정값(y^)의 차이를 의미하게 된다.

 

[ Simple Linear Regression - loss function ]

2) Multi Linear Regression

'Multi Linear Regression'는, 독립변수가 여러 개일 경우에 해당된다. xi가 추가될때마다 β(Coefficient 계수)가 증가된다고 보면 된다.

 

3) Why Square?

Q) Error를 구할 때, 수식에서 왜 Square(제곱)를 하는 걸까?

- 추정값(y^)과 참(y)값의 차이를 표현하는 방식의 차이
 → 하지만 제곱(Square)의 장점은 빠르게 문제 해결이 가능하다.
 → 미분이 가능해진다. (기울기의 방향성)

 

[ 미분 불가능(왼쪽) / 미분 가능(오른쪽) ]

 

이번 게시물을 통해 Linear Regression에서의 loss function이 어떻게 정의되는지 학습했지만, 앞으로 모델들이 확장되면서 여기서의 Loss function의 개념은 항상 함께 나오기 때문에 숙지하는 것이 중요하다!

 

 

 

학습 참고 : 50개 프로젝트로 완벽하게 끝내는 머신러닝 SIGNATURE

 

 

댓글