def _split_predictions(X, y_true, y_pred, Y_prob):
    """Splits the data based on whether the prediction was correct."""
    t_mask = y_true == y_pred
    f_mask = ~t_mask
    split_arrays = [(A[t_mask], A[f_mask]) for A in [X, y_true, y_pred, Y_prob]]
    return list(zip(*split_arrays))