Класс SensitivityAtSpecificity
Класс SensitivityAtSpecificity вычисляет метрику
чувствительности (полноты) при заданном уровне
специфичности. Метрика полезна в задачах бинарной
классификации, когда важно контролировать долю
ложноположительных срабатываний. Первым параметром
передается значение специфичности, при котором
измеряется чувствительность. Вторым параметром можно
передать количество пороговых значений для поиска
рабочей точки. Третьим параметром задается имя метрики.
Четвертым параметром передается тип данных.
Синтаксис
tf.keras.metrics.SensitivityAtSpecificity(
specificity, [num_thresholds], [name], [dtype]
)
Пример
Давайте создадим метрику с уровнем специфичности
0.5 и обновим ее предсказаниями:
import tensorflow as tf
m = tf.keras.metrics.SensitivityAtSpecificity(0.5)
m.update_state([0, 1, 1, 0], [0.3, 0.7, 0.8, 0.4])
print(m.result().numpy())
Результат выполнения кода:
1.0
Пример
Давайте создадим метрику с уровнем специфичности
0.8 и другим набором данных:
import tensorflow as tf
m = tf.keras.metrics.SensitivityAtSpecificity(0.8)
m.update_state([0, 1, 0, 1, 1], [0.2, 0.9, 0.3, 0.6, 0.7])
print(m.result().numpy())
Результат выполнения кода:
1.0
Пример
Давайте создадим метрику с явным именем и выведем ее результат после нескольких обновлений:
import tensorflow as tf
m = tf.keras.metrics.SensitivityAtSpecificity(
0.5, name='sens_at_spec'
)
m.update_state([0, 1, 1, 0], [0.1, 0.8, 0.6, 0.2])
m.update_state([1, 0, 1, 0], [0.7, 0.3, 0.9, 0.4])
print(m.name)
print(m.result().numpy())
Результат выполнения кода:
"sens_at_spec"
1.0
Смотрите также
-
класс
PrecisionAtRecall,
который вычисляет точность при заданной полноте -
класс
RecallAtPrecision,
который вычисляет полноту при заданной точности -
класс
AUC,
который вычисляет площадь под ROC-кривой -
класс
Recall,
который вычисляет полноту модели