weightedrandomSamplers(1)

样本不均衡问题一直机器学习甚至传统方法学习的主要问题 

一般从损失函数和 样本采样的角度来处理这个问题 

损失函数比较相关的:

1. focal los

2.eql loss 

样本采样相关的:
  在网上搜到:加权随机采样WeightedRandomSampler

自己在使用的时候:

weightedrandomSamplers(1)_第1张图片

错误分析:

weightedrandomSamplers(1)_第2张图片

这个是对样本做的权重均衡,并不是对类别做的权重均衡。

有人说 如果设置的num_sample 的值大于weight 的个数 会报错 但是我没有报错

如果是对样本进行加权的话,这样我只是使用了6个数据,所以我在预测的时候,所有的预测结果为1 这能解释为什么 训练精度为100 但是测试精度只有7.81 

weightedrandomSamplers(1)_第3张图片

weightedrandomSamplers(1)_第4张图片

需要把shuffle 设置为False --下面的图中讲了如果设置sampler 这个参数,shuffle 必须为False

这是train_nums 为 60 的参数 

weightedrandomSamplers(1)_第5张图片

weightedrandomSamplers(1)_第6张图片

在测试集上的结果可以看到:
weightedrandomSamplers(1)_第7张图片

没有采样加权之前的测试结果是:
|weightedrandomSamplers(1)_第8张图片

weightedrandomSamplers(1)_第9张图片

weights 应该是每个样本的类别

不是每一类的类别

http://www.45fan.com/article.php?aid=19123165016524771188317643

 

 

 

你可能感兴趣的:(深度学习,机器学习)