Handel 分类中的不平衡数据
预测我想知道的他们中的大多数人没有可预测的信息。例如预测欺诈的发生, 感染预后或简而言之
“因为东西少所以我想知道更多。”
在这项工作中,它将预测明天是否下雨。只有2个答案(2个班级)。
不坠落(0级和1级)
Imbalanced data — predict minority class
本次使用的数据来自 Kaggle。
[
澳大利亚的雨
预测澳大利亚第二天的降雨
www.kaggle.com
您可以转到链接以相应地运行代码。
https://github.com/golf41101/Suchet/blob/master/handle_imbalacedata_classification.ipynb
让我们开始使用 EDA。
从这个数据的性质来看,它是那个日期发生的各种值的时间戳,检索到的数据没有按日期排序。所以我们必须先从旧日期排序到新日期。
接下来,我们将检查每个变量的空值。
其中有空值比例较高的变量,因此,本次从建模中剔除。
其余变量将按数据类型填充数据。
- 分类数据 =>> 按模式填充
- 数值数据 =>> 均值填充
重要的是,在进入模型之前,不要忘记将文本数据转换为数字。
预测 RainTomorrow 的变量转换为 No : 0, Yes : 1。
特征变量使用 one-hot 编码来转换值。
是时候在建模中划分数据了。
- 训练 80%
- 测试 20%
但在拟合模型之前,让我们重新缩放数据。
Min-Max scale
每个变量的值可以有很大的不同。最好先重新缩放,否则您会对该变量产生偏见。
为测试解决不平衡数据的方法选择的模型如下:
- 逻辑回归
- 决策树
- 随机福雷斯特
- XGBoost
我使用的方法是:
- 类权重——将少数类的权重调整为大于多数类,保持所有权重之和相同(通常预先调整的权重相同)。
- SMOTE — KNN 算法的一种应用,它根据附近数据 (KNN) 生成新数据,以便要预测的数据类的数量等于未预测的类的数量。
before use smote
after use smote
在基准测试方面,我主要关注精度和准确性,因为我们确实对预测类正精度更感兴趣。
Table of All result
或者从非科学的角度来看
如果明天下雨然后我们提前知道,所以我们带了伞。这比预测要好没有下雨,所以我们没有带伞。这让我们湿漉漉地回家而且我感觉不舒服
我希望它对所有读者有用。面对这个季风别忘了带伞。
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明
本文链接:https://www.qanswer.top/14364/24300501
标签:www,预测,Handel,com,分类,平衡,数据,变量 From: https://www.cnblogs.com/amboke/p/16656695.html