TensorFlow 2.0 Beta is available Learn more

tf.keras.metrics.SensitivityAtSpecificity

TensorFlow 2.0 version View source on GitHub

Class SensitivityAtSpecificity

Computes the sensitivity at a given specificity.

Aliases:

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

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 sensitivity at the given specificity. The threshold for the given specificity value is computed and used to evaluate the corresponding sensitivity.

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.SensitivityAtSpecificity(0.4, 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: 0.5

Usage with tf.keras API:

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

__init__

View source

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

Creates a SensitivityAtSpecificity instance.

Args:

  • specificity: 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.