Python keras功能api和泄漏的relu存在问题

Python keras功能api和泄漏的relu存在问题,python,keras,deep-learning,Python,Keras,Deep Learning,我在试着用漏洞百出的雷卢。我试着使用 它不起作用。我得到了一个错误: TypeError:激活缺少1个必需的位置参数:“激活类型” 此外,激活是否应该是贯穿始终的资本 我将其用作: def activation(x, activation_type): if activation_type == 'leaky_relu': return activations.relu(x, alpha=0.3) else: return activations.

我在试着用漏洞百出的雷卢。我试着使用

它不起作用。我得到了一个错误:

TypeError:激活缺少1个必需的位置参数:“激活类型”

此外,激活是否应该是贯穿始终的资本

我将其用作:

def activation(x, activation_type):
    if activation_type == 'leaky_relu':
        return activations.relu(x, alpha=0.3)
    else:
        return activations.get(activation_type)(x)
...

input_data = layers.Input(shape=(3,))
...
hiddenOut = Dense(units=2)(input_data)
hiddenOut = activation(lambda hiddenOut: activation(hiddenOut, 'LeakyReLU'))(hiddenOut)
u_out = Dense(1, activation='linear', name='u')(hiddenOut)   
...
为什么? 激活是一个层,激活是一组可用的激活。 为了模拟泄漏的ReLu,我们必须改变负部分的斜率。ReLu的坡度为0,可以使用alpha参数进行更改。 我们正在做的是一个名为my_activation的write a wrapper函数,它将返回一个漏ReLu,负斜率为0.3,如果参数为LeakyReLU,否则它将返回正常激活。 例如:

input_data = keras.layers.Input(shape=(3,))
a = keras.layers.Dense(units=2)(input_data)
a = keras.layers.Activation(lambda hiddenOut: my_activation(hiddenOut, 'LeakyReLU'))(a)
a = keras.layers.Activation(lambda hiddenOut: my_activation(hiddenOut, 'sigmoid'))(a)
a = keras.layers.Activation(lambda hiddenOut: my_activation(hiddenOut, 'tanh'))(a)
为什么? 激活是一个层,激活是一组可用的激活。 为了模拟泄漏的ReLu,我们必须改变负部分的斜率。ReLu的坡度为0,可以使用alpha参数进行更改。 我们正在做的是一个名为my_activation的write a wrapper函数,它将返回一个漏ReLu,负斜率为0.3,如果参数为LeakyReLU,否则它将返回正常激活。 例如:

input_data = keras.layers.Input(shape=(3,))
a = keras.layers.Dense(units=2)(input_data)
a = keras.layers.Activation(lambda hiddenOut: my_activation(hiddenOut, 'LeakyReLU'))(a)
a = keras.layers.Activation(lambda hiddenOut: my_activation(hiddenOut, 'sigmoid'))(a)
a = keras.layers.Activation(lambda hiddenOut: my_activation(hiddenOut, 'tanh'))(a)

你在做一些非常复杂的事情,你可以

hiddenOut = keras.layers.LeakyReLU(alpha=0.3)(hiddenOut)

你在做一些非常复杂的事情,你可以

hiddenOut = keras.layers.LeakyReLU(alpha=0.3)(hiddenOut)

是啊,成功了!非常感谢。我想我可能错过了导入库和混合大写字母等。嘿@quarkz,欢迎来到Stack Overflow。如果一个答案对你有效,你可以将它标记为已回答,这有助于其他用户并运行我们的声誉系统。是的,它有效!非常感谢。我想我可能错过了导入库和混合大写字母等。嘿@quarkz,欢迎来到Stack Overflow。如果某个答案适合您,您可以将其标记为已回答,这有助于其他用户并运行我们的声誉系统。