我正在尝试使用不平衡的数据来训练网络。我有A(198个样本),B(436个样本),C(710个样本),D(272个样本),并且我已经了解了“weighted_cross_entropy_with_logits”的相关知识,但是我找到的所有示例都是针对二元分类的,因此我对如何设置这些权重不太自信。
总样本数:1616
A_weight:198/1616 = 0.12?
如果我理解正确,其背后的想法是惩罚大多数类别的错误,并更加积极地评价少数类别的命中,对吗?
我的代码片段:
总样本数:1616
A_weight:198/1616 = 0.12?
如果我理解正确,其背后的想法是惩罚大多数类别的错误,并更加积极地评价少数类别的命中,对吗?
我的代码片段:
weights = tf.constant([0.12, 0.26, 0.43, 0.17])
cost = tf.reduce_mean(tf.nn.weighted_cross_entropy_with_logits(logits=pred, targets=y, pos_weight=weights))
我已经阅读了这篇文章以及其他二元分类的例子,但仍不是很清楚。