머신러닝을 처음 공부하기 시작하면 막히는 부분이 있다. 바로 결정계수이다. 확률을 심도 있게 배우지 않은 학생들은 모두 결정계수에서 좌절한 후, 머신러닝은 역시 공대생의 것이라며 프로그래밍을 포기하곤 한다. 그래서 오늘, 결정계수를 최대한 쉽게 설명하는 글을 적어보려 한다.
결정계수 = R제곱 통계량 = Coefficient of Determination = R^2 = R squred 이름도 많다...
한 줄로 설명하자면,
결정계 수란 = '회귀 모델의 성과 지표'
1에 가까울 수록 좋은 회귀 모델
0에 가까울 수록 나쁜 모델
음수가 나올경우, 바로 폐기해야 하는 모델
결정계수를 구하는 공식은 아래와 같다.
여기서 주의깊게 봐야 할 부분은 바로
이 부분이다.
결정계수의 4가지 케이스
만약 우리가 타겟 데이터의 평균값을 예측하는 모델을 쓴다면, 편차는 항상 오차와 동일하기 때문에 결정계수(R^2)는 =0 이 된다.
(분모와 분자가 같기 때문)
오차가 편차보다 커서 결정계수의 값이 음수가 된다면 이는 회귀모델의 성능이 평균값으로 예측하는 값보다 결과가 좋지 않음을 의미한다.