Spec-Zone.ru › TensorFlow 2.3

tf.compat.v1.metrics.auc

Вычисляет приблизительную AUC с помощью суммы Римана. (устарело)

tf.compat.v1.metrics.auc(
    labels, predictions, weights=None, num_thresholds=200, metrics_collections=None,
    updates_collections=None, curve='ROC', name=None,
    summation_method='trapezoidal', thresholds=None
)
Предупреждение: ЭТА ФУНКЦИЯ УСТАРЕЛА. Она будет удалена в будущей версии. Инструкции по обновлению: Значение AUC, возвращаемое этой функцией, может конфликтовать с обновлением, поэтому функция устарела. Используйте вместо неё tf.keras.metrics.AUC.

Функция auc создаёт четыре локальных переменных, true_positives, true_negatives, false_positives и false_negatives, которые используются для вычисления AUC. Для дискретизации кривой AUC используется линейно расположенный набор пороговых значений для вычисления пар значений отзыва и точности. Таким образом, площадь под кривой ROC вычисляется, используя высоту значений отзыва по отношению к скорости ложного срабатывания, а площадь под кривой PR вычисляется, используя высоту значений точности по отношению к отзывчивости.

Это значение в конечном счёте возвращается как auc, идемпотентная операция, которая вычисляет площадь под дискретизованной кривой точности по отношению к значениям отзыва (вычисленные с использованием упомянутых выше переменных). Переменная num_thresholds контролирует степень дискретизации, при большем числе пороговых значений приближение к истинному значению AUC становится более точным. Качество приближения может существенно меняться в зависимости от num_thresholds.

Для достижения наилучших результатов, predictions должно быть распределено примерно равномерно в диапазоне [0, 1] и не иметь пиков около 0 или 1. Качество приближения AUC может быть низким, если это не так. Установка summation_method в 'minoring' или 'majoring' может помочь количественно оценить ошибку приближения, предоставив нижнюю или верхнюю границу оценки AUC. Параметр thresholds может использоваться для ручного задания пороговых значений, которые более равномерно разбивают прогнозы.

Для оценки метрики по потоку данных функция создаёт операцию update_op, которая обновляет эти переменные и возвращает auc.

Если weights является None, веса по умолчанию равны 1. Используйте веса 0 для маскирования значений.

Аргументы
labels Tensor, форма которого соответствует predictions. Будет приведено к типу bool.
predictions Плавающее число Tensor произвольной формы, значения которого находятся в диапазоне [0, 1].
weights Необязательные Tensor, ранг которых равен либо 0, либо такому же, как у labels, и должен быть совместим с labels (т.е., все измерения должны быть либо 1, или такими же, как соответствующее измерение labels).
num_thresholds Количество пороговых значений, используемых при дискретизации кривой ROC.
metrics_collections Необязательный список коллекций, к которым auc должен быть добавлен.
updates_collections Необязательный список коллекций, к которым update_op должен быть добавлен.
curve Указывает имя вычисляемой кривой, 'ROC' [по умолчанию] или 'PR' для кривой точности-полноты.
name Необязательное имя области переменных.
summation_method Указывает метод суммирования Римана (https://en.wikipedia.org/wiki/Riemann_sum): 'трапециевидный' [по умолчанию] применяет правило трапеций; 'careful_interpolation', его вариант, отличающийся только более корректной схемой интерполяции для PR-AUC - интерполирует (истинные/ложные) положительные значения, но не соотношение, которое представляет собой точность; 'minoring', применяющий левую сумму для возрастающих интервалов и правую сумму для убывающих интервалов; 'majoring', который делает наоборот. Обратите внимание, что 'careful_interpolation' строго предпочтительнее 'трапециевидного' (скоро будет устаревшим), так как он применяет тот же метод для ROC и лучший (см. Davis & Goadrich 2006 для получения подробностей) для кривой PR.
thresholds Необязательный список числовых значений с плавающей точкой, которые будут использоваться в качестве пороговых значений для дискретизации кривой. Если задано, параметр num_thresholds игнорируется. Значения должны быть в диапазоне [0, 1]. Пороговые значения конечных точек, равные {-epsilon, 1+epsilon} для малого положительного значения epsilon, будут автоматически включены, чтобы правильно обработать прогнозы, равные точно 0 или 1.
Возвращаемые значения
auc Скаляр Tensor, представляющий текущую площадь под кривой.
update_op Операция, которая увеличивает переменные true_positives, true_negatives, false_positives и false_negatives соответствующим образом и значение которой совпадает со значением auc.
Исключения
ValueError Если predictions и labels имеют несовместимые формы, или если weights не является None и его форма не соответствует predictions, или если metrics_collections или updates_collections не являются списком или кортежем.
RuntimeError Если включено выполнение Eager.

© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.3/api_docs/python/tf/compat/v1/metrics/auc

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API