-
[3장]ISL with R : 선형 회귀계수 계산기초지식/ISL with R(통계학) 2022. 8. 15. 10:21반응형
선형 회귀분석 기초
선형 회귀분석은 기울기와 절편을 조정해서 아래 식과 같이 결괏값을 예측해 내는 것이다.(Y에 "^"을 씌운 값) ( 자세한 내용은 이전 글인 [3장]ISL with R : 선형 회귀분석 기초에서도 을 참조하자.)
이때 아래식과 같이 있는 예측한 예측값(Y에 "^"을 씌운 값) 과 실제값의 차이가 작을수록( 잔차가 작을수록) 정확한 예측이 된다. ([3장]ISL with R : 선형 회귀분석 기초에서와 다르게 소문자 b를 쓴 이유는 실제 선형 회귀분석에서는 표본을 통해 b0, b1을 구하기 때문이다.)
데이터 전체로 봤을 때 위 식 2와 같이 표현되는 잔차의 전체 값이 가장 작게 나오는 것이 가장 정확한 예측( 가장 정확한 회귀계수들)이 되는 것이다. 그런데 데이터 전체의 잔차를 구하기 위해 각 지점의 잔차를 단순 합하면 + 값과 - 값이 상쇄되면서 데이터 전체의 잔차가 과소평가되는 효과가 생긴다. 아래 그림처럼 4개의 (x, y) 데이터가 주어진 상태에서 회귀선 A를 그었을 때 실제 단순 잔차들의 합은 0에 가까운 수가 나올 것이다.
RSS의 개념
각 지점의 잔차의 단순 합을 데이터 전체의 잔차라고 보기는 힘들기 때문에 우리는 아래 식과 같이 각 지점의 잔차의 제곱의 합을 유의미하게 사용할 수 있다. 전부 제곱을 했기 때문에 +값과 - 값이 상쇄되는 것이 없이 모두 + 값을 가질 것이기 때문이다.
ISL with R 에서는 위 식을 RSS(잔차의 제곱합: Residual Sum of Squares)라고 부른다. 결국 최소의 RSS를 갖는 회귀식의 예측도가 가장 높다고 말할 수 있겠다.
단순 선형 회귀모형 만들기
이제 RSS를 최소화하는 회귀계수들만 찾으면 ( 위 식 1에서 베타값들) 선형 회귀식을 찾을 수 있다. 이렇게 회귀계수들을 찾는 과정을 OLS(최소제곱법: Ordinary Least Squares)라고 한다. 단순선형회귀인 경우 위 식 1에서 확인되는 것처럼 b0, b1 값만 구하면 된다.
b0 구하기
먼저 RSS를 회귀계수 에 관한 식으로 정리한다. 위의 식 1, 식 2는 아래와 같으므로 잔차에 대해서 아래와 같이 정리할 수 있다.
그에 따른 RSS는 아래 식과 같다.
RSS를 최소로 만드는 b0와 b1을 찾는 것이 목표이므로 RSS를 b0와 b1으로 각각 편미분 했을 때, 편미분 값이 0이 나와야 한다. 먼저 b0로 RSS를 편미분 하면 다음과 같은 값을 얻을 수 있다.
양변을 2로 나눈 뒤 정리하면 다음과 같다.
이 때, 우변의 구성요소는 아래와 같이 각각 표본 평균을 의미한다.
그리고 좌변은 아래와 같이 나타낼 수 있다.
결국 종합하면 b0는 다음과 같이 정리할 수 있다.
b1 구하기
b1으로 RSS를 편미분하면 다음과 같다.
양변을 -2로 나누면
위 식12에 식 10에서 구한 b0 값을 대입하면 다음과 같다.
그런데 책에서는 b1 을 아래와 같이 표기한다.
이는 다음과 같은 식이 성립한다는 가정하에 가능한데, 아래 식은 어떻게 성립할까?
위 식15는 아래 식 16처럼 나타낼 수 있는 표본 평균의 정의를 이용한다면,
쉽게 증명이 가능한데, 아래에서는 식15 중 첫 번째 식에 대한 증명만 해 보도록 하겠다.
결론: ISL with R 에는 b0, b1 에 대한 식만 한 줄씩 있으며, 결국 우리가 알아야 할 것은 b0, b1 공식이긴 하다.
반응형'기초지식 > ISL with R(통계학)' 카테고리의 다른 글
[3장]ISL with R : 다중선형회귀 실습 in R(주가예측 심화) (0) 2022.10.25 [3장]ISL with R : 단순선형회귀 실습 in R(환율을 통한 주가예측) (0) 2022.10.21 [3장]ISL with R : 선형 회귀분석 기초 (0) 2022.08.14 [2장] ISL with R : KNN 알고리즘 실습해보기 in R (0) 2021.01.02 [2장] ISL with R : KNN 알고리즘 실습해보기 (0) 2021.01.02