Questions tagged «unbalanced-classes»

如果观察数(ñ)属于每个类别的信息在各个类别之间并不是恒定不变的。不平等的班级ñ *不平衡*。

3
进行逻辑回归时,不平衡样本是否重要?
好吧,考虑到20:1的经验法则,我认为我有一个足够不错的样本:一个相当大的样本(N = 374),总共有7个候选预测变量。 我的问题如下:无论我使用什么预测变量集,分类都永远不会比100%的特异性和0%的灵敏度更好。无论如何,如果给定候选预测变量集(我不能偏离),这实际上可能是最好的结果。 但是,我忍不住想做得更好,因此我注意到因变量的类别之间的平衡非常不平衡,几乎是4:1。更加平衡的子样本可以改善分类吗?


5
什么时候不平衡数据真的是机器学习中的问题?
使用logistic回归,SVM,决策树,装袋和许多其他类似问题时,我们已经对不平衡数据提出了多个问题,这使它成为一个非常受欢迎的话题!不幸的是,每个问题似乎都是特定于算法的,我没有找到任何处理不平衡数据的通用准则。 引用Marc Claesen的答案之一,处理不平衡数据 (...)在很大程度上取决于学习方法。大多数通用方法都有一种(或几种)方法来解决此问题。 但是,到底什么时候我们应该担心数据不平衡?哪些算法最受它影响,哪些能够处理?我们需要哪种算法来平衡数据?我知道在像这样的问答网站上讨论每种算法都是不可能的,我宁愿寻找有关何时可能出现问题的一般准则。

4
监督机器学习中的班级失衡
通常,这是一个问题,并不特定于任何方法或数据集。我们如何处理有监督机器学习中的类不平衡问题,其中数据集中0的数量约为90%,1的数量约为10%。我们如何最佳地训练分类器。 我遵循的方法之一是采样以使数据集平衡,然后训练分类器并对多个样本重复此操作。 我觉得这是随机的,有没有解决这些问题的框架。

4
针对不平衡数据训练决策树
我是数据挖掘的新手,我正在尝试针对高度不平衡的数据集训练决策树。但是,我遇到了预测准确性较差的问题。 数据由学习课程的学生组成,班级变量是课程状态,具有两个值-撤回或当前。 年龄 种族 性别 课程 ... 课程状态 在数据集中,当前的实例多于撤回的实例。撤消的实例仅占实例总数的2%。 我希望能够建立一个模型,该模型可以预测一个人将来会退出的可能性。但是,当针对训练数据测试模型时,模型的准确性非常糟糕。 我在决策树中也遇到过类似的问题,决策树中的数据由一两个类控制。 我可以使用哪种方法来解决此问题并建立更准确的分类器?

