def recall_female(y_true, y_pred):
    """ Compute recall for the class "female"

    :param y_true: true labels (dummy numpy array, column 0 for male, column 1 for female)
    :param y_pred: predicted labels (dummy numpy array, column 0 for male, column 1 for female)
    :return: recall (float)
    """
    nb_female = K.sum(K.round(K.clip(y_true[:, 1], 0, 1)))
    male_true_positives = K.sum(
        K.round(K.clip(y_true[:, 1] * y_pred[:, 1], 0, 1)))
    recall = male_true_positives / (nb_female + K.epsilon())
    return recall
def precision_male(y_true, y_pred):
    """ Compute precision for the class "male"
    
    :param y_true: true labels (dummy numpy array, column 0 for male, column 1 for female)
    :param y_pred: predicted labels (dummy numpy array, column 0 for male, column 1 for female)
    :return: precision (float)
    """
    nb_male_pred = K.sum(K.round(K.clip(y_pred[:, 0], 0, 1)))
    male_true_positives = K.sum(
        K.round(K.clip(y_true[:, 0] * y_pred[:, 0], 0, 1)))
    precision = male_true_positives / (nb_male_pred + K.epsilon())
    return precision
Exemplo n.º 3
0
def binary_accuracy(y_true, y_pred):
    return K.mean(K.equal(y_true, K.round(y_pred)), axis=-1)
Exemplo n.º 4
0
def binary_accuracy(y_true, y_pred):
  return K.mean(K.equal(y_true, K.round(y_pred)), axis=-1)
Exemplo n.º 5
0
def iou_accuracy(y_true, y_pred):
  i = K.cast(K.cumsum(K.maximum(y_true*K.round(y_pred), 0.)), K.floatx())
  u = K.cast(K.cumsum(K.maximum(y_true+K.round(y_pred), 0.)), K.floatx())
  return i/u