激活函数Activations
优质
小牛编辑
132浏览
2023-12-01
激活函数可以通过设置单独的激活层实现,也可以在构造层对象时通过传递activation
参数实现。
from keras.layers import Activation, Dense
model.add(Dense(64))
model.add(Activation('tanh'))
等价于
model.add(Dense(64, activation='tanh'))
也可以通过传递一个逐元素运算的Theano/TensorFlow/CNTK函数来作为激活函数:
from keras import backend as K
def tanh(x):
return K.tanh(x)
model.add(Dense(64, activation=tanh))
model.add(Activation(tanh))
预定义激活函数
softmax:对输入数据的最后一维进行softmax,输入数据应形如
(nb_samples, nb_timesteps, nb_dims)
或(nb_samples,nb_dims)
elu
selu: 可伸缩的指数线性单元(Scaled Exponential Linear Unit),参考Self-Normalizing Neural Networks
softplus
softsign
relu
tanh
sigmoid
hard_sigmoid
linear
高级激活函数
对于简单的Theano/TensorFlow/CNTK不能表达的复杂激活函数,如含有可学习参数的激活函数,可通过高级激活函数实现,如PReLU,LeakyReLU等