数据集样本类别不均衡时,训练测试集应该如何做?

在多分类任务中,当样本类别分布不均衡时,不应直接随机切分数据。可采用样本欠采样、过采样或平滑抽样方法调整数据分布。同时,可以使用加权损失函数或修改评估指标,如精确率、召回率和Matthews相关系数,以更准确地评估模型性能。此外,数据增强和选择合适的评价标准也是应对类别不平衡问题的有效手段。
摘要由CSDN通过智能技术生成

作者:小鹿鹿lulu
链接:https://www.zhihu.com/question/373862904/answer/1039080874
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
 

多分类任务中类别不均衡是非常常见的一个问题,但是差别多少才算分布不均匀呢?

这个没有一个确定的衡量标准。根据我个人的经验的话,不同类别数量差异超过一个数量级,我才会认为样本类别分布不均匀,需要特别关注和调整。比如题主的截图,最大的类别数是最小类别的三个数量集,差距非常大,触犯了样本类别分布不均的情况。

针对样本分布不均匀,可以从以下几个方面来多加关注和尝试:

  1. sample数据:

当样本类别分布不均匀的时候,什么都不管还是直接将数据shuffle,随机切分训练/验证/测试集,显然是不太合理的。常用的有简单欠采样和过采样的方法。

欠采样:如题主,就这桶的最短板“一刀切”,每个类别sample最小值239,这样就保证了数据分布绝对均匀,但是造成了严重的数据浪费。

过采样:以最高板为标准,重复拼接短板(重复抽样类别量小的数据)。这样数据重复使用,肯定不会造成浪费了吧。但是问题来了,对数量少的类别(如总共只有239个样本),强行将每个样本重复10^3遍,模型训练一个epoch的时候,对这类数据重复学习了10^3次,并且数据量本身就非常小,只有239个,极大可能造成在这些类别上过拟合

  • 1
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值