본문 바로가기

Lab Notes

WEKA 결과 화면 분석



WEKA 툴을 사용하면서 항상 보는 분류 결과 써머리 화면...


나이가 들다보니 어떤 때엔 꼭 혼란에 빠진다. 이 참에 정리해 놓자.


먼저 간단한 예제 화면을 보자.



Validation의 결과 화면으로서 총 22개의 인스턴스에 대한 분류 결과이다. (Correctly Classified Instances + Incorrectly Classified Instances = 18+4 = 22)


우선, 이 분류기의 정확도 (제대로된 클래스로 분류한 결과)는 Correctly Classified Instances. 즉 81.8182%이다.


Kappa statistic은 Cohne's kappa 라고도 하는 통계량으로 두 명의 평가자가 있다고 했을 때 이를 평가한 결과의 일치도를 보는 통계량이다.(평가자간 일치도) 완전히 다르게 평가하면 0, 완벽히 일치하면 1이 된다. 보통 0.8 이상이 되어야 한다고는 하는데 학자들마다 다른 기준들을 제시한다. (Fleiss 의 경우는 0.75이상이면 excellent, 참고)


Cohne's kappa(κ) 기준은,  (위키피디아 참고)

 κ  ≤  0.2

 Slight(Poor)

 0.2 < κ  ≤  0.4

 Fair

 0.4 < κ  ≤  0.6

 Moderate

 0.6 < κ  ≤  0.8

 Substantial

 0.8 < κ

 Good


상기의 기준이라면 예제의 결과는  "Substantial"로 조금 더 평가자간 일치도를 높일 필요가 있다. 


Mean absoluite error(MAE) 는 에러들의 절대값의 평균을 말한다. 상기의 경우 10%대.


Root mean squared error (RMSE) : 에러들의 제곱값을 평균해서 다시 제곱근을 구한 값을 말한다. 에러들을 표준편차의 시각으로 바라볼 수 있게 하는 값으로 68%의 실험결과는 RMSE 보다 큰 에러율을 가지지 않으며, 95%의 실험결과는 2*RMSE 보다 작은 에러율을 가진다. (가정: 발생되는 에러들은 정규분포를 따른다) - 참고 (68% - 95% Rule)




Detailed Accuracy By Class는  "Moderate" 클래스를 예를 들어 설명한다.


상기의 예는 전체 클래스가 총 4개로 존재하며 각각의 데이터가 Sever/Moderate/Mild/Normal인지를 분류한다.

여기서 테스트한 Moderate 데이터는 총6개 이며 하기 Confusion matrix에서 보듯이 6개 데이터 중 5개는 Moderate로 올바르게 예측하였으며 1개의 데이터는 Mild로 잘 못 분류 예측되었다.


TP Rate는 True Positive이며 주어진 클래스 내에서 올바르게 Moderate로 분류된 비율이다. 상기의 예에서는 5/6 = 0.833이 된다. (이것은 Recall (재현율)과 같다)

-TRUE POSITIVE - POSITIVIE라고 분류한게 실제로 POSITIVE (TRUE)


FP Rate는 Fasle Positive 이며 moderate 클래스를 제외한 전체 클래스에서 moderate로 잘 못 분류된 경우. 상기의 예에서는  3/(22 - 6) = 3/16 =  0.188

-FALSE POSITIVE - POSITIVE라고 분류한게 실제로는 NEGATIVE(FALSE))


Precision은 정확도로서 전체 클래스에서 moderate로 분류된 데이터들 중에서 실제로 moderate인 비율을 뜻한다. 상기의 예에서는  5/(1+5+1+1) = 5/8 = 0.625


Recall은 상기의 TP Rate와 같은 개념이다.


F-Measure는 2* (Precision * Recall) / (Precision + Recall) 이다. 상기의 예에서 2*0.625*0.833 / (0.625+0.833) = 1.04125/1.458 = 0.714


ROC Area는 Optimal한 분류기일 수록 1에 가까워지며 예를 들어, 0.5라면 "Random Guessing"이라 할 수 있다. (이 경우, kappa값이 0의 경우와 동일)  - 분류기 성능을 평가할 때 매우 중요!


이상. 정리 끝!










'Lab Notes' 카테고리의 다른 글

Quasiperiodic function (준주기적 함수)  (0) 2014.12.16
WEKA OutOfMemory 창이 뜰때  (0) 2014.10.02
파이썬 배포 패키지 생성 시 유의~  (0) 2014.09.24
conTEXT 와 Python 연동  (0) 2014.09.23
혹시나 해서 SSD 테스트  (0) 2014.09.23