
分类
|
191
样记录的数量取决于过采样率,这个过采样率需要使数据集的结果类别达到大致平衡。
R
中有好几种
SMOTE
算法的实现
,最能全面处理非平衡数据的
R
包是
unbalanced
,其中
提供了各种各样的技术,包括一种可以选出最佳方法的“竞赛”算法。
SMOTE
算法特别
简单,在
R
中使用
FNN
包就能直接实现。
Python
中的
imbalanced-learn
包通过一个与
scikit-learn
兼容的
API
,实现了多种
SMOTE
算法
。它可以提供各种过采样和欠采样方法,并支持在提升和装袋分类器中使用
这些技术。
5.5.4
基于成本的分类
实际上,准确率和
AUC
只是选择分类规则的一种基本方法。通常可以为假正例和假负例
估计出一个成本,在对
1
和
0
进行分类时
,通过考虑这些成本来确定最佳临界值是更合适
的一种做法。例如,假设一项新贷款违约的预期成本为
C
,而贷款还清的收益为
R
,那么
该贷款的预期收益就是:
预期收益
=
P
(
Y
=
0)
×
R
+
P
(
Y
=
1)
×
C
与其简单地将贷款标记为违约或还清,或者确定违约概率,还不如确定贷款的预期收益是
否为正。预测违约概率只是一个中间步骤,这个步骤必须与贷款总额结合起来,以确定它
的预期利润,这就是商业的最终规划指标。例如,即使一项大额贷款的预测违约概率稍
高,它的预期利润也高于一项小额贷款。
5.5.5
探索预测结果
单一指标(如
AUC
)并不能对模型对具体情况的适应性做出全面的评价。图
5-8
给出了
四个不同模型的决策规则,这四个模型都是在贷款数据上拟合出来的,它们都只使用了
两个预测变量 ...