当前位置:   article > 正文

f1 score 代码_类别不平衡处理方式及测试代码

分类模型数据不平衡f1

起因:与某数据服务提供商联合建模,对方数据特征iv与ks都很低。

此时对方建模同学提出“这可能是因5%的bad rate导致的,需要采样。”(一脸懵

切不论5%是否能算作类别不平衡,也先不谈采样是否能使得iv和ks提升。

我们先思考对于类别不平衡数据我们可以选择哪些处理方式?

直接上kaggle notebook测试代码:

https://www.kaggle.com/peaceworld/ensemble-test-credit-score-model-example​www.kaggle.com

这份数据情况:训练集(150000, 10),其中0:good,1:bad 6.68%,与我们实际情况很接近。

先对训练集train test split,然后对train进行采样操作,test保持不变。之后train上训练模型,test上评估。

常见处理方式:

1.不处理:直接使用lightgbm五折的方式训练模型作为base。请注意,不要直接默认阈值为0.5,如果你的评估指标是和阈值相关的,请在cv train的时候尝试搜索,然后用在test上使用。

2.调整样本权重:在方法1的基础上,增加lgb模型参数is_unbalance=True,本质是增加小类别样本权重。

3.过采样:随机对小类别样本进行重复采样,使得最后好坏样本比例1:1,然后使用方法1训练。

4.欠采样:随机去除大类别样本,使得最后好坏样本比例1:1,然后使用方法1训练。

5.EasyEnsemble&

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/运维做开发/article/detail/967814
推荐阅读
  

闽ICP备14008679号