Machine Learning

[MachineLearning] 지도 학습 - 회귀

다애루 2021. 4. 21. 16:45

 

머신러닝은 크게 세종류로 나눠진다.

 

지도 학습, 비지도 학습, 강화 학습 세 종류가 있으며

지도 학습은 분류와 회귀로 나눠진다.

 

이번 포스팅에서는 지도 학습의 회귀에 대해 알아보자.

 


회귀

연속적인 숫자를 예측하는 것을 말한다.

분류보다 회귀를 많이 사용하며,

오랜 기간 현대 통계학에서 발생되어 다양하게 이용되는 학문 분야이다.


선형 모델 (Linear Model)

데이터가 있을 때 가장 잘 설명할 수 있는 선을 찾는 방법

입력 특성에 대한 선형 함수(예측값)을 만들어 예측을 진행한다.

다양한 선형 모델이 존재한다.

분류와 회귀에 모두 사용 가능하다.

 

선 하나하나가 예측 값이 된다.

선형 함수 = 예측 값

 

회귀 계수 (W,b)

w : 가중치(weight), 계수(coefficient)

b : 편향(bias), 절편(intercept)

 

모델 w 파라미터 : model.coef_

모델 b 파라미터 : model.intercept_

 


선형 모델 정규화 방법

 

 " 비용함수 + 정규화 항 "

 

정규화 : 가중치가 가질 수 있는 값에 제약 조건을 부여

제약조건 : 일반적으로 가중치의 크기를 제한하는 방법

 


 

모델 정규화

규제 : 모든 특성이 출력에 주는 영향을 최소화

 

 

L1 규제 (Lasso)

: W의 모든 원소에 똑같은 힘으로 규제를 적용하는 방법.

특성 계수들은 0이 되고 (값이 사라짐)

특성 선택이 자동으로 이루어짐

 

 

L2 규제 (Ridge)

: w의 모든 원소에 골고루 규제를 적용해 0에 가깝게 만듬.

규제를 주긴 하지만 어느정도 값을 살려줄 때 사용.

 

from sklearn.linear_model import Ridge

오차(제곱 값) = 예측 값 - 원 데이터 값

MSE(평균 제곱 오차) : 일반적으로 가장 많이 쓰이는 평가 지표

 

 

MSE가 최솟값이 되는 회귀계수를 찾는 방법

1. 수학 공식을 이용한 해석적 방법

2. 경사하강법

MSE가 최소인 지점 = 기울기가 '0'인 지점

 


머신러닝 기법에서의 회귀 ?

 

주어진 특성(x)과 결정 값(y) 데이터에 기반하여

학습을 통해 최적의 회귀계수(W, b)를 찾아내는 것.

 

최적의 선 -> 오차값이 가장 적은 선

최적의 선형모델을 판단하는 기준은 비용함수 

 


장점

결과 예측(추론) 속도가 빠르다.

대용량 데이터에도 충분히 활용 가능하다.

특성이 많은 데이터 세트라면,

고차원 데이터에서 훌륭한 성능을 낼 수 있다.

 

 

단점

특성이 적은 저차원 데이터에서는

다른 모델의 일반화 성능이 더 좋을 수 있다.

-> 특성 확장을 하기도 한다.

 

 


 

프로그래밍 공부를 위해 여러 자료들을 토대로 작성한 기록입니다.

개인 공부에만 사용해주시고, 상업적인 활용과 재배포를 금지합니다.