二元分类:如果我最关心的类别在数据中只占很小的比例怎么办?

我正在处理一个二元分类问题。假设有类别A和B。但问题是A和B的类先验分布分别是90%和10%。所以我尝试的大多数分类算法倾向于将大部分情况分类为类别A,尽管0/1准确率很高,但对于类别B的精确度和召回率却非常糟糕。我该如何改变这种情况?


回答:

有两种基本方法:

  • 对较小的类别进行过采样(复制向量使比例更加均衡,你还可以对这些数据应用一些小的噪声以获得更“有价值”的数据)
  • 使用某种类加权方案,这种方案由你的模型支持

特别是,请查看支持向量机的这一具体问题

还有一点要注意 – 一些评估措施是专门为处理这种不平衡而设计的,特别是MCC(马修斯相关系数)可以用来评估非比例数据上的模型质量。

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注