마이닝 결과에 대한 평가기법에는 여러가지가 있겠지만,,

딱 일곱개만 알아보겠다.
그리고 모두 수치적 데이터에 대한 평가방법이다.



평균제곱오차 (Mean Squared Error)
루트평균제곱오차 (Root Mean Squared Error)
평균절대값오차 (Mean Absolute Error)
상대적평균오차 (Relative Squared Error)
루트상대적평균오차 (Root Relative Squared Error)
상대적절대값오차 (Relative Absolute Error)
상관계수 (Correlation Coefficient)

이렇게 있다

그런데 이 중에서 내가 빨간색으로 해놓은 평균제곱오차(MSE)랑 상관계수만 알아둬도 될 것 같다


 

p : 예측값, a : 실측값, 위에 밑줄말고 윗줄쳐진거는 그것의 평균

보이냐?

아.. 아직 젊으니까.


평균제곱오차랑 상관계수 위주로 설명을하고 나머지는 걍 버리겠습니다


평균제곱오차

예측값에 실측값의 오차에 제곱을 인스턴스의 개수대로 나눈거다

그냥 하면 되지 왜 쓸데없이 제곱을 하느냐?

제곱을 하지 않으면 음의수나, 0이 나올 수도 있다..

제대로된 평가를 하기 위해 양의 수치를 끌어내려고 제곱을 하는 것

이렇게되면, 각 요소에 대해서 분산을 구하기도 쉬워진다


 

 

루트평균제곱오차

평균제곱오차에 루트를 씌운 것


 

 

평균절대값오차

평균제곱오차에 절대값을 씌운 것

어? 여기서 의문점을 발견할 수 있다

아까 평균제곱오차에서 0값이나 음수값이 못나오게하려고 제곱을 한다고했는데, 역시 그렇게 되면, 연산속도가 빠른 절대값을 쓰면 되는데, 왜 이걸 안쓰냐 하는 겁니다.

그건 절대값오차를 내게되면 오차의 중앙값을 가져오게 된다,, 수치다루기가 좀 어려워지는 단점이 있다.

또, 평균제곱오차를 사용하면 분산을 구하기가 쉽다

 

 

상대적평균오차

평균제곱오차처럼 예측값과 실측값의 차분을 이용하는것 까지는 같지만, 인스턴스의 개수로 나누는게 아니라, 실측값의 평균으로 나눈다

그것은 바로 실측값과 예측값의 차이를 보고 이 시스템이 얼마나 예측한것 보다 잘낫는지 못낫는지를 보는 것

 

 

루트상대적평균오차

상대적평균오차에 루트를 씌운 것


 

 

상대적절대값오차

상대적평균오차에 절대값을 씌운 것

원리는 평균절대값오차랑 비슷해서 잘 안씁니다

 

 

상관계수

이거는 우선 수식을 보도록하자

Spa는 예측값과 예측값의 평균의 차분과 실측값과 실측값의 평균의 차분을 곱한거에 인스턴스 수대로 나눈것

Sp는 예측값과 예측값의 평균의 차분을 인스턴스 수 대로 나눈 것

Sa는 실측값과 실측값의 평균의 차분을 인스턴스 수 대로 나눈 것

차분을 인스턴스 수 대로 나누었다는 자체는 얼마나 평균과 거리 차이가 있는지 알 수 있는 척도가 될 수 있다

Spa/루트SpSa 이거야

예측과 실측값의 평균거리에 예측, 실측 차분을 곱한걸 나눈 것


결과는 -1, 0, 1 이렇게 세가지 수치가 나온다

정확히 말하면 세가지는 아니고 소수점대로 나온다


두 변량 사이의 선형적 관계를 알아볼 수 있는 척도가 됩니다

 - 점들이 얼마나 몰려있는가



  



'DataMining' 카테고리의 다른 글

선형회귀분석  (0) 2014.06.16
연관규칙 (Association Rule)  (0) 2014.06.16
K-Means  (0) 2014.06.16
교사학습과 비교사학습  (0) 2014.06.16
Clustering과 Classification  (0) 2014.06.16
Posted by 긍정왕오킹