【问题标题】:Getting "ValueError: Unknown activation function: PReLU" when I try to load a trained model that employes PReLU as the activation function?当我尝试加载使用 PReLU 作为激活函数的训练模型时出现“ValueError:未知激活函数:PReLU”?
【发布时间】:2021-10-09 20:52:43
【问题描述】:
由于标题是自描述的,当我尝试加载我训练的 CNN 模型时,我收到了 ValueError: Unknown activation function: PReLU 错误,该模型使用 PReLU 作为卷积层和密集层的激活函数。我怎样才能使用这个模型?有解决办法吗?
附言我正在使用Keras的load_model函数通过提供的.h5文件加载模型。
【问题讨论】:
标签:
tensorflow
keras
tf.keras
activation-function
relu
【解决方案1】:
当使用像 PReLU 这样的高级激活函数时,最好将它与 add() 方法一起使用,而不是使用 'Activation' 包装它。
例如
activation_function = keras.layers.advanced_activations.PReLU(init='zero', weights=None)
model = Sequential()
model.add(Dense(64, input_dim=14, init='uniform'))
model.add(activation_function)