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

2020-12-03 14:05:51 浏览数 (1)

机器之心报道

机器之心编辑部

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

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

近日,有开发者在 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 安装指定的函数包,具体的函数包如下:

代码语言:javascript复制
pandas
numpy
matplotlib
sklearn
tensorflow==1.12.0
keras==2.2.4
pytorch
seaborn
lightgbm==2.2.1
xgboost==0.90

项目解读

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

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

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

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

参考链接:

https://mp.weixin.qq.com/s/t6EpWmLWP81DcJ7AUro3Ng

https://mp.weixin.qq.com/s/Td0Vrx9YO5rEn66L4C42Zw

https://mp.weixin.qq.com/s/XaB1BsLL_Va7dGL0S0rUOQ

https://zhuanlan.zhihu.com/p/80381974

2020 NeurIPS MeetUp

0 人点赞