我的标签不平衡。也就是说,在二元分类器中,我有更多的正数 (1) 数据和更少的负数 (0) 数据。我正在使用分层 K 折叠交叉验证并将真负数设为零。您能否让我知道我必须采取哪些选择才能获得大于零的真阴性值?
最佳答案
处理不平衡类的策略有很多。
首先,让我们了解(可能)发生了什么。您要求分类器最大限度地提高准确性:即正确分类的记录的比例。比如说,如果 85% 的记录属于 A 类,那么只需将所有内容标记为 A 类即可获得 85% 的准确率。这似乎是分类器可以实现的最佳效果。
那么,如何纠正这个问题呢?
1) 您可以尝试在数据的平衡子集上训练模型。仅从多数类中随机抽取与少数类中存在的记录数量相同的记录。这将不允许您的分类器将所有内容标记为多数类。但这的代价是可用于发现类边界结构的信息较少。
2) 使用与准确性不同的优化指标。流行的选择是AUC或F1 Score
3) 使用方法 1 创建分类器集合。每个分类器将看到数据的子集并对某个类进行“投票”,可能会带有一些置信度分数。每个分类器输出都将是最终元分类器的一个特征(可能使用方法 2 构建)。这样您就可以访问所有可用的信息。
这远非详尽的解决方案列表。处理不平衡(或“倾斜”)的数据集可能是一本完整的教科书。我建议阅读一些有关该主题的论文。也许开始here
关于machine-learning - 不平衡标签 - 混淆矩阵中的更好结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39105626/