【问题标题】:defined loss function in tensorflow?张量流中定义的损失函数?
【发布时间】:2017-09-02 13:49:21
【问题描述】:

在我的项目中,负例远远多于正例,所以我想给正例更大的权重。 我的目标是:

loss = 0.0
if y_label==1:loss += 100 * cross_entropy
else:loss += cross_entropy

如何在 tensorflow 中实现这一点[?]

【问题讨论】:

    标签: tensorflow loss


    【解决方案1】:

    losses 成为您批次中示例的损失值向量(rank-1 张量)。并设y 为对应标签的向量。然后,您可以通过

    实现您想要的结果
    weights = w_pos*y + w_neg*(1.0-y)
    loss = tf.reduce_mean(weights*losses)
    

    这里,w_posw_neg 是常量标量值(在您的示例中为 w_pos=100.0w_neg=1.0)。然后向量weights 的值是w_pos,例如标签等于1 和w_neg 等于0。然后将weights 元素与losses 相乘以加权@987654333 中的值@根据对应的标签再取均值。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-09-20
      • 1970-01-01
      • 2021-11-18
      • 2019-02-11
      • 1970-01-01
      • 2018-02-22
      • 2021-02-01
      • 2018-09-18
      相关资源
      最近更新 更多