ML 02.다중선형회귀

cuckoo·2022년 12월 7일
0

Machine Learning

목록 보기
2/11

키워드

  • 훈련 데이터 & 테스트 데이터
  • 다중선형회귀
  • 과적합/과소적합 - 일반화
  • 편향/분산

선형회귀모델의 목적

모델 학습에 사용한 훈련(train) 데이터를 잘 맞추는 모델이 아니라, 학습에 사용하지 않은 테스트(test) 데이터를 얼마나 잘 맞추는지 입니다.

  • 따라서, 데이터를 훈련/테스트 데이터로 나누어야 우리가 만든 모델의 예측 성능을 제대로 평가할 수 있습니다.
    • training set : 모델을 학습시키기 위한 데이터셋
    • test set : 모델을 테스트하기 위한 데이터셋

다중선형회귀(Multiple Linear Regression)

  • 2개 이상의 특성을 사용하는 선형회귀 모델
  • y=β0+β1x1+β2x2y = \beta_0 + \beta_1x_1 + \beta_2x_2 , 2개의 특성을 사용하는 다중선형회귀

계수들(coefficients or parameters) β0 β2β_0~β_2

  • β1β_1β2β_2 모두 양수
## 절편(intercept)과 계수들(coefficients)
model.intercept_, model.coef_

회귀 모델 성능평가지표

  • loss: 학습시 사용한 loss function 종류에 의해 결정 → 회귀는 RMSE
  • error: 「실제값 빼기 예측값」의 평균 작을수록 good
  • MSE(Mean Squared Error): 「실제값 빼기 예측값」의 제곱의 평균 작을수록good
    • 1ni=1n(yiyi^)2\frac{1}{n}\sum_{i=1}^{n}(y_{i} - \hat{y_{i}})^{2}
    • 단점: 제곱을하기 때문에 단위 스케일이 변해서 오류를 확인할 때 어느정도 오류인지 확인하기 힘듬, 이상치에 다른 평가 지표에 비해 민감하다.
  • MAE (Mean absolute error): 「실제값빼기 예측값」의 절댓값의 평균 작을수록good
    • 1ni=1nyiyi^\frac{1}{n}\sum_{i=1}^{n}\left | y_{i} - \hat{y_{i}} \right |
    • 장점: 단위 스케일 변화 x , 오류의 양을 직관적으로 확인 가능해서 설명하기 쉬움
  • RMSE (Root Mean Squared Error) : MSE의 제곱근
    • MSE\sqrt{MSE}
    • 장점 : MSE의 단점인 스케일 변화를 개선하여 비슷한 스케일로 변화시킨다.
  • R2(결정계수) : 독립변수가 종속변수를 얼마나 잘 설명하는지 클수록good
    • 1i=1n(yiyi^)2i=1n(yiyiˉ)2=1SSESST=SSRSST1 - \frac{\sum_{i=1}^{n}(y_{i} - \hat{y_{i}})^{2}}{\sum_{i=1}^{n}(y_{i} - \bar{y_{i}})^{2}} = 1 - \frac{SSE}{SST} = \frac {SSR}{SST}
    • 회귀 모델의 설명력을 표현하는 지표 (0~1)
    • 1에 가까울수록 모델이 데이터에 대한 설명력이 높다고 평가
  • 참고
    • SSE(Sum of Squares Error, 관측치와 예측치 차이): i=1n(yiyi^)2\sum_{i=1}^{n}(y_{i} - \hat{y_{i}})^{2}
    • SSR(Sum of Squares due to Regression, 예측치와 평균 차이): i=1n(yi^yiˉ)2\sum_{i=1}^{n}(\hat{y_{i}} - \bar{y_{i}})^{2}
    • SST(Sum of Squares Total, 관측치와 평균 차이): i=1n(yiyiˉ)2\sum_{i=1}^{n}(y_{i} - \bar{y_{i}})^{2} , SSE + SSR

과적합(overfitting)과 과소적합(Underfitting)

  • 일반화
    • 테스트데이터에서 만들어내는 오차를 일반화 오차라고 부릅니다.
    • 훈련데이터에서와같이 테스트데이터에서도 좋은 성능을 내는 모델은 일반화가 잘 된 모델이라고 부릅니다.
    • 모델이 너무 훈련데이터에 과하게 학습(과적합)을 하지 않도록 하는 많은 일반화 방법들이 있습니다
  • 과적합
    • 훈련 데이터셋에 대해 디테일하게 학습하여 훈련 데이터셋의 성능은 높지만 테스트 데이터셋의 성능은낮습니다.
  • 과소적합
    • 훈련 데이터셋에 대해 제대로 학습하지 못하여 훈련 데이터셋과 테스트 데이터셋 모두 성능이 낮습니다.
  • 편향
    • 관측값과 예측값의 차이, 즉 모델(잘못된 알고리즘)의 가정에서 오는 에러
    • 편향이 큰 모델 → 학습이 잘 이루어지지 않은 모델 → 훈련셋 성능 낮음 & 테스트셋 성능 낮음 → 과소적합
  • 분산
    • 높은경우는, 모델이 학습 데이터의 노이즈에 민감하게 적합하여 테스트데이터에서 일반화를 잘 못하는 경우 → 과적합 상태

분산/편향 트레이드오프

  • 모델의 복잡도가 커질 수록
    • 분산 증가 , 편향 감소
  • 모델의 복잡도가 낮아질 수록
    • 분산 감소, 편향 증가
  • 선형 모델
    - 학습 데이터에서 오차가 비슷
    - → 분산이 낮다.(오차는 여전히 많지만)
    - 훈련/테스트 데이터에서 오차가 크다
    - → 편향이 높다(과소적합)

  • 비선형 모델에서는,
    • 학습데이터에서 오차가 0에 가까우나("낮은 편향"), 테스트 데이터에서 오차가 많아집니다. → 과적합, 분산이 높음
  • 다항 회귀
    - 독립변수와 종속변수가 비선형의 관계인 모델이지만 다항 항들은 선형 결합으로 연결이 되었다고 볼 수 있기 때문에, 다중 선형 회귀 형태로 만들 수 있다.
    - 따라서 다항 회귀 모델은 선형 모델이다.

참고자료

plotly

훈련/테스트 세트 분리

Bias-Variance Tradeoff

Regression

profile
ENTJ 데이터 분석가 준비중입니다:)

0개의 댓글