如何限制张量流中的层输出(激活)值?

时间:2019-07-20 03:58:04

标签: tensorflow

我想在tensorflow中限制输出范围,并确保渐变可以通过这些修剪的值,例如:

y = tf.nn.leaky_relu(x)

我想限制y的值,以便y可以在(-2,2)范围内

我尝试过:

y = tf.clip_by_value(y, -2, 2)

但是,渐变无法通过y中的这些裁剪值,它们会得到0个渐变。

已编辑

以下是我的cnn层输出的真实分布:(我要限制那些离群值,因为它们使后一个RNN层变得饱和)

real distribution of my cnn layer output

1 个答案:

答案 0 :(得分:0)

诸如剪辑等功能在某些区域不可区分。因此,不要期望渐变表现良好。

如果只想将y的值限制在[-2,2]范围内,则最好使用tanh激活函数。设置y = 2 * tanh(x)。