在sklearn中使用RandomForestClassifier进行不平衡分类

饮食

我有一个数据集,其中的类是不平衡的。类别为“ 1”或“ 0”,其中类别“ 1”:“ 0”的比率为5:1。如何在带有随机森林的sklearn中计算每个类别的预测误差以及相应的重新平衡权重,类似于以下链接:http : //www.stat.berkeley.edu/~breiman/RandomForests/cc_home.htm#平衡

您可以将样本权重参数传递给随机森林拟合方法

sample_weight : array-like, shape = [n_samples] or None

样品重量。如果为None,则对样本进行平均加权。在每个节点中搜索拆分时,将忽略创建净净值为零或负权重的子节点的拆分。在分类的情况下,如果拆分会导致任何单个类在任一子节点中都具有负权重,则也将忽略拆分。

在较旧的版本中,存在一种preprocessing.balance_weights为给定样本生成平衡权重方法,以使类别变得均匀分布。它仍然存在,在内部但仍可用的preprocessing._weights模块中,但已不建议使用,并将在以后的版本中删除。不知道确切的原因。

更新资料

有些澄清,您似乎很困惑。sample_weight一旦记住它的目的是平衡训练数据集中的目标类别,用法就很简单。也就是说,如果您具有X作为观察值和y作为类(标签),则len(X) == len(y) == len(sample_wight)sample witght1维数组的每个元素代表对应对的权重(observation, label)对于您的情况,如果1类被表示为0类的5次,并且您平衡了类分布,则可以使用简单

sample_weight = np.array([5 if i == 0 else 1 for i in y])

分配5所有0实例的权重和1所有1实例的权重请参阅上面的链接以获取更多巧妙的balance_weights权重评估功能。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

类别不平衡的catboost分类器?

来自分类Dev

使用RcppParallel的堆栈不平衡

来自分类Dev

使用TensorFlow训练不平衡数据

来自分类Dev

Tensorflow 中的不平衡二元分类

来自分类Dev

带有不平衡数据的SKlearn SVM RBF

来自分类Dev

为什么使用降雪进行并行计算时不平衡负载?

来自分类Dev

使用自定义segue进行不平衡的开始/结束外观转换的调用

来自分类Dev

对不平衡样品重复进行随机采样和峰度

来自分类Dev

如何处理sklearn随机森林中的类不平衡。我应该使用样本权重还是班级权重参数

来自分类Dev

KMeans的不平衡因子?

来自分类Dev

PInvoke使堆栈不平衡

来自分类Dev

如何使图像不平衡?

来自分类Dev

使用libSVM的SVM中的数据不平衡

来自分类Dev

如何平衡不平衡的面板数据?

来自分类Dev

处理二进制分类中的类不平衡

来自分类Dev

二进制分类情况下数据集不平衡的问题

来自分类Dev

应该考虑哪种方法来评估不平衡的多类分类?

来自分类Dev

当数据集不平衡时,多类分类的最佳损失函数?

来自分类Dev

Keras中类不平衡多类分类器的损失函数

来自分类Dev

如何处理 Scikit.learn 管道中不平衡的 xgboost 多类分类?

来自分类Dev

如何在sklearn中对不平衡数据集执行交叉验证

来自分类Dev

平衡不平衡/部分平衡的BST的复杂性?

来自分类Dev

Elasticsearch主碎片不平衡

来自分类Dev

iOS 8中的通话不平衡

来自分类Dev

除法导致括号不平衡

来自分类Dev

DEoptim堆栈不平衡问题

来自分类Dev

HADOOP HDFS不平衡问题

来自分类Dev

Chrome中不平衡的CSS列

来自分类Dev

在不平衡的树上拆分OpenMP线程