Spec-Zone.ru › TensorFlow 1.15

tf.metrics.auc

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

Просмотр псевдонимов

Псевдонимы совместимости для миграции

См. Руководство по миграции для получения дополнительных сведений.

tf.compat.v1.metrics.auc

tf.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 создает четыре локальные переменные, 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' строго предпочтительнее 'trapezoidal' (скоро будет устаревшим), так как он применяет тот же метод для 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/r1.15/api_docs/python/tf/metrics/auc

Spec-Zone.ru

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