reject.diversity

Module for diversity.

Module Contents

Functions

compute_pairwise_diversity(→ float)

Calculate diversity between two members of an ensemble.

_dq_divide(numerator, denominator[, zero_division])

Perform division and handles divide-by-zero.

_warn_dq(result_size)

Warns about ill-defined DQ-score.

_check_zero_division(zero_division)

Return replacement value for zero division.

_input_array(→ numpy.typing.NDArray)

Convert input to numpy array.

_diversity_quality_score_base(→ numpy.typing.NDArray)

Compute Diversity Quality score based on diversity scores.

diversity_score(→ numpy.typing.ArrayLike)

Compute diversity score in some prediction.

diversity_quality_score(→ numpy.typing.ArrayLike)

Compute Diversity Quality score based on output predictions.

reject.diversity.compute_pairwise_diversity(other_member_label: numpy.typing.NDArray, base_member_label: numpy.typing.NDArray) float[source]

Calculate diversity between two members of an ensemble.

Parameters:
  • other_member_label (NDArray) – Predicted labels of other ensemble member.

  • base_member_label (NDArray) – Predicted labels of base ensemble member.

Returns:

Diversity score.

Return type:

float

reject.diversity._dq_divide(numerator, denominator, zero_division='warn')[source]

Perform division and handles divide-by-zero.

On zero-division, sets the corresponding result elements equal to 0 or np.nan (according to zero_division). Plus, if zero_division != "warn" raises a warning.

reject.diversity._warn_dq(result_size)[source]

Warns about ill-defined DQ-score.

reject.diversity._check_zero_division(zero_division)[source]

Return replacement value for zero division.

exception reject.diversity.UndefinedMetricWarning[source]

Bases: UserWarning

Warning used when the metric is invalid.

reject.diversity._input_array(a: numpy.typing.ArrayLike) numpy.typing.NDArray[source]

Convert input to numpy array.

Parameters:

a (ArrayLike) – Input array to convert

Returns:

Numpy array

Return type:

NDArray

reject.diversity._diversity_quality_score_base(diversity_id: numpy.typing.ArrayLike, diversity_ood: numpy.typing.ArrayLike, beta_ood: float = 1.0, zero_division: Any = 'warn', keepdims: bool = False) numpy.typing.NDArray[source]

Compute Diversity Quality score based on diversity scores.

Parameters:
  • diversity_id (ArrayLike) – Diversity score on the in-distribution (ID) set

  • diversity_ood (ArrayLike) – Diversity score on the out-of-distribution (OOD) set

  • beta_ood (float, optional) – OOD score is considered beta_ood times as imortant as ID score, by default 1.0

  • zero_division (str, optional) – How to handle division by zero {“warn”, 0.0, np.nan}, by default “warn”

  • keepdims (bool, optional) – If True, the output will keep the same dimensions as the input, by default False

Returns:

Diversity-quality score

Return type:

NDArray

reject.diversity.diversity_score(y_pred: numpy.typing.ArrayLike, average: bool = False, keepdims: bool = False) numpy.typing.ArrayLike[source]

Compute diversity score in some prediction.

Parameters:
  • y_pred (ArrayLike) – Output predictions

  • average (bool, optional) – Whether to average over the ensemble members, by default False

  • keepdims (bool, optional) – Whether to keep the output dimensions, by default False

Returns:

Diversity score

Return type:

ArrayLike

reject.diversity.diversity_quality_score(y_pred_id: numpy.typing.ArrayLike, y_pred_ood: numpy.typing.ArrayLike, beta_ood: float = 1.0, average: bool = False, zero_division: str = 'warn', keepdims: bool = False) numpy.typing.ArrayLike[source]

Compute Diversity Quality score based on output predictions.

Parameters:
  • y_pred_id (ArrayLike) – Predictions on the ID set

  • y_pred_ood (ArrayLike) – Predictions on the OOD set

  • beta_ood (float, optional) – OOD score is considered beta_ood times as imortant as ID score, by default 1.0

  • average (bool, optional) – Whether to average over the ensemble members, by default False

  • zero_division (str, optional) – How to handle division by zero {“warn”, 0.0, np.nan}, by default “warn”

  • keepdims (bool, optional) – Whether to keep the output dimensions, by default False

Returns:

Diversity Quality score

Return type:

ArrayLike