keras.backend.clip(x, min_value, max_value)
对x的元素大小进行消减限制,限制到 min_value-max_value范围里面。 min_value, max_value可以是整数或者浮点数。
参数
x: 张量或变量。
min_value: Python 浮点或整数。
max_value: Python 浮点或整数。
例子:在计算focal loss,防止loss爆炸,需要限制预测值的范围。
backend.epsilon()是一个很小的数。
clip to prevent NaN’s and Inf’s
pr = backend.clip(pr, backend.epsilon(), 1.0 - backend.epsilon())
# Calculate focal loss
loss = - gt * (alpha * backend.pow((1 - pr), gamma) * backend.log(pr))