통계학 기초 Show [Python] 선형회귀분석을 이론, 결과해석, 그리고 코드까지 (Linear Regression Model)BK_Paul 2022. 7. 20. 10:13 통계학 모델 중에서 가장 기초이자 반드시 알아야 할 선형회귀분석(Linear Regression Model)을 소개할 것이다. 이 통계 모형을 처음 듣는 사람에게 설명한다는 관점으로 회귀분석이론부터 시작하여 회귀분석의 목적, 수식으로 이해하는 회귀모형, 회귀분석의 목적 그리고 회귀분석 결과 해석하는 가이드를 설명할 것이다. 이 모든 과정을 Python으로 구현해봄으로써 실무에서 어떻게 사용할 수 있을지까지 힌트를 남길 것이다. [ 글의 목차 ] 1. 회귀분석의 기초 2. 선형회귀분석의 목적 3. Linear Regression Model의 수식 4. 선형회귀분석의 해석 방법 5. 코드로 Linear Regression Model 구현해보기 1. 회귀분석의 기초회귀분석을 가장 쉽게 말하자면, 결과를 일으키는 원인을 찾아가는 과정이다. 통계적인 관점으로 보면 종속변수를 설명하기 위해서, 체계적 변수와 비체계적 변수로 설명하는 수식이다. 각각의 변수를 구조적으로 이해하면 아래의 그림과 같고, 각 변수에 대한 설명을 해보도록 하겠다.
2. 선형회귀분석의 목적(1) 데이터의 이해(Understanding)회귀분석의 기본적인 목적은 X(독립변수)를 갖고 Y(종속변수)의 변화를 이해하는 것이 핵심이다. 이러한 관점에서 회귀분석은 과거 현상이 어떤 원인 때문에 발생했는지 밝혀내고 이해하는데 사용될 수 있다. 예를 들면, "기본금리 상승과 이자율 상승은 어떤 관계를 갖고 있는가"와 같은 질문에 대한 답을 찾는데 회귀분석이 사용될 수 있다. 그래서 이러한 목적으로 데이터를 볼 때는 모델이 갖고 있는 설명력(R^2)이 중요할 것이다. (2) 예측(Prediction)Regression은 대표적으로 머신러닝 분야 중 Supervised Learning에서 사용하는 모델 중 하나이다. 이 분야의 핵심은 과거의 데이터를 기반으로 모델을 형성하여, 미래의 값을 예측하는데 사용하는 것이다. 예를 들면, "기본금리가 1%p 상승하면 코스피는 얼마나 증가 혹은 감소를 할지 예측"하는데 사용하는 것이다. 만약 Regression을 이러한 목적으로 사용하게 되면 가장 중요한 지표는 F1-Score이 될 것이다 . (3) 인과관계 증명 (Cause & Effect)통계 해석학에서 가장 중요한 목적 중에 하나인 인과관계를 측정하고, 그것이 정말 맞는지 증명하는데 회귀분석이 활용된다. 조금 더 세부적으로 말하면 인과 관계를 측정하고 추적하는 기능을 수행할 수 있다. 인과관계 측정이라고 하면, 다른 요인을 통제했을 때, 원하는 효과가 다시 반복적으로 나타나는가를 확인하는 것이다. 추적(증명)은 종속변수(Y)의 변화를 독립변수(x)의 변인에 귀속시킬 수 있는지 검증하는 것이다. 따라서 자기가 지금 어떠한 목적으로 데이터를 바라보는지에 따라 동일한 회귀분석이어도 사용할 수 있는 방법은 다양하게 있다. 3. Linear Regression Model의 수식사실 회귀분석에는 정말 다양한 종류가 존재하지만, 오늘은 가장 기본적인 선형회귀분석에 한하여 깊게 알아보고자 한다.
4. 선형회귀분석의 해석 방법 - SDEM 방법
5. 코드로 Linear Regression Model 구현해보기(1) 데이터셋 기본 설명
해당 데이터셋에서는 정말 다양한 column들이 있기 때문에 전부 다 파악하는 것은 이번 포스팅 목적에 어긋난다. 따라서 회귀분석을 이해하기 위해서 중요한 변수 2개만 설정하여 회귀분석 실습에 집중하려고 한다. (2) 데이터 분석 진행
회귀분석 결과는 SDEM 방식으로 이렇게 해석할 수 있고, 그때 봐야할 지표들은 p-value, effect size, coefficient, 그리고 R제곱 수치를 확인해야 한다. 각 수치들을 해석하는 구체적인 방법은 모델마다 다르니 자신의 데이터셋이 어떤 주제를 담고 있는지에 따라 유동적인 해석이 필요하다.
사실 Python에서 분석 실시하는 코드는 굉장히 쉬운 편이다. 만약 아래의 코드가 이해가 되지 않는다면, 기초 통계 및 Python 기초 문법을 더 공부하는 것을 권장한다.
회귀분석 실시 결과 기울기(계수)는 2687이다. 쉽게 말해서 건축연도가 한 단위(1년) 커질 때마다 부동산 가격은 2,687만큼 커진다는 뜻이다. 2010년도 건축물의 예측 가격은 259,896으로 예측이 되었다. 원래 Machine Learning에서 성과평가를 하기 위해서는 F1-Score, Prediction, Recall 등의 지표를 살펴봐야 하지만, 여기서 다루기에는 포스팅 내용이 너무 길어지기 때문에 다른 포스팅에서 다루려고 한다. 또한 실무적으로 단순 회귀분석은 모델링에 사용하지 않기 때문에 여기서 다루지 않도록 한다. 여기까지 내용을 알고 있다면 선형회귀분석에 대해서 기본적인 지식은 알고 있다고 할 수 있다. |