样本不均衡问题一直机器学习甚至传统方法学习的主要问题
一般从损失函数和 样本采样的角度来处理这个问题
损失函数比较相关的:
1. focal los
2.eql loss
样本采样相关的:
在网上搜到:加权随机采样WeightedRandomSampler
自己在使用的时候:
错误分析:
这个是对样本做的权重均衡,并不是对类别做的权重均衡。
有人说 如果设置的num_sample 的值大于weight 的个数 会报错 但是我没有报错
如果是对样本进行加权的话,这样我只是使用了6个数据,所以我在预测的时候,所有的预测结果为1 这能解释为什么 训练精度为100 但是测试精度只有7.81
需要把shuffle 设置为False --下面的图中讲了如果设置sampler 这个参数,shuffle 必须为False
这是train_nums 为 60 的参数
在测试集上的结果可以看到:
没有采样加权之前的测试结果是:
|
weights 应该是每个样本的类别
不是每一类的类别
http://www.45fan.com/article.php?aid=19123165016524771188317643