머신러닝 20. 지도학습: 비선형회귀 (로버스트회귀 & 분위수회귀)
Written on October 22nd , 2019 by MJ 목차
1. 데이터셋 준비
(1) 무작위 숫자로 데이터셋 생성: runif()
(2) 반응변수 중 1개를 인위적으로 변경해 특이값 생성
2. 로버스트 회귀분석 & 분위수회귀분석
(1) 일반선형회귀모델 피팅: stats::lm()
(2) 후버의 M 추정 모델 피팅: rlm()
(3) 최소중앙값제곱(LMS) 모델 피팅: lqs(method = “lms”)
(4) 최소절삭제곱(LTS) 모델 피팅: lqs(method = “lts”)
(5) 최소절삭제곱(LTS) 모델 피팅: lqs(method = “lts”, quantile = 9)
(6) 분위수회귀모델 피팅: rq()
3. 모델 별 예측모델 추정 결과
4. 회귀모델 간 성능비교
5. 회귀모델 시각화
(1) 각 모형별 적합선(추세선)
(2) 각 모형별 잔차분포
024
일반회귀분석의 가정조건: 이상치/특이점 문제
-
보통 일반 회귀분석은 예측식을 구성하는 독립변수들의 예측계수(회귀계수)를 구할 때 잔차의 제곱의 합이 최소과 되게하는 최소제곱법(Method of Ordinary Least Squares, OLS) 방법을 사용함
-
잔차의 합=0이므로 제곱의 합이 최소가 되는 방법을 사용함
-
OLS로 회귀선을 추정하는 과정에서 특이점이 존재할 경우 이 특이점은 회귀직선의 결정에 큰 영향을 미치게 됨
로버스트 회귀(robust regresion)
-
OLS를 적용하는 모든 예측상황에서 사용가능하며, 가중치 메커니즘을 사용해 영향력 있는 관측치를 낮춰줌
-
특히 데이터에서 이상치를 제외시킬 강력한 이유가 없는 경우에 유용함
-
잔차의 제곱을 이용하는 최소제곱법 대신에 절대값의 합이 최소가 되도록 계수룰 추정하는 방식
● 절댓값을 이용.
분위수 회귀(quantile regresion)
- 평균이 아닌 특정 분위값을 추정해서 그 위치에 있는 종속변수값을 사용해 아웃라이어의 영향을 해소
● 분위수를 구하면 단계별로 x가 변할 때 대충 y가 어느 위치인지 예상 가능. y축에 아웃라이어 있으니, x의 분위수를 나눠 상대적으로 아웃라이어에 대한 민감성을 낮춤.
예측모형의 성능(적합성) 평가척도
- 오차들을 어떻게 모아서 오차의 평균값을 구할 것인가하는 관점
(1) MAE(Mean Absolute Error)
- 평균절대오차: 오차들의 절대값의 평균
(2) MSE(Mean Squared Error)
- 평균제곱오차: 오차를 제곱해서 평균을 구함
(3) RMSE(Root Mean Squared Error)
- 제곱근 평균제곱오차: 오차를 제곱해서 평균한 값의 제곱근
(4) MAPE(Mean Absolute Percent Error)
- 평균 절대퍼센트오차: MAE를 특정한 단위 대신 백분율로 고쳐서 계산한 것
● 수치예측할 때는 MAE, MSE, RMSE, MAPE를 많이 쓴다. 외부성능평가를 할 땐 이런 걸 쓴다. 이 오차도 실제 검증데이터를 가지고 y값과 추정된 y값(검증데이터를 활용해 구했던) 비교해보는 것이다. 여러가지 중에서도 오차가 가장 작은, 즉 각 4가지 지표 가장 낮은게 외부성능 평가에서 좋은 모델이 되는 것.
● 여러 모델 간에 내부적인 성능 평가를 할 때는 r-square, AIC, BIC, anova 함수의 RSS 를사용한다. (훈련데이터만 가지고 계산. 훈련데이터의 y값과 예측식에서 추정된 y값 을 가지고 내부 추정)
—————코딩——————————————————————————————————
1. 데이터셋 준비
(1) 무작위 숫자로 데이터셋 생성: runif()
(2) 반응변수 중 1개를 인위적으로 변경해 특이값 생성
2. 로버스트 회귀분석 & 분위수회귀분석
(1) 일반선형회귀모델 피팅: stats::lm()
(2) 후버의 M 추정 모델 피팅: rlm()
(3) 최소중앙값제곱(LMS) 모델 피팅: lqs(method = “lms”)
(4) 최소절삭제곱(LTS) 모델 피팅: lqs(method = “lts”)
(5) 최소절삭제곱(LTS) 모델 피팅: lqs(method = “lts”, quantile = 9)
(6) 분위수회귀모델 피팅: rq()
3. 모델 별 예측모델 추정 결과
4. 회귀모델 간 성능비교
5. 회귀모델 시각화
(1) 각 모형별 적합선(추세선)
(2) 각 모형별 잔차분포
<참고 문헌="">참고>
- 최점기 박사님 강의