def METHOD_NAME(self, y_true, y_pred):
    """Computes positive classification loss in a batch. Positive boxes are those
        boxes that contain an object.
    # Arguments
        y_true: Tensor of shape '[batch_size, num_boxes, 4 + num_classes]'
            with correct labels.
        y_pred: Tensor of shape '[batch_size, num_boxes, 4 + num_classes]'
            with predicted inferences.
    # Returns
        Tensor with positive classification loss per sample in batch.
    """
    batch_size = tf.cast(tf.shape(y_pred)[0], tf.float32)
    class_loss = self._cross_entropy(y_true[:, :, 4:], y_pred[:, :, 4:])
    positive_mask, negative_mask = self._calculate_masks(y_true)
    positive_class_losses = class_loss * positive_mask
    positive_class_loss = K.sum(positive_class_losses, axis=-1)
    num_positives = K.sum(K.cast(positive_mask, 'float32'))
    num_positives = tf.maximum(1.0, num_positives)
    return (positive_class_loss * batch_size) / num_positives