千家信息网

怎么用python提升数据不平衡模型的性能

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章主要讲解了"怎么用python提升数据不平衡模型的性能",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么用python提升数据不平衡模型的性能
千家信息网最后更新 2026年11月01日怎么用python提升数据不平衡模型的性能

这篇文章主要讲解了"怎么用python提升数据不平衡模型的性能",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么用python提升数据不平衡模型的性能"吧!

数据集

训练数据中有三个标签,分别标记为[1、2、3],这意味着该问题是一个多分类问题。训练数据集有17个特征以及38829个独立数据点。而在测试数据中,有16个没有标签的特征和16641个数据点。该训练数据集非常不平衡,大部分数据是1类(95%),而2类和3类分别有3.0%和0.87%的数据,如下图所示。

算法

经过初步观察,决定采用随机森林(RF)算法,因为它优于支持向量机、Xgboost以及LightGBM算法。在这个项目中选择RF还有几个原因:

  1. 机森林对过拟合具有很强的鲁棒性;

  2. 参数化仍然非常直观;

  3. 在这个项目中,有许多成功的用例将随机森林算法用于高度不平衡的数据集;

  4. 个人有先前的算法实施经验;

为了找到***参数,使用scikit-sklearn实现的GridSearchCV对指定的参数值执行网格搜索,更多细节可以在本人的Github上找到。

为了处理数据不平衡问题,使用了以下三种技术:

A.使用集成交叉验证(CV):

在这个项目中,使用交叉验证来验证模型的鲁棒性。整个数据集被分成五个子集。在每个交叉验证中,使用其中的四个子集用于训练,剩余的子集用于验证模型,此外模型还对测试数据进行了预测。在交叉验证结束时,会得到五个测试预测概率。***,对所有类别的概率取平均值。模型的训练表现稳定,每个交叉验证上具有稳定的召回率和f1分数。这项技术也帮助我在Kaggle比赛中取得了很好的成绩(前1%)。以下部分代码片段显示了集成交叉验证的实现:

B.设置类别权重/重要性:

代价敏感学习是使随机森林更适合从非常不平衡的数据中学习的方法之一。随机森林有倾向于偏向大多数类别。因此,对少数群体错误分类施加昂贵的惩罚可能是有作用的。由于这种技术可以改善模型性能,所以我给少数群体分配了很高的权重(即更高的错误分类成本)。然后将类别权重合并到随机森林算法中。我根据类别1中数据集的数量与其它数据集的数量之间的比率来确定类别权重。例如,类别1和类别3数据集的数目之间的比率约为110,而类别1和类别2的比例约为26。现在我稍微对数量进行修改以改善模型的性能,以下代码片段显示了不同类权重的实现:

C.过大预测标签而不是过小预测(Over-Predict a Label than Under-Predict):

这项技术是可选的,通过实践发现,这种方法对提高少数类别的表现非常有效。简而言之,如果将模型错误分类为类别3,则该技术能***限度地惩罚该模型,对于类别2和类别1惩罚力度稍差一些。 为了实施该方法,我改变了每个类别的概率阈值,将类别3、类别2和类别1的概率设置为递增顺序(即,P3= 0.25,P2= 0.35,P1= 0.50),以便模型被迫过度预测类别。该算法的详细实现可以在Github上找到。

最终结果

以下结果表明,上述三种技术如何帮助改善模型性能:

1.使用集成交叉验证的结果:

2.使用集成交叉验证+类别权重的结果:

3.使用集成交叉验证+类别权重+过大预测标签的结果:

感谢各位的阅读,以上就是"怎么用python提升数据不平衡模型的性能"的内容了,经过本文的学习后,相信大家对怎么用python提升数据不平衡模型的性能这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

类别 数据 模型 验证 交叉 性能 权重 算法 技术 森林 结果 训练 标签 概率 问题 分类 学习 参数 数量 方法 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网与科技 互联网金融 金融科技 华宇互联网科技 猪兼强互联网科技 互联网女皇 腾讯科技 时间互联网络科技 山东吉时兔互联网科技有限公司 汽车互联网创新科技园 武汉健翔互联网络科技有限公司 智腾互联网科技有限公司 知域互联网科技有限公司大骗子 移动互联网年度科技创新 电子科技大学互联网创业大赛 用友工业互联网科技发展 为客找房互联网科技公司怎么样 上海钢联属于互联网科技股吗 江苏互联网智能科技软件 易企秀互联网科技是做什么的 绵阳真晨互联网科技有限公司 东风日产互联网科技公司叫什么 精品咖啡豆 疫情对互联网科技公司影响 互联网中国科技 未来的互联网科技 成都狮子座互联网科技 新兴科技互联网创新大赛颁奖典礼 宇信科技在杭州互联网排第几 互联网与数字科技关系 互联网科技企业商标注意事项 兰石爱特工业互联网科技分公司
0