分类模型评估:AUC,GINI,KS
除上述几个简单的计算指标外,通常还会用AUC,GINI,KS来评价模型的整体表现
还是使用上一小节泰坦尼克的预测数据titanic_export.csv,用到的变量有Survived_1_percentage 和 Survived,计算代码如下:
A | B | |
1 | =T("D://titanic_export.csv") | |
2 | =A1.(Survived_1_percentage).ranks() | |
3 | =A1.derive(A2(#):rank) | |
4 | =A3.groups(Survived;sum(rank):sum_rank,count(~):count) | |
5 | =(A4(2).sum_rank-A4(2).count*(1+A4(2).count)/2)/(A4(2).count*A4(1).count) | /auc |
6 | =2*A5-1 | /gini |
7 | =A1.sort@z(Survived_1_percentage) | |
8 | =A7.len()\10+1 | |
9 | =A7.derive(#\A8:decile) | |
10 | =A9.groups(decile;count(Survived==1):event,count(Survived==0):non_event) | |
11 | =A10.derive(event+cum_event[-1]:cum_event,non_event+cum_non_event[-1]:cum_non_event) | |
12 | =A11.derive(cum_event/A4(2).count-cum_non_event/A4(1).count:ks) | |
13 | =A12.max(ks) | /ks |
A5 返回AUC值
A6 返回GINI值
A13 返回KS值
这三个指标的计算方法比较复杂,有兴趣的读者请自行查阅相关资料,本书只提供计算代码供读者使用。
关于各指标的使用方法,可参阅http://www.raqsoft.com.cn/wx/course-data-mining.html模型评估章节。