Custom-Verlust-Funktion Keras Tensorflow

Brauche ich eine custom-weighted MSE-Verlust-Funktion. Ich definierte es in keras.backend

from keras import backend as K
def weighted_loss(y_true, y_pred):
    return K.mean( K.square(y_pred - y_true) *
    K.exp(-K.log(1.7) * (K.log(1. + K.exp((y_true - 3)/5 ))))      
    ,axis=-1  )

Jedoch ein Testlauf gibt

    weighted_loss(1,2)
ValueError: Tensor conversion requested dtype int32 for Tensor with dtype float32: 'Tensor("Exp_37:0", shape=(), dtype=float32)'  

oder

    weighted_loss(1.,2.)
ZeroDivisionError: integer division or modulo by zero   

Frage ich mich, welche Fehler ich hier machen.

InformationsquelleAutor axiom | 2017-07-24
Schreibe einen Kommentar