首页 > 解决方案 > 在 keras 中创建自定义激活函数

问题描述

我想用 keras.backend 为 LSTM 的最后一个密集编写一个自定义激活函数,如下所示:

def customactivation(x):
    if x <= 0.5:
        return 0
    else :
        return 1



model.add(Dense(1, activation=customactivation))

我应该怎么办?

标签: pythonkeraslstmactivation-function

解决方案


这个函数是不可微的,除非你知道自己在做什么,否则对训练毫无用处。你会得到错误“一个操作没有梯度”

那说:

def customactivation(x):
    return K.cast(K.greater(x, 0.5), K.floatx())

推荐阅读