X (covariate, predictor, feature, independent variable)와 Y(response variable, outcome, dependent variable)의 관계를 규명하고자 할 때 Regression model을 세워볼 수 있다. 이 포스팅에서는 linear regression과 logistic regression에 대해 간략하게 설명하고자 한다.
Linear regression
Simple linear regression
Simple linear regression model은 다음과 같다.
이때 다음의 특징이 존재한다.
- Linearity: X, Y의 관계가 선형
- Constant variance: Residuals는 constant variance를 가짐.
- Independence: Observations는 독립.
이때 error의 normality 가정은 필수적이지 않다.
그러면 이제 다음과 같이 beta를 estimate하고 싶다고 해보자.
이때 Least square estimation (LSE)를 통해 beta를 estimate할 수 있다. LSE는 residuals의 제곱의 합을 최소화하는 beta 값을 찾는 것으로 residual은 다음과 같이 정의된다.
LSE로 구한 beta hat은 다음과 같다.
한편 regression 모델을 만든 후에는 model이 얼마나 괜찮은지 확인해볼 수 있다. 1) 먼저 Residuals로 Histogram/QQ plot을 그려서 분포를 확인하거나, residual plot을 통해 linearity나 constant variance 가정이 잘 만족하는지 확인할 수 있다. 혹은 2) coefficient of determination (R^2)를 계산할 수 있다. R^2는 아래와 같이 정의되며 전체의 variability 중 모델이 설명하는 variability가 얼마나 되는지에 대한 비율이다 (0과 1 사이). R^2 값의 기준은 명확하지 않고 분석의 종류나 맥락에 따라 달라지는데, 일반적으로 R 값이 굉장히 큰 경우(1에 가까움)는 거의 없다고 한다.
Multiple linear regression
Multiple linear regression은 covariate X가 하나가 아니라 여러 개인 경우이다. 다음과 같이 코드로 회귀분석을 하여 결과를 얻을 수 있다.
위 그림에서 coef가 각각의 beta값이고, std err는 각 beta 값의 standard error이다. t는 coef/std err로 계산한 값이며, 이 값과 t-분포를 통해 p-value도 계산할 수 있다. 즉, 각각의 P>|t|를 통해 각 X (covariate)가 유의한지 판단할 수 있다 (귀무가설은 beta=0, 이는 X가 Y에 영향을 미치지 않는다는 의미이다).
Prob (F-statistic)는 전체적으로 봤을 때 유의하게 설명하는 coefficient가 있는지 나타내는 것 (H0: 하나도 없다)이다 (각각의 X가 유의한지 검정할 때는 t-test를 사용했다면 이 경우에는 F-test를 사용한다). 전체적으로 모델이 Y를 얼마나 잘 설명하는지 보려면 R-squared 값을 확인해야 하는데, Adj. R-squared는 covariates의 수 (X의 종류)가 많을 때 R-squared가 upward biased될 수 있으므로 이를 보정한 값이다.
X간의 강한 상관관계가 있는 경우를 다중공선성 (Multicollinearity)이라고 한다. 이 경우 beta 값 추정의 신뢰도가 낮거나 추정을 할 수 없게 되기 때문에 X간의 상관관계에 대해 주의할 필요가 있다. 다중고언성의 경우 VIF (Variance Inflation Factor)나 허용도 (tolerance)로 판단할 수 있는데, 둘은 역수 관계이다. 일반적으로 각각의 coviate에 대하여 VIF가 10 이하이거나 허용도가 0.1 이상이면 문제가 없다고 판단한다.
또 X 중 일부만 회귀식에 포함시킬 때 변수 선택 (variable selection)을 한다. 이는 설명력이 낮은 변수를 분석에서 제외하여 다중공선성 문제를 피할 수 있는 등의 장점이 있다. 하지만 선택된 변수가 정말로 인과관계를 가지는지, 혹은 상관관계를 가지는지 주의하여 판단해야한다.
Logistic regression
Y가 binary (Y=0, Y=1)일 때 linear regression에서의 가정이 맞지 않게 되어 다른 방법을 사용해야 한다. 이때 사용할 수 있는 방법이 linear regression의 확장판인 logistic regression이다.
Linear regression이 X에서 Y를 예측했다면, logistic regression에서는 X에서 확률 p를 예측하는 과정이다 (Y가 Bernoulli(p)를 따를 때).
확률 p에 대해서는 다음과 같이 식을 세워볼 수 있다.
Beta 값을 estimate할 때는 MLE가 사용된다. 그렇지만 closed-form estimator가 존재하지 않아서 iterative approach를 통해서 estimation을 할 수 있다. 대표적인 방법으로는 Reweighted Least Squares Algorithm (RWLS, Newton Raphson)이 있다.
Beta 값을 estimate했다면, 새로운 데이터(X)가 왔을 때, 이로부터 Y=1일 확률인 p를 예측해볼 수 있다.
Reference
- Wasserman, L. (2004). All of Statistics: A concise course in statistical inference.
'Statistics' 카테고리의 다른 글
[통계 기초] 상관 계수의 구분: 피어슨 (Pearson), 스피어먼 (Spearman) (0) | 2021.10.13 |
---|---|
[통계 기초] 표준 편차 (Standard deviation)와 표준 오차 (Standard error) 차이 (0) | 2021.06.29 |
[통계 기초] Maximum Likelihood Estimation (MLE) (0) | 2021.06.10 |
[통계 기초] Bayesian Inference (베이즈 추론) (0) | 2021.05.25 |
[통계 기초] ANOVA (분산 분석) (0) | 2021.05.23 |