我试图在一组x射线图像上实现一个简单的CNN分类,这些图像分为4类。 数据集如下所示:
img A B C D
1 [[[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0], ... 0 0 0 1
2 [[[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0], ... 0 0 0 1
3 [[[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0], ... 0 0 1 0
4 [[[0, 0, 0], [0, 0, 0], [0, 0, 0], [0, 0, 0], ... 0 0 0 1
A-80 B-300 C-70 D-150
如何在这些设置中应用类权重
类权重是一个字典,用于补偿数据集中的不平衡。例如,如果您有1000个狗图像和100个猫图像的数据集,那么您的分类器可能会偏向狗类。如果它每次都预测狗,那么它90%的时间都是正确的。为了弥补这种不平衡,class_权重字典允许您在计算损失时,将猫的样本重量增加到狗的10倍。一种方法是使用sklearn的class_weight方法,如下所示
相关问题 更多 >
编程相关推荐