处理机器学习中不平衡类的5种策略
副问题[/!--empirenews.page--]
类失衡:假设您有一个有数的疾病呆板进修数据集,即约莫8%的阳性。在这种环境下,纵然你不实习,只是简朴地说没有抱病,这也会给出92%的精确率。因此,在类不服衡的环境下,精确性是禁绝确的。 在本指南中,我们先容了处理赏罚呆板进修中不服衡类的5种计策:
1. 上采样少数类:指随机复制少数类的调查功效,使样本数目与大都类匹配。 起首,我们将每个类的调查功效分成差异的DataFrame。 接下来,我们将行使替代重取样少数类,配置样本数以匹配大都类的样本数。 最后,我们将上采样的少数类DataFrame与原始的大都类DataFrame相团结。 建设合成样本(数据加强) 建设合成样本是上采样的明日亲,有些人也许会将它们归类在一路。譬喻,SMOTE算法是一种从少数类中从头采样的要领,同时轻微调解特性值,从而建设“新的”样本。 2. 下采样大都类:下采样涉及从大都类中随机移除视察值,以防备其信号支配进修算法。 起首,我们将每个类的调查功效分成差异的DataFrame。 接下来,我们将重采样大都类而不举办替代,将样本数配置为与少数类相匹配。 最后,我们将下采样的大都类DataFrame与原始的少数类DataFrame团结起来。 3. 变念头能指标:AUROC(ROC曲线下面积) 假设我们有一个概率的二元分类器,如逻辑回归。 在泛起ROC曲线之前,必需领略夹杂矩阵的观念。当我们举办二元猜测时,可以有4种范例的功效:
为了得到夹杂矩阵,,我们回首呆板进修项模子所做的全部猜测,并计较这4种功效中的每一种产生的次数: 在这个夹杂矩阵的例子中,在被分类的50个数据点中,45个被正确分类,5个被错误分类。 因为为了较量差异的模子,凡是行使单个怀抱比行使多个怀抱更利便,以是我们从夹杂矩阵上钩较两个怀抱,然后将其归并为一个:
为了将FPR和TPR归并为一个怀抱,我们起首计较逻辑回归中具有很多差异阈值的前两个怀抱(譬喻0.00、0.01、0.02、……、1.000.00;0.01、0.02、……、1.00),然后将它们绘制在一个图上,横坐标上是FPR值,纵坐标上是TPR值。获得的曲线称为ROC曲线,我们思量的怀抱是这条曲线的AUC,我们称之为AUROC。 下图以图形方法表现AUROC: 在该图中,蓝色地区对应于AUROC的曲线下面积。对角线中的虚线暗示随机猜测器的ROC曲线:它的AUROC为0.5。 AUROC介于0和1之间,AUROC = 1意味着猜测模子是美满的。究竟上,AUROC间隔0.5越远越好:假如AUROC <0.5,那么你只必要反转模子所做的抉择。因此,假如AUROC = 0,这是个好动静,由于您只必要反转模子的输出以得到美满的呆板进修模子。 4. 处罚算法: 下一个计策是行使处罚进修算法,进步少数类的分类错误的本钱。 该技能的风行算法是Penalized-SVM:支持向量机 在实习时代,我们可以行使参数class_weight ='balanced'来处罚少数群体类的错误,其数目与其代表性不敷的数目成正比。 假如我们想为支持向量机算法启用概率预计,还必要包括参数probability=True。 让我们在原始不服衡数据集上行使Penalized-SVM实习模子: 5. 行使基于树的算法 我们将思量的最后计策是行使基于树的算法。决定树凡是在不服衡数据集上示意精采,由于它们的条理布局应承它们从两个类中进修信号。 在当代应用呆板进修中,树荟萃(随机丛林,梯度晋升树等)险些老是优于单一决定树: 97%的精确率和靠近100%的AUROC。 树形组合已经变得很是风行,由于它们在很多实际题目上示意得很是好。 然而:固然这些功效令人激昂,但呆板进修模子也许太过拟合,因此在做出最终决定之前,您仍应在测试集上评估呆板进修模子。 (编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |