사이트맵  |  Contact Us
 
홈 > SAS Stories > SAS 활용 노하우
오늘의 팁 7/15 SAS에서 AUC(Area Under the Curve)와 Wilcoxon Rank Sums 더 정확히 계산하기 2010.07.16
MYSAS 7570 0
http://www.mysas.co.kr/sas_club/d_freeboard.asp?b_no=1445&gotopage=6&con=subject&keyword=&cmd=content&bd_no=04&gubun=Tip

AUC란 곡선 아래의 면적이고, 이진분류의 정확성을 재는 중요한 지수입니다.

Hosmer와 Lemeshow의 c-통계량과 같으며 지니 지수와 연관되어 있는 지수이기도 합니다.

AUC를 구하기 위해서는 일단 sas 데이터가 로지스틱 선형  회귀모형처럼 이진분류에 의해서 순위 정렬 되어 있어야만 하며

이진법으로 결과가 나오는 Y와 순위 정렬 지수인 P_0, P_1이 있을 때 데이터의 정확한 AUC 값과 Wilcoxon Rank Sum 통계량을

PROC NPAR1WAY 를 통해 얻을 수 있습니다.

이 방법은 수치 계산의 부담을 덜어주며 모델의 refit 과정을 위해 PROC LOGISTIC을 쓰는 과정을 피하게 해줍니다.  

AUC와 Wilcoxon Rank Sum 통계량의 관계는 다음과 같습니다.

AUC = (W-W0)/(N1*N0)+0.5

(N1과 N0은 class 1과 0의 빈도수이며, W0은 H0: Randomly ordered에서의 Expected Sum of Ranks이고 W는 Wilcoxon Rank Sums)

다음 예제를 통해 코드와 PROC NPAR1WAY가 PROC LOGISTIC 보다 더 정확한 AUC를 산출해주는 것을 볼 수 있습니다.

http://www.sas-programming.com/2009/10/auc-calculation-using-wilcoxon-rank-sum.html

 

 
 
휴대폰 번호
휴대폰 인증번호
 
 오늘의 팁 7/19 Box Cox transformation 와 PROC TRANSREG
 &SYSJOBID 를 이용하면 SAS 작업의 process id 를 알아 내실 수 있답니다.