Skip to content

Instantly share code, notes, and snippets.

@emoen
Created March 7, 2019 12:37
Show Gist options
  • Save emoen/949bc1d860e28864df618cfcf94ebc3d to your computer and use it in GitHub Desktop.
Save emoen/949bc1d860e28864df618cfcf94ebc3d to your computer and use it in GitHub Desktop.
def missing_loss(y_true, y_pred):
# y_pred=tf.constant([[1.0,2.0],[5.0,10.0]])
bool_finite = tf.where(tf.equal(y_true, -1.0))
int_finite = K.cast(bool_finite, dtype='int32')
float_finite = K.cast(int_finite, dtype='float32')
y_pred = K.cast(y_pred, dtype='float32')
#bool_finite_val = bool_finite.eval()
#bool_finite_val =bool_finite_val.astype(np.float32)
#new_bool_finite = tf.constant(bool_finite_val)
y_true = K.print_tensor(y_true, message='y_true = ')
y_pred = K.print_tensor(y_pred, message='y_pred = ')
#sea, fresh, total, ps, pf, pt = y_true
# hvor pX er 1 dersom vi har en verdi for X
#pred_sea, pred_tot... = y_pred
loss = K.square( y_pred - y_true )
loss = K.tf.multiply( loss, float_finite)
loss = K.sum(loss)
#K.print_tensor(loss, message='loss=')
return loss
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment