我正在与我的convnet一起使用CrossEntropyCriterion。我有150个课程,每个班级的培训文件数量是,非常不平衡的 (5到2000文件)。根据文档,我可以使用权重对此进行补偿:
criterion = nn.CrossEntropyCriterion([weights])如果提供了,可选的参数权重应该是为每个类分配权重的一维张量。当您有一个不平衡的训练集时,这一点尤其有用。
权数应该是什么格式?例句:训练档案的数量在n班/训练档案的总数。
发布于 2016-01-15 23:47:46
我想你想要平衡你的训练在这个意义上,小班变得更重要。在一般的中,有无限多的可能的权重,导致了不同的结果。最简单的方法之一,就是简单地假设每个类都应该是同等重要的(因此有效地降低了经验先验),就是将权重按比例计算。
1 / # samples_in_class例如
weight_of_class_y = # all_samples / # samples_in_y这样,如果您有5:2000的不成比例,较小的类变得比模型重要400倍。
https://stackoverflow.com/questions/34821002
复制相似问题