[회귀분석] 회귀분석 모델의 소개
안녕하십니까, 간토끼입니다.
해당 카테고리에서는 앞으로 회귀분석(Regression Analysis)에 대해 다뤄볼 예정입니다.
부가적으로 계량경제학(Econometrics)의 개념도 같이 다루고자 합니다.
크게 보았을 땐 통계학과의 회귀분석에서 다루지 않는 부분도 함께 다룸으로써 상호 보완할 수 있을 것 같아서요.
(제가 고급계량연습 수업을 듣고 있어서 그런 건 아닙니다.)
이번 포스팅에서는 회귀분석을 시작하기 전에 간단하게 회귀모형의 개념을 소개하고자 합니다.
앞서 공분산과 상관계수[ 2020/05/19 - [Statistics/Basic Statistics] - [기초통계학] 공분산과 상관계수]
에서도 다룬 것처럼, 우리는 변수들 간의 관계에 대해서 관심이 많습니다.
예를 들어 기업 입장에서는 우리 기업의 상품 수요에 미치는 요인들을 자세히 알고 싶어하겠죠.
만약 어떤 요인인지 정확히 파악할 수 있다면, 그러한 요인을 적절히 통제하고 조절함으로써 수요를 극대화시킬 수 있으니깐요.
다른 말로 표현하면 '수요를 예측하기 위해서는 수요에 영향을 미치는 요인들을 파악해야 한다.' 라고도 할 수 있겠습니다.
우리는 이러한 궁금증을 상관계수를 통해서 일부 해소했었습니다.
다만 공분산과 상관계수를 통해서는 변수 X, Y가 어느정도의 관련성이 있다는 것 정도로만 파악할 수 있었던 것이지,
X가 Y에 얼마만큼의 영향을 주는지, 혹은 Y가 X에 얼마만큼의 영향을 주는지는 자세히 알지 못했습니다.
한번 임의의 가설을 통해 생각해보죠.
부모의 키가 클수록 자녀의 키도 클 것이다라는 가설이 있다고 하면,
이 가설이 성립하는지 파악하기 위해 우선 산점도(Scatter Plot)를 그려서 두 변수 간 경향을 파악하겠죠?
만약 산점도가 위와 같다고 하면, 우선 눈대중으로 봐도 가설이 성립함을 알 수 있을 것입니다!
다만 통계적으로 가설이 성립하는지 체크를 해봐야겠죠.
만약 가설이 성립한다면 저 직선의 기울기는 0보다 클 것이고,
그렇지 않다면 기울기는 0일 것입니다.
우리는 이를 위해 회귀분석을 이용합니다.
회귀분석을 통해 독립변수 X로 종속변수 Y를 예측할 수 있는 기울기의 값을 찾을 수 있으며,
이는 다시 말해서 독립변수가 종속변수에 미치는 영향을 파악할 수 있다는 것입니다.
회귀분석(regression analysis)은 매개변수 모델(parametric model)을 이용하여 통계적으로 변수들 사이의 관계를 추정하는 분석방법이다.
주로 독립변수(independent variable)가 종속변수(dependent variable)에 미치는 영향을 확인하고자 사용하는 분석방법이다.
회귀분석은 다른 독립변수들을 고정시키고 한 가지 독립변수만을 변화시킬 때 종속변수가 어떻게 변화하는지를 확인한다.
종속변수와 관련이 있는 독립변수를 찾을 때, 또 독립변수들 간의 관계를 이해하고자 할 때 사용한다.
[네이버 지식백과] 회귀분석 [regression analysis]
회귀분석의 개념을 좀 더 살펴보죠.
용어를 정리해보면 하나의 종속변수와 하나의 독립변수 사이의 관계를 분석할 때 단순회귀분석(simple regression analysis)이라 하고,
하나의 종속변수와 여러 독립변수 사이의 관계를 규명하고자 할 때 다중회귀분석(multiple regression analysis)이라 합니다.
기호 | 용어 | 비슷한 용어 |
X | 설명변수 | 독립변수, Feature, 특징 ... |
Y | 반응변수 | 종속변수, Target ... |
β | 모수 | parameter, 회귀계수, 가중치, weight ... |
ε | 오차 | error, 잔차 ... |
회귀분석시 주로 등장하는 개념입니다. 알고 계시면 좋습니다.
다만 세부적인 용어는 약간의 차이가 있습니다만(오차 vs 잔차) 이는 이후 포스팅에서 다루겠습니다.
참고로 머신러닝(기계학습)에서는 β 를 주로 weight라는 용어로 사용합니다.
따라서 이 단순회귀모형 예제를 살펴보면, 산점도를 관통하는 하나의 직선이 그려지는 것을 알 수 있습니다.
핵심은 '직선'의 형태, 즉 일차함수의 형태로 선을 긋는다는 것인데요.
절편과 기울기가 있는 부분만 본다면 중학교 때 배운 일차함수와 크게 다를 바가 없어 보이는데 오차항이라는 새로운 친구가 추가되었습니다.
오차 ε는 실제값 - 예측값으로 정의할 수 있습니다.
이 오차항은 어떤 역할을 할까요?
먼저 우리가 긋는 직선으로는 퍼져 있는 점들을 모두 이을 수 없다는 현실적인 문제에서 출발합니다.
우측과 같이 모든 점을 완벽하게 잇는다면 어떠한 X 값이더라도 Y값을 정확하게 예측할 수 있겠으나,
저렇게 긋는 것은 사실상 불가능합니다. 성립하는 함수식을 찾기도 매우 어려울 것이고요.
그래서 좌측과 같이 수많은 직선 중 최적의 직선을 찾아내야 합니다.
이러한 최적의 직선은 다시 말해서 X와 Y의 관계를 최대한 잘 나타내는 직선일 것이며,
이는 오차를 최소화하는 직선이라고 정리할 수 있습니다.
다시 생각해보죠.
먼저 우리는 우측처럼 완벽한 곡선을 그릴 수 없으므로, 어쩔 수 없이 어느정도의 오차를 감수하는 직선을 그어야 합니다.
다만 그중에서도 오차를 최소화할 수 있다면 최선은 아니지만 '그나마' 최선에 가까운, 차선 정도에 해당하는 선택이겠죠.
만약 오차를 최소화하는 직선이 아닌, 잘못된 직선을 찾았다고 가정합시다.
즉 부모의 키가 170일 때 자녀의 키가 172 이라고 가정할 때 우리가 예측한 값이 (170, 158)가 된다면,
X가 170일 때 오차는 참값 172 - 예측값 158 = 14 입니다.
이러한 경우, "부모의 키가 170일 때 자녀의 키는 158이야!" 라고 자신있게 외칠 수 있을까요?
그러나 오차를 최소화하는 직선의 경우, X가 170일 때 예측값 Y가 172.8라고 하면
참값 172 - 예측값 172.8 = -0.8 입니다.
참값을 정확하게 예측하진 못하지만,
그래도 "부모의 키가 170일 때 자녀의 키는 172.8이야!" 라고 말해도 "음... 얼추 맞았어 ^^" 라는 대답을 들을 수 있겠죠?
이 오차를 최소화하는 원리는 다음 포스팅에서 다뤄보도록 하겠습니다.
회귀분석은 결국 독립변수(independent variable)가 종속변수(dependent variable)에 미치는 영향을 확인하고자 사용하는 분석방법이라는 것만 알고 계시면 충분할 것 같습니다.
다음 포스팅에서는 단순회귀분석의 개념부터 다뤄보도록 하겠습니다.
감사합니다.
잘 읽으셨다면 게시글 하단에 ♡(좋아요) 눌러주시면 감사하겠습니다 :)
(구독이면 더욱 좋습니다 ^_^)
- 간토끼(DataLabbit)
- University of Seoul
- Economics, Big Data Analytics