Добавление пользовательской функции активации в Keras - PullRequest
0 голосов
/ 02 мая 2018

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

def picewise(x):
   if x > 0.5 :
      return 1
   elif if x < 0.5:
      return 0
   else:
      return x + 0.5

Я вызываю функцию активации как

model.add(Dense(128,activation = picewise))

Но я получаю кучу ошибок. Как я могу успешно реализовать вышеизложенное в качестве рабочей функции активации в Keras

1 Ответ

0 голосов
/ 02 мая 2018

Здесь x не является примитивным типом. x - тензор. Таким образом, способ, которым вы пытаетесь реализовать функцию активации, не будет работать. Возможно, вам нужно что-то вроде следующего:

import tensorflow as tf
def picewise(x):
    z = tf.where(x >= 0.5, x - x + 1.0 , x)
    y = tf.where(z <= -0.5,z -  z + 0, z + 0.5)
    return y
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...