Output layer y=some_function

i’m find solution


from keras import backend as K

def binaryActivationFromTanh(x, threshold) :

    # convert [-inf,+inf] to [-1, 1]
    # you can skip this step if your threshold is actually within [-inf, +inf]

    activated_x = K.tanh(x)

    binary_activated_x = activated_x > threshold

    # cast the boolean array to float or int as necessary
    # you shall also cast it to Keras default
    # binary_activated_x = K.cast_to_floatx(binary_activated_x)

    return binary_activated_x

x = Input(shape=(1000,))
y = Dense(3, activation=binaryActivationFromTanh)(x)

for my example i’m have

y = [
[5,9,3],
[6,11,7],
[5,2,6]

]

how create


def binaryActivationFromTanh(x, threshold) :
binary_activated_x = ???

a0 = [6,5]
a1 = [9,11,2]
a2 = [3,7,6]

binary_activated_x [0][0] => some_func(a0)
binary_activated_x [0][1] => some_func(a1)
binary_activated_x [0][2] => some_func(a2)

return binary_activated_x

in my example
act =‘relu’
model = Sequential()

model.add(BatchNormalization())

model.add(Dense(34*2, activation=act, input_dim=34))

model.add(Dropout(0.2))

model.add(Dense(34*100, activation=act))   #160 000 

model.add(Dropout(0.2))

model.add(Dense(51, activation=btcActAbg))     # ERROR NOW
model.compile( optimizer='adam',loss='mse',metrics=['acc'])