Spec-Zone.ru › TensorFlow 2.9

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' строго предпочтительнее '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.

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

Spec-Zone.ru

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