본문 바로가기
데이터분석 이야기/데이터 분석 고민거리(궁금증에 대한 연구)

궁금증3. 결정계수(R2)가 낮아도 좋은 모델인 경우(2편)

by 미래대비자 2022. 5. 12.

안녕하세요 미래대비자 입니다.

지난시간에는 결정계수(R2)가 낮아도 좋은 모델인 경우(1편)에 대해서 이야기를 했습니다.

 

2022.05.09 - [데이터 분석 고민거리(궁금증에 대한 연구)] - 궁금증3. 상관계수가 낮은데 R2가 높은 이유(1편)

 

궁금증3. 상관계수가 낮은데 R2가 높은 이유(1편)

안녕하세요 미래대비자입니다. 오늘은 데이터 모델링을 하는 경우 상관계수는 0에 가까운데 회귀분석 모델링의 R2는 80%가 넘는 경우가 있는데 이런경우는 어떻게 이해를 해야 할까?'라는 주제

stat-university.tistory.com

 

이번시간에는 데이터 분석을 할 때 결정계수가 낮은 경우 어떻게 생각해야 하고 어떤 분석을 해야 할까를 고민하는 데이터 분석가들을 위해 글을 쓰게 되었습니다.

 

우리는 데이터 분석을 하면서 모델의 성능지표로 R2를 사용하는 경우가 많습니다.

그런데 한가지 이런 경우가 발생해서 당황스러운 경우가 있을 것입니다.

데이터 분석을 돌렸는데 'R2가 낮다...!!! '

엇! 이상하다.. 우리는 분명 배우기를
'R2가 높다면 좋은모델?',
'R2가 낮으면 안좋은 모델?'
아닌가?

 

회귀문제(피처와 타겟간의 인과관계를 규명, 예측 등에 사용)를 다룰 때 즉, 예측 모델을 만들 때 우리는

1. 전통적인 회귀분석을 이용하거나

2. ML(Meachine Learning)을 통해 접근합니다.

 

결정계수 구하는 수식

 

SST는 전체변동이고 SStrt는 처리 변동이다.
즉, '전체 변동에서 모델이 이 변동을 얼마나 설명하는가?'라는 의미로 해석하면 된다.
그런데 R2이 0이다?
예측모델은 크게 보면 선형모형과 비선형 모형으로 구분이 되고
선형모형일 때 예측이 목적인 경우라면
R2값이 매우 중요한 의미를 갖게 된다.
R2가 낮으면 모델 자체가 데이터를 설명하지 못하기 때문에 의미를갖지 못하게 되어 버린다..
(물론 우리가 분석방법을 다 파악하지 못했거나, 실력이 부족한 경우를 제외하고...)

 

하지만 분석이 목적이 선형모델링의 분석방법으로 예측모델을 모델링하는것이 아니라 추정 또는 검정이라면?

R2가 낮아도 상관은 없다.

그렇다면 선형모델링의 분석방법으로 예측모델을 만들었는데 R2가 낮다면?

 

그러면 데이터에서 우리는 마이닝을 할 수 없는 걸까?

의미를 찾지 못하는 걸까?

 

 

비선형 모델을 가정하고 접근하는것이 필요하다.
또는 다중공선성문제로 인해 R2가 높게 나타나는경우도 있다.


ML(Meachine Learning)을 통해서 접근하면 해결할 수 있게 됩니다.(데이터 자체가 본질적으로 관계가 없는 의미 있는 분석일 수 있기 때문에 반드시 그런것은 아니다.)

 

전통적인 통계분석(일반적으로 모수통계를 말함)에서는 통계학문적인 이론을 기반으로 몇가지 가정을 통해 모델링을 하지만 ML은 발달된 컴퓨팅 능력을 통해 손실함수를 정의하고 경험적인 방법을 활용하여 가중치를 조정함으로써 손실함수를 최소화하는 파라미터를 찾는과정을 거칩니다.

 

