图像分割的损失

前言

记录一下在kaggle图像分割比赛中用到的一些损失函数,把我用到了的一些损失函数基于tensorflow与keras实现。


交叉熵

在这里插入图片描述

  • 在Keras中,损失函数是binary_crossentropy(y_true, y_pred);
  • 在TensorFlow中,它是softmax_cross_entropy_with_logits_v2

加权交叉熵

加权交叉熵(WCE)是CE的变体,其中所有正例都通过某个系数加权。它用于类不平衡的情况。例如,当您的图像具有10%黑色像素和90%白色像素时,常规CE将无法正常工作。

  • 在TensorFlow中,损失函数是weighted_cross_entropy_with_logits。
  • 在Keras,我们必须实现自己的功能:
  def loss(y_true, y_pred):
    y_pred = convert_to_logits(y_pred)
    loss = tf.nn.weighted_cross_entropy_with_logits(logits=y_pred, targets=y_true, pos_weight=beta)

    # or reduce_sum and/or axis=-1
    return tf.reduce_mean(loss)

  return loss

平衡交叉熵

平衡交叉熵(BCE)类似于WCE。唯一的区别是我们的重量也是负面的例子。定义为:
在这里插入图片描述
在keras中的实现:

def weighted_bce_loss(y_true, y_pred, weight):
    epsilon = 1e-7
    y_pred = K.clip(y_pred, epsilon, 1. - epsilon)
    logit_y_pred = K.log(y_pred / (1. - y_pred))
    loss = weight * (logit_
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值