我创建了贷款风险预测python机器学习模型,用于预测借款人是否能够支付银行贷款。我的模型工作得非常好,有78%的准确率。然而,我的教授告诉我,首先我必须检查我的数据集是否平衡(如果不平衡,则从IMBRearn库应用SMOTE)。主要问题是我不知道如何检查是否平衡。如果有人知道如何检查,请告诉我
数据集链接:-https://www.kaggle.com/omkar5/dataset-for-bank-loan-prediction?select=credit_train.csv
(我用来创建模型的数据集)
Tags:
简单地说,您需要检查目标变量中的类是否存在不平衡
例如:![enter image description here](https://i.stack.imgur.com/OuFkR.jpg)
如果您检查DEATH_EVENT=1和DEATH_EVENT=0之间的比率,它是2:1,这意味着我们的数据集是不平衡的
为了平衡,我们可以对数据进行过采样或欠采样。 在这种情况下,欠采样将删除100行,其中DEATH_事件=0,比率为1:1,但在此过程中会丢失大量数据
另一方面,SMOTE可以帮助我们为少数类生成行。 可以使用以下代码执行此操作:
现在谈到模型的“高”准确度,因为大多数数据属于大多数类别0,所以仅预测所有行的0应该会给我一个高准确度,因此您应该检查其他性能指标,如召回率、精确度和f1分数
相关问题 更多 >
编程相关推荐