결국, 모델의 생성과정이 '블랙박스'인 경우가 많기 때문에 인과관계를 이론에 기반하여 설명하기는 쉽지 않지만 머신러닝의 회귀와 분류문제에 활용이 되는 것입니다!! 그래서 우리는 ML을 고려해야겠다는 결론에 도달하게 됩니다.

 

'궁금증3 글' 을 통해 우리는 단순선형회귀에서는 상관계수의 제곱이 R2과 같은 것을 알게 되었습니다.

 

 

 

궁금증3. 상관계수가 낮은데 R2가 높은 이유(1편)

데이터 모델링을 하는 경우 상관계수는 0에 가까운데 회귀분석 모델링의 R2는 80%가 넘는 경우가 있다. 이런경우는 어떻게 이해를 해야 할까? 상관계수의 공식을 보면 이해하는데 도움이 된다. 1.

stat-university.tistory.com

즉, 단순선형회귀에서 두개의 변수(베타0, 베타1)의 R2이 0이면 상관계수도 0과 동일한 의미입니다.
하지만 데이터의 변수가 2개 이상이고 비선형적인 모델인 경우는?
이 때부터 상관계수와 회귀분석의 R2의 의미는 달라지게 된다.

 

 

일반적인 차이
상관계수 vs. R2

 

위에서 설명했듯이 상관계수는 1개 vs. 1개를 비교하는 측면만 있지만,

R2는 1개vs.1개 비교 뿐아니라 여러개 vs.1개, 심지어는 여러개 vs. 여러개에 대한 의미도 가지고 있습니다

여기서는 위 빨간 글씨로 표기한경우를 의미하게 됩니다.

일반적으로 여러개는 피처(features) 또는 설명변수라고 말하고 1개는 타겟(target) 또는 종속변수라고 말하게 된지요.

 

ML은 여러 종류가 있지만 랜덤포레스트를 예를 들어보면,

피처와 타겟간의 상관계수를 구하면 1쌍(1개 vs. 1개) 씩 분석하기 때문에 n(n-1)/2개의 상관계수 값이 산출됩니다.

하지만 R2은 모델링 한번으로 1개의 결과값이 산출됩니다.

 

 

 

 

전통적인 통계분석에서 막혀서 ML을 돌렸다면,
변수가 여러개인 경우라는 건데 결정계수(R2)는 어떤 의미가 될까요?



결론적으로 변수가 여러개인 경우,

상관계수(-1에서 1사이의 값)는 여전히 두개씩만 비교하고 두 변수가 직선(선형적)일수록 그 절대값이 커지며 그렇지 않은 불규칙형태인 0에 가까워진다.

 

참고:
상관계수의 절대값 0.7~1 : 강한 양/음의 상관관계
상관계수의 절대값 0.3~0.7 : 약한 양/음의 상관관계
상관계수의 절대값 0.0~0.3 : 상관관계가 존재하지 않는 무상관관계

 

 

최종적인 결론을 내리자면 선형모델이 아닌 경우 결정계수 R2는 0에 가까워질 수도있는 것입니다.
그렇다면 모델 설명은 어렵겠지만 비선형모델링의 큰형님인 ML로 데이터를 분석해보게 되는 것이지요.

 

 

다시 강조하면,
머신러닝은 비선형 회귀 모델링의 대표적인 방법이다!
(물론 선형회귀도 가능합니다..)

 

 

비선형 모델로 모델링을 한다면 R2는 낮지만 예측력이 높은 모델을 만들 수 있을것입니다

(추가 : 또한, 전통적인 통계분석방법은 대부분 모수통계적인 방법이고 비모수적 통계분석 방법으로 접근할 수 있습니다)

 

다음시간에는 데이터 분석에서 가장 헷갈리게 하는 왜도와 첨도에 대해서 이야기 해보며 인사이트를 얻는 내용을 정리해보았습니다. 

2022.03.30 - [데이터분석 이야기/데이터 분석 이야기] - 왜도(skew)와 첨도(kurtosis)의 의미는 뭘까?(1편-왜도 편)

댓글