Пользовательская функция активации в Keras, возвращающая значения потерь NaN - PullRequest
0 голосов
/ 05 июля 2019

Я пытаюсь реализовать следующую функцию активации в Keras: пользовательская функция активации

Это мой код:

from keras import backend as K
def melu(x):
    alpha = 0.49
    a =1-2*alpha; b =-2+(1/alpha)
    return K.switch(K.greater(x,0),
                ((0.5*K.pow(x,2))+(a*x))/(x+b),
                (alpha*K.exp(x))-1)

Моя сеть решает проблему регрессиии имеет 4 слоя: входной слой, 2 скрытых слоя, которые используют пользовательскую функцию активации, и конечный выходной слой.Он принимает 5 входных параметров и возвращает 1 значение.

Функция потерь для сети - это MSE, а оптимизатором - Адам.

Моя проблема в том, что при обучении сети я получаю потерю NaNценности.Должно быть, это проблема с моей реализацией функции активации, поскольку при использовании других функций активации я получаю результаты.

Любая помощь по этому вопросу очень ценится!

...