将预测的概率转换为二进制输出和ResourceExhaustedError

时间:2019-05-16 00:15:55

标签: python tensorflow keras loss-function

我定义了以下损失函数:

def dice_coef(y_true, y_pred):
    y_pred = K.gather(y_pred, tf.where(y_pred>0.5))
    y_true_f = K.flatten(y_true)
    y_pred_f = K.flatten(y_pred)
    intersect = K.sum(y_pred_f * y_true_f)
    denominator = K.sum(y_pred_f) + K.sum(y_true_f)
    dice_score = K.constant(2.) * intersect / (denominator + K.constant(.01))
    return dice_score

由于我只希望y_pred为0和1s,所以我在stackoverflow上关注了一个建议使用y_pred = K.gather(y_pred, tf.where(y_pred>0.5))的线程。但是,我得到了错误:

  

ResourceExhaustedError:分配具有形状的张量时发生OOM [662885,4,144,144,1]

是否解决了此问题?

0 个答案:

没有答案