1
下采样会改变逻辑回归系数吗?
如果我有一个非常罕见的阳性类别的数据集,并且对阴性类别进行了下采样,然后执行逻辑回归,是否需要调整回归系数以反映我改变了阳性类别的患病率这一事实? 例如,假设我有一个包含4个变量的数据集:Y,A,B和C。Y,A和B是二进制的,C是连续的。对于11,100个观察,Y = 0,对于900个Y = 1: set.seed(42) n <- 12000 r <- 1/12 A <- sample(0:1, n, replace=TRUE) B <- sample(0:1, n, replace=TRUE) C <- rnorm(n) Y <- ifelse(10 * A + 0.5 * B + 5 * C + rnorm(n)/10 > -5, 0, 1) 给定A,B和C,我拟合了logistic回归来预测Y。 dat1 <- data.frame(Y, A, …

3
班级失衡问题的根本原因是什么?
最近,我一直在思考机器/统计学习中的“班级不平衡问题”,并且越来越深地感觉到我只是不了解发生了什么。 首先让我定义(或尝试)定义我的术语: 机器/统计学习中的类不平衡问题是观察到,当0类与1类的比例非常不正确时,某些二进制分类算法(*)不能很好地执行。 因此,例如,在上面的示例中,如果每一个类有100个类,那么我会说类不平衡为到或。0001111111001001001%1%1\% 我见过的大多数问题陈述都缺乏我认为足够的资格(什么模型在挣扎,问题如何失衡),这是我感到困惑的原因之一。 对机器/统计学习中的标准文本的调查几乎没有: 统计学习和统计学习入门的要素在索引中不包含“班级失衡”。 用于预测数据分析的机器学习在索引中也不包含“类不平衡”。 墨菲的机器学习:概率观点 的确在索引中包含“类不平衡*。参考是关于SVM的一节,我在其中找到了以下诱人的评论: 值得记住的是,所有这些困难,以及为解决这些困难而提出的大量启发式方法,都从根本上出现,因为SVM无法使用概率对不确定性进行建模,因此它们的输出得分在各个类别之间不具有可比性。 此评论确实符合我的直觉和经验:在我以前的工作中,我们通常将逻辑回归和梯度增强树模型(以最小化二项式对数似然性)拟合到不平衡数据(类不平衡程度为),在性能上没有明显的问题。1%1%1\% 我已经(在某处)阅读了基于分类树的模型(树本身和随机森林)也确实遭受了类不平衡问题的困扰。从某种意义上讲,这会使水有些混乱,树木确实有返回概率:在树的每个终端节点中目标类的投票记录。 因此,总的来说,我真正想要的是对导致班级失衡问题(如果存在)的力量的概念性理解。 我们使用错误选择的算法和惰性默认分类阈值对自己做了什么吗? 如果我们始终拟合优化适当评分标准的概率模型,它会消失吗?换句话说,原因仅仅是损失函数的选择不正确,即基于硬分类规则和整体准确性评估模型的预测能力吗? 如果是这样,那么没有优化适当评分规则的模型就没有用(或者至少没有用处)吗? (*)分类是指适合二进制响应数据的任何统计模型。我没有假设我的目标是对一个班级或另一个班级进行艰巨的任务,尽管可能是这样。

4
类不平衡下的精确召回曲线的优化
我有一个分类任务,其中有许多预测变量(其中一个是最有参考价值的),并且我正在使用MARS模型来构造我的分类器(我对任何简单的模型都感兴趣,并且使用glms进行说明是没关系)。现在,我在训练数据中存在巨大的班级失衡(每个正样本大约有2700个负样本)。与信息检索任务类似,我更关心预测排名最高的阳性测试样本。因此,Precision Recall曲线上的性能对我很重要。 首先,我只是在训练数据上训练了模型,从而保持了班级的不平衡。我将训练有素的模型显示为红色,最重要的输入显示为蓝色。 培训不平衡数据,评估不平衡数据: 认为班级失衡会导致模型失败,因为学习排名最高的正样本是整个数据集的很小一部分,所以我对正训练点进行了升采样以获得平衡的训练数据集。当我在平衡训练集上绘制性能时,我会获得良好的性能。在PR和ROC曲线中,我训练有素的模型都比输入要好。 训练(上采样的)平衡数据,还评估(上采样的)平衡数据: 但是,如果我使用在平衡数据上训练的模型来预测原始的不平衡训练集,则PR曲线上的性能仍然很差。 培训(上采样的)平衡数据,评估原始不平衡数据: 所以我的问题是: 是由于PR曲线的可视化显示我训练的模型(红色)的性能较差,而ROC曲线却由于类的不平衡而导致性能改善的原因吗? 重采样/上采样/下采样方法能否解决此问题,从而迫使训练集中于高精度/低召回率区域? 还有其他方法可以将培训集中在高精度/低召回率区域吗?

4
我什么时候应该在培训数据集中平衡课程?
我有一个在线课程,据我了解,训练数据中的班级不平衡可能会导致问题,因为分类算法遵循多数原则,因为如果不平衡过多,分类结果就会很好。在一项作业中,必须通过对多数类进行欠采样来平衡数据。 但是,在此博客中,有人声称平衡数据甚至更糟: https://matloff.wordpress.com/2015/09/29/unbalanced-data-is-a-problem-no-balanced-data-is-worse/ 那么是哪一个呢?我应该平衡数据吗?它是否取决于所使用的算法,因为某些算法可能会适应不平衡的类比例?如果是这样,哪一个对不平衡数据是可靠的?

6
逻辑回归的样本量?
我想从调查数据中建立一个物流模型。这是对四个住宅殖民地的小规模调查,仅对154名受访者进行了采访。我的因变量是“令人满意的工作过渡”。我发现,在154位受访者中,有73位表示他们已经令人满意地过渡到工作,而其余的则没有。因此,因变量本质上是二进制的,因此我决定使用逻辑回归。我有七个独立变量(三个连续变量和四个名义变量)。一项指南建议,每个预测变量/自变量应有10个案例(Agresti,2007年)。根据该指南,我认为可以进行逻辑回归。 我对吗?如果没有,请让我知道如何确定自变量的数量?

4
对于不平衡的数据集,在xgboost中scale_pos_weight的正确用法是什么?
我的数据集非常不平衡。我正在尝试遵循调整建议并使用,scale_pos_weight但不确定如何调整它。 我可以看到RegLossObj.GetGradient: if (info.labels[i] == 1.0f) w *= param_.scale_pos_weight 因此,阳性样本的梯度会更具影响力。但是,根据xgboost论文,总是在特定树中特定节点的实例中局部使用梯度统计信息: 在节点的上下文中,以评估候选拆分的损失减少 在叶节点的上下文中,以优化赋予该节点的权重 因此,无法预先知道什么是好的scale_pos_weight-对于正负实例之间以1:100比率结尾的节点,以及1:2比率的节点,这是一个非常不同的数字。 有什么提示吗?

4
过采样,欠采样和SMOTE可以解决什么问题?
在最近一个广为接受的问题中,Tim问不平衡的数据何时真正成为机器学习中的问题?问题的前提是,有很多机器学习文献讨论班级平衡和班级不平衡的问题。这个想法是,正负类之间不平衡的数据集会导致某些机器学习分类(这里包括概率模型)算法出现问题,应该寻求方法来“平衡”数据集,以恢复完美的50/50在正面和负面类别之间进行划分。 赞成的答案的一般含义是“不是,至少如果您在建模时考虑周全”。M. Henry L.在对已接受答案的投票中说: [...]使用不平衡数据没有低级问题。以我的经验,“避免不平衡数据”的建议要么是特定于算法的,要么是继承的智慧。我同意AdamO的观点,即通常来说,不平衡的数据不会对特定模型造成任何概念上的问题。 AdamO认为阶级平衡的“问题”确实是阶级稀有性之一 因此,至少在回归分析中(但我怀疑在所有情况下),数据不平衡的唯一问题是有效地减少了样本量。如果有任何一种方法适合于稀有阶层的人数,那么他们的比例成员不平衡就不会有问题。 如果这确实是一个真正的问题,那么将有一个悬而未决的问题:所有旨在平衡数据集的重采样方法的目的是什么:过采样,欠采样,SMOTE等? 显然,它们不能解决隐含样本量较小的问题,您不能一无所有地创建信息!

2
如何处理测试集和训练集的分布之间的差异?
我认为机器学习或参数估计的一个基本假设是,看不见的数据来自与训练集相同的分布。但是,在某些实际情况下,测试集的分布几乎与训练集不同。 说一个大规模的多分类问题,试图将产品描述分类为大约17,000个类别。训练集将具有高度偏斜的上课先验,因此某些班级可能有很多训练示例,但有些班级可能只有几个。假设我们从客户端获得了带有未知类标签的测试集。我们尝试使用在训练集上训练的分类器,将测试集中的每个产品分类为17,000个类别之一。测试集可能具有偏斜的班级分布,但可能与培训集的分布有很大差异,因为它们可能与不同的业务领域相关。如果两个类别的分布非常不同,则训练有素的分类器可能无法在测试集中很好地工作。对于朴素贝叶斯分类器,这似乎尤其明显。 是否有任何原则上的方法来处理概率分类器的训练集和特定给定测试集之间的差异?我听说“转换式SVM”在SVM中做类似的事情。是否有类似的技术来学习在特定给定测试集上表现最佳的分类器?然后,我们可以针对此给定的测试集重新训练分类器,如本实际方案中所允许的那样。

3
高度不平衡数据的分类/评估指标
我处理欺诈检测(类似信用评分)问题。因此,欺诈性观察与非欺诈性观察之间存在高度不平衡的关系。 http://blog.revolutionanalytics.com/2016/03/com_class_eval_metrics_r.html很好地概述了不同的分类指标。Precision and Recall或kappa两者似乎都是不错的选择: 证明此类分类器结果的一种方法是将它们与基准分类器进行比较,并表明它们确实比随机机会预测好。 据我了解,kappa由于考虑了随机机会,因此这可能是稍微更好的选择。从科恩用简单的英语写的kappa中,我了解到这kappa涉及信息获取的概念: [...] 80%的观测精度令人印象深刻,预期精度为75%,而预期精度为50%[...] 因此,我的问题是: 假设kappa是更适合此问题的分类指标是正确的吗? 简单地使用可以kappa防止不平衡对分类算法的负面影响吗?是否仍需要重新(向下/向上)采样或基于成本的学习(请参阅http://www.icmc.usp.br/~mcmonard/public/laptec2002.pdf)?

5
回归中不平衡数据的采样
关于在分类环境中处理不平衡数据一直存在很好的问题,但是我想知道人们如何做抽样以进行回归。 假设问题域对符号非常敏感,但对目标的大小仅敏感一些​​。但是,数量级非常重要,以至于模型应该是回归(连续目标)而不是分类(正与负分类)。并说在此问题域中,任何训练数据集的负面结果都比正面目标多10倍。 在这种情况下,我可能会对正目标示例进行过度采样以匹配负目标示例的数量,然后训练一个模型来区分这两种情况。显然,训练方法对不平衡数据的处理效果很差,因此我需要进行某种采样。在做出预测时,有什么体面的方法可以“撤消”这种过采样?也许用自然训练数据目标的(负)均值或中值进行翻译?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.