严重不平衡的数据集要考虑的指标

时间:2018-07-02 06:03:34

标签: python machine-learning classification metrics

我正在尝试针对GradientBoosting中严重失衡的数据训练Python模型。类别分布类似于0.96 : 0.04,分别对应类别0和类别1。

在对参数recallprecision进行了一些参数调整之后,我想到了一个好的模型。不同的指标得分如下所示,用于验证集。而且,它接近交叉验证分数。

recall : 0.928777 precision : 0.974747 auc : 0.9636 kappa : 0.948455 f1 weighted : 0.994728

如果我想进一步调整模型,应该考虑增加哪些指标。在我的问题中,将1误分类为0比将0误预测为1更麻烦。

1 个答案:

答案 0 :(得分:1)

处理类不平衡问题时,可以使用多种技术。如下所述:

(链接包括python imblearn packagecostcla package

  1. 重采样:

  2. 合奏技巧:

  3. Cost-sensitive Learning:由于您已经提到过,因此您绝对应该进行探索:

  

在我的问题中,将1误分类为0比将0误预测为1更麻烦。

在使用costcla软件包的成本敏感型学习中,您应尝试使用following方法,将基本分类器保持为GradientBoostingRegressor:

costcla.sampling.cost_sampling(X, y, cost_mat, method='RejectionSampling', oversampling_norm=0.1, max_wc=97.5)

您可以在此处为训练和测试中的每个数据点加载cost_mat [C_FP,C_FN,C_TP,C_TN]。 C_FP和C_FN基于您要为肯定和否定类别设置的误分类成本。请参阅有关信用评分数据here的完整教程。

相关问题