TensorFlow 2.0 Beta is available Learn more

tf.keras.metrics.SpecificityAtSensitivity

TensorFlow 2.0 version View source on GitHub

Class SpecificityAtSensitivity

Computes the specificity at a given sensitivity.

Aliases:

  • Class tf.compat.v1.keras.metrics.SpecificityAtSensitivity
  • Class tf.compat.v2.keras.metrics.SpecificityAtSensitivity
  • Class tf.compat.v2.metrics.SpecificityAtSensitivity

Sensitivity measures the proportion of actual positives that are correctly identified as such (tp / (tp + fn)). Specificity measures the proportion of actual negatives that are correctly identified as such (tn / (tn + fp)).

This metric creates four local variables, true_positives, true_negatives, false_positives and false_negatives that are used to compute the specificity at the given sensitivity. The threshold for the given sensitivity value is computed and used to evaluate the corresponding specificity.

If sample_weight is None, weights default to 1. Use sample_weight of 0 to mask values.

For additional information about specificity and sensitivity, see the following: https://en.wikipedia.org/wiki/Sensitivity_and_specificity

Usage:

m = tf.keras.metrics.SpecificityAtSensitivity(0.8, num_thresholds=1)
m.update_state([0, 0, 1, 1], [0, 0.5, 0.3, 0.9])
print('Final result: ', m.result().numpy())  # Final result: 1.0

Usage with tf.keras API:

model = tf.keras.Model(inputs, outputs)
model.compile(
    'sgd',
    loss='mse',
    metrics=[tf.keras.metrics.SpecificityAtSensitivity()])

__init__

View source

__init__(
    sensitivity,
    num_thresholds=200,
    name=None,
    dtype=None
)

Creates a SpecificityAtSensitivity instance.

Args:

  • sensitivity: A scalar value in range [0, 1].
  • num_thresholds: (Optional) Defaults to 200. The number of thresholds to use for matching the given specificity.
  • name: (Optional) string name of the metric instance.
  • dtype: (Optional) data type of the metric result.

Methods

reset_states

View source

reset_states()

result

View source

result()

update_state

View source

update_state(
    y_true,
    y_pred,
    sample_weight=None
)

Accumulates confusion matrix statistics.

Args:

  • y_true: The ground truth values.
  • y_pred: The predicted values.
  • sample_weight: Optional weighting of each example. Defaults to 1. Can be a Tensor whose rank is either 0, or the same rank as y_true, and must be broadcastable to y_true.

Returns:

Update op.