zl程序教程

您现在的位置是:首页 >  其他

当前栏目

二分类、多分类、回归任务,一个项目get竞赛必备模型

2023-03-14 09:39:39 时间

 数据挖掘类比赛必备模型,四种实现方法,你值得拥有。

数据科学竞赛是学习各类算法、深入理解数据科学、提升和挑战自己的绝佳机会,而这些竞赛中有一些常用的模型。

近日,有开发者在 GitHub 上开源了一个包含数据挖掘类比赛常用模型的项目,主要涵盖二分类、多分类以及回归任务。项目代码全部使用 Python 实现。

项目地址:https://github.com/QLMX/data_mining_models

该项目包含二分类模型、多分类模型以及回归模型,它们分别基于 lightgbm 实现、xgboost 实现、keras 实现和 pytorch 实现:

lightgbm

  • binary_class.py :lightgbm 实现的二分类
  • multi_class.py :lightgbm 实现的多分类
  • regression.py :lightgbm 实现的回归
  • multi_class_custom_feval.py :lightgbm 自定义评价函数实现多分类
  • multi_class_weight_loss.py :lightgbm 多类别不平衡问题,实现类别加权优化

 

xgboost

  • binary_class.py :xgboost 实现的二分类
  • multi_class.py :xgboost 实现的多分类
  • regression.py :xgboost 实现的回归

 

keras 实现的 mlp

  • binary_class.py :keras 实现的 mlp,做二分类任务
  • multi_class.py :keras 实现的 mlp,做多分类任务
  • regression.py :keras 实现的 mlp,做回归任务

 

pytorch 实现的 mlp

  • binary_class.py :pytorch 实现的 mlp,做二分类任务
  • multi_class.py :pytorch 实现的 mlp,做多分类任务
  • regression.py :实现的 mlp,做回归任务

 

环境设置

可以直接通过 pip install -r requirements.txt 安装指定的函数包,具体的函数包如下:

  1. pandas 
  2.  
  3. numpy 
  4.  
  5. matplotlib 
  6.  
  7. sklearn 
  8.  
  9. tensorflow==1.12.0 
  10.  
  11. keras==2.2.4 
  12.  
  13. pytorch 
  14.  
  15. seaborn 
  16.  
  17. lightgbm==2.2.1 
  18.  
  19. xgboost==0.90 

项目解读

第一部分 lightgbm 的数据是基于拍拍贷比赛截取的一部分特征,随机选择了 5000 个训练数据,3000 个测试数据。针对其中 gender、cell_province 等类别特征,直接进行重新编码处理。

第二部分又基于 xgboost 实现了二分类、多分类和回归任务。

第三、四部分是深度网络部分,是基于 keras 实现的多层感知机网络 (mlp)。pytorch 主要用于图像处理任务,在数据挖掘类比赛中很少用到,但该项目整理了基于 pytorch 实现的 mlp 做分类与回归任务代码。

项目作者对项目的各部分进行了详细的解读,具体参考以下内容: