在Tensorflow中使用漏洞relu

时间:2017-07-25 15:02:53

标签: python tensorflow neural-network

如何将G_h1 = tf.nn.relu(tf.matmul(z, G_W1) + G_b1)更改为泄漏relu?我尝试使用max(value, 0,01*value)循环遍历张量,但我得到TypeError: Using a tf.Tensor as a Python bool is not allowed.

我也尝试在Tensorflow github上找到源代码,以便我可以修改它以泄漏relu但我找不到它。

4 个答案:

答案 0 :(得分:25)

如果alpha< 1(应该是),您可以使用tf.maximum(x, alpha * x)

答案 1 :(得分:24)

您可以根据tf.relu编写一个,例如:

def lrelu(x, alpha):
  return tf.nn.relu(x) - alpha * tf.nn.relu(-x)

修改

Tensorflow 1.4现在有一个原生的tf.nn.leaky_relu

答案 2 :(得分:7)

release 1.4.0-rc1已包含泄漏的relu函数 为tf.nn.leaky_relu

文档页面:https://www.tensorflow.org/versions/master/api_docs/python/tf/nn/leaky_relu

答案 3 :(得分:0)

您也可以使用

tf.keras.layers.LeakyReLU