使用Keras的'selu'激活功能时出错
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Keras的'selu'激活功能时出错相关的知识,希望对你有一定的参考价值。
我正在使用带有Tensorflow后端的Keras。当我尝试使用'selu'激活功能时:
model.add(Dense(32, input_shape=(input_length - 1,)))
model.add(Activation('selu'))
我得到的错误是:
ValueError: Unknown activation function:selu
这有什么解决方案吗?
答案
塞卢不在你的activations.py
的keras(很可能因为它是2017年6月14日加入,只有22 days前)。您可以在missing code文件中添加activations.py
,或在脚本中创建自己的selu
激活。
示例代码
from keras.activations import elu
def selu(x):
"""Scaled Exponential Linear Unit. (Klambauer et al., 2017)
# Arguments
x: A tensor or variable to compute the activation function for.
# References
- [Self-Normalizing Neural Networks](https://arxiv.org/abs/1706.02515)
"""
alpha = 1.6732632423543772848170429916717
scale = 1.0507009873554804934193349852946
return scale * elu(x, alpha)
model.add(Dense(32, input_shape=(input_length - 1,)), activation=selu)
以上是关于使用Keras的'selu'激活功能时出错的主要内容,如果未能解决你的问题,请参考以下文章
Python Keras module 'keras.backend' has no attribute 'image_data_format'
ImportError: cannot import name 'Tokenizer' from 'keras_bert'
AttributeError: module 'tensorflow.python.keras.backend' has no attribute 'get_graph'