본문 바로가기
Work/AI

[AI] Regression (회귀) 개념, 분류

1. 회귀분석 개념

ML Supervised Learning(지도학습)에 Classification에 이어, Regression의 개념과 사용알고리즘의 종류를 알아보자

회귀분석은 데이터 변수들간에 함수관계를 파악하여 통계적 추론을 하는 기술이다.

좀더 쉽게 설명하자면, 독립변수에 대한 종속변수값의 평균을 구하는 방법입니다.

h() 가 위에서 말한 조건에 따른 평균을 구하는 함수이며 우리는 이것을 보통 ‘회귀 모델’이라고 부릅니다.

이 함수는 어떤 조건(x1, x2, x3, …)이 주어지면 각 조건의 영향력(beta1, beta2, beta3, …)을 고려하여 해당 조건에서의 평균값을 계산해 주는 것인데, 뒤에 붙는 e 는 ‘오차항’을 의미한다. 측정상의 오차나 모든 정보를 파악할 수 없는 점 등 다양한 현실적인 한계로 인해 발생하는 불확실성이 여기에 포함된다.  이런 잡음은 이론적으로 보면 평균이 0이고 분산이 일정한 정규 분포를 띄는 성질이 있다.

회귀 분석을 한다는 것은 이 h() 함수가 무엇인지를 찾는 과정을 의미한다.

 

시간에 따라 변화하는 데이터나 어떤 영향, 가설적 실험, 인과 관계의 모델링등의 통계적 예측에 이용될 수 있다.

그러나 많은 경우 가정이 맞는지 아닌지 적절하게 밝혀지지 않은 채로 이용되어 그 결과가 오용되는 경우도 있다.

All models are wrong, but some are useful 

격언을 맘에 새기고 사용하자.

 

 

2. 회귀분석 종류

회귀분석의 종류는 무엇이 있고, 어떻게 나뉠까? 

회귀 분석 모델은 다양한 기준으로 나뉜다. 빨간박스에 있는 기준이 회귀모델을 일반적으로 분류하는 기준이다.

일반화 수준에 따라 계층적으로 정리하면 아래와 같은 도식으로 표현할수있다.

 

너무 복잡하다.

선형과 비선형, 다중선형모델이나 단순선형모델 정도만 알았지만, 회귀분석모델은 굉장히 다양하다.

하나씩 정리해보도록 하자.

 

(1) 선형 Liner, 비선형 Non-Linear

회귀 모델에서 선형과 비선형을 구분할 때, 독립 변수와 종속 변수의 관계를 기준으로 생각하면 안된다.

선형이냐 비선형이냐를 결정하는 대상은 ‘변수’가 아니라 ‘회귀 계수’이다.

흔히 독립변수가 여러개이면 비선형이라고 생각하지만, 로그함수나, 다차방정식도 선형임을 생각해볼때 모순적이다.

위와 같은 식으로 해석되는 모델은 x,y 변수를 변환하더라도 파라미터를 선형식으로 표현할수 없다.

통계모델링에서는 선형회귀모델을 많이 사용하지만,

비선형모델은 유연성을 지니고 있어 복잡한 패턴을 갖는 데이터도 모델링이 가능하다는 장점을 가지고 있어

최근 딥러닝 알고리즘 (RNN,CNN 등)에 많이 사용하고 있다.

 

선형 회귀 모델은 다시 종속변수 (Y) 의 개수에 따라 나눌 수 있다.

(2) Univariate 단변량, Multivariate 다변량

구하고자 하는 Y(종속변수)가 N개 일 때, 다변량 회귀모델이라고 한다.

몇개의 독립변수가 영향을 주는지보다, 추론하고자 하는 Y개의 개수가 많을수록

더 복잡한 모델이 되는데, 이를 다변량 회귀 모델이라고 한다.

대표적인 알고리즘으로 SUR, VAR, Panel 등이 있다.

 

그리고 그와 같은 레벨에서 독립변수 X 의 개수에 따라서도 모델을 분류하는데 이를,..

(3)  Simple 단순, Multiple 다중

종속변수 Y를 구하는 독립변수(X)가 두개 이상 일 때, 다중 회귀 모델이라고 한다.

 

이렇게 종속변수의 개수와 독립변수의 개수에 따라 총 4가지 유형으로 회귀모델을 나눌수있다.

 

 

 


 

우리가 회귀분석하면 흔히 생각하는 선형회귀분석과 로지스틱 회귀분석에 대해서 마지막으로 이야기해보자.

선형 회귀 모델 (linear regression model)

고전적 선형 회귀 모델은 단변량 선형 회귀 모델의 가장 기본 형태입니다. R에서는 lm()이라는 함수를 이용해서 모델링을 하는데, 이 모델을 수식으로 표현하면 아래와 같습니다

고전적 선형 회귀 모델은 독립 변수의 개수에 따라 아래와 같이 명칭을 구분하기도 합니다.

  • 단순 선형 회귀 (simple linear regression): 독립 변수가 하나
  • 다중 선형 회귀 (multiple linear regression): 독립 변수가 둘 이상

 

고전적 선형 회귀 모델은 형태가 단순한만큼 데이터에 대해 많은 가정을 갖고 있습니다.

  • 오차항은 평균이 0이고 분산이 일정한 정규 분포를 갖는다.
  • 독립변수와 종속변수는 선형 관계이다.
  • 오차항자기 상관성이 없다.
  • 데이터에 아웃라이어가 없다.
  • 독립변수와 오차항서로 독립이다.
  • 독립변수 간에서는 서로 선형적으로 독립이다.

 

따라서 만약 실제 데이터가 이런 가정을 충족하지 않는다면, 고전적 선형 회귀 모델은 실제 데이터를 정확히 반영하지 못하게 되므로 다른 방법을 사용해야 합니다. 일반적으로 알려진 가이드라인은 다음과 같습니다.

  • 독립 변수와 종속 변수가 선형 관계가 아닌 경우: Polynomial regression, Generalized Additive Model (GAM)
  • 오차항의 확률분포가 정규분포가 아닌 경우: Generalized Linear Model (GLM)
  • 오차항에 자기 상관성이 있는 경우: Auto-regression
  • 데이터에 아웃라이어가 있는 경우: Robust regression, Quantile regression
  • 독립변수 간에 상관성이 있는 경우(다중공선성): Ridge regression, Lasso regression, Elastic Net regression, Principal Component Regression (PCR), Partial Least Square (PLS) regression

 

각각에 대한 좀 더 상세한 설명은 아래 사이트를 참조하길 바랍니다.

참조:  https://danbi-ncsoft.github.io/study/2018/05/04/study-regression_model_summary.html