회귀

2024. 1. 5. 19:39책/머신러닝 완벽가이드

회귀 Linear Regression

  • 회귀에서 RSS는 비용(Cost), 비용 함수, 손실 함수(loss function)라고 함
  • 머신러닝 회귀 알고리즘은 데이터를 계속 학습하면서 이 비용 함수가 반환하는 값을 지속해서 감소시키고 최종적으로는 더 이상 갑소하지 않는 최소의 오류 값을 구하는 것임

1)단순 선형 회귀(simple linear regression) : 한개의 독립 변수로 타겟 변수 예측

 

2)다중 선형 회귀(multiple linear regression) : 다수의 독립변수로 타겟 변수 예측

ex) 아들의 키 예측(y) = 아버지의 키 (x1) + 어머니의 키(x2) ...... 어머니 몸무게 …etc..

 

경사하강법

  • 점진적으로 반복적인 계산을 통해 w 파라미터를 업데이트하면서 오류 값이 최소가 되는 w 파라미터를 구하는 방식임. 핵심은 오류가 작아지는 방향으로 w 값을 업데이트하는 방법

 

  • 목적함수 : 오차의 제곱을 최소화하는 w0, w1 찾기
  • 잔차 제곱의 합을 RSS / SSE(sum of squre error)라고함

비용 함수 RSS(w0,w1)에 경사하강법 적용

→ RSS(w0,w1)=N1∑i=1N(yi−(w0+w1∗xi))^2

식을 미분해서 미분 함수의 최솟값을 구해야 하는데 파라미터가 1개가 아닌 w0과 w1을 가지고 있어 편미분 진행.

  • 편미분의 결과값을 반복적으로 보정하면서 파라미터 값을 업데이트하면 RSS(w0,w1)가 최소가 되는 파라미터를 구할 수 있음.
  • 업데이트는 편미분 결과값에 마이너스(-)를 해준 뒤 원래 파라미터 값에 더해줌.
  • 그리고 편미분 값이 너무 클 수 있기 때문에 보정 계수 η를 곱하는데, 이를 '학습률' 이라고 부름

확률적 경사 하강법

  • 일반적으로 경사 하강법은 모든 학습 데이터에 대해 반복적으로 비용함수 최소화를 위한 값을 업데이트하기 때문에 수행 시간이 매우 오래 걸린다는 단점이 있다. 그래서 실전에서는 대부분 확률적 경사 하강법을 이용함.
  • 확률적 경사 하강법은 전체 데이터에 대해 파라미터를 업데이트하는 것이 아니라 일부 데이터만 이용해 파라미터가 업데이트하기 때문에 경사 하강법에 비해 빠른 속도를 보장함

평가(evaluation)

  • residuals을 줄이는 것이 목표

  • mse의 단점은 도메인의 종류에 따라 값이 천차만별인 것

ex) 키 데이터와 손 길이 데이터가 있을 때 키 데이터의 잔차 크기가 더욱 큼

또 부동산 가격 데이터가 존재하면 잔차 크기는 억단위의 크기를 가질 것임

⇒이러한 단점을 극복하기 위해 결정계수(coefficient of determination)를 사용함

결정계수(coefficient of determination)R^2

  • y값 예측을 위해 분산은 불필요
  • 결정 계수는 0 < R^2 < 1 사이에 존재
  • 1에 가까울수록 좋고 0에 가까울수록 안좋음

<Non-linear regression>

Polynomial regression

  • 장점 : 선형의 단점보완
  • 단점 : 모델 복잡도 증가
  • 코사인, 사인, 제곱, 로그 등으로 tranformation 가능

단순한 모델은 과소적합 가능성 높음 ↔ 복잡한 모델은 과적합 가능성 높음

과적합 방지 방법

  • 데이터 증가시키기
  • feature selection
  • regularization

bias-variance trade off

  • 편향-분산 트레이드오프(Bias-Variance Trade off)는 머신러닝이 극복해야하는 가장 중요한 이슈 중의 하나

 

  • 높은 편향 / 낮은 분산에서 과소적합되기 쉬움
  • 낮은 편향 / 높은 분산에서 과적합되기 쉬움

→ 결국, 편향과 분산이 서로 적절히 이뤄지면서 오류 cost 값이 최대로 낮아지는 모델을 구축하는 것이 가장 효율적인 머신러닝 예측 모델을 만드는 방법임

Regularization

  • 𝝀는 하이퍼 파라미터로 regularization을 조정하는 역할
    • 𝝀가 커지면 weight는 작아지고 mse는 높아짐 ↔ 𝝀가 작아지면 weight는 커지고 mse는 작아짐
      • 𝝀=10000, weight=down, mse=up
      • 𝝀=0.001, weight=up, mse=down

ex) 보고서 양에 제한 없음 = 보고서 양 늘어남(내용은 풍부) = 내용 복잡

↔ 보고서 양 제한 = 보고서 양 줄어듬(내용은 적음)=보기 좋은 보고서

train R^2 test R^2

𝝀=1 0.98 0.5 overfitting
𝝀=100 0.3 0.3 underfitting
𝝀=10 0.8 0.8 fit
  • 𝝀를 적절히 조절한는 것이 regularization의 핵심

Ridge Regression

  • 릿지 회귀는 선형 회귀에 L2 규제를 추가한 회귀 모델
  • L2 규제는 상대적으로 큰 회귀 계수 값의 예측 영향도를 감소시키기 위해서 회귀 계수값을 더 작게 만드는 규제 모델

LASSO

  • 라쏘 회귀는 선형 회귀에 L1 규제를 적용한 방식
  • L2 규제가 회귀 계수 값의 크기를 줄이는 데 반해, L1 규제는 예측 영향력이 작은 feature의 회귀 계수를 0으로 만들어 회귀 예측 시 feature가 선택되지 않게 하는 것

 

  • lasso는 변수를 0으로 만들고 유의미하지 않은 0값은 결국 제거 됨 - 이를 통해 어느 변수가 유의미한 것인지 파악 가능함 ( 따라서 l1규제는 feature 선택 기능으로도 불림)
    • 위 그림에서 가장 유의미한 변수는 가장 늦게 0이된 핑크색 변수임

Elastic Net

  • L2, L1 규제를 함께 결합한 모델
  • 주로 feature가 많은 dataset에서 적용되며, L1 규제로 feature의 개수를 줄임과 동시에 L2 규제로 계수 값의 크기를 조정

' > 머신러닝 완벽가이드' 카테고리의 다른 글

텍스트 분석  (1) 2024.01.06
분류  (0) 2024.01.05
군집화  (0) 2024.01.05
차원축소  (1) 2023.12.30
224~349p  (0) 2023.12.16