tf.compat.v1.metrics.average_precision_at_k
Вычисляет среднюю точность@k прогнозов относительно разреженных меток.
tf.compat.v1.metrics.average_precision_at_k(
labels, predictions, k, weights=None, metrics_collections=None,
updates_collections=None, name=None
)
average_precision_at_k создаёт две локальные переменные, average_precision_at_<k>/total и average_precision_at_<k>/max, которые используются для вычисления частоты. Эта частота в конечном счёте возвращается как average_precision_at_<k>: идемпотентная операция, которая просто делит average_precision_at_<k>/total на average_precision_at_<k>/max.
Для оценки метрики по потоку данных функция создаёт update_op операцию, которая обновляет эти переменные и возвращает precision_at_<k>. Внутри top_k операция вычисляет Tensor, указывающую на лучшие k predictions. Операции над множествами, применяемые к top_k и labels, вычисляют истинно положительные и ложноположительные значения, взвешенные по weights. Затем update_op увеличивает true_positive_at_<k> и false_positive_at_<k> с использованием этих значений.
Если weights равно None, веса по умолчанию равны 1. Используйте веса 0, чтобы маскировать значения.
| Аргументы | |
|---|---|
labels | int64 Tensor или SparseTensor с формой [D1, ... DN, num_labels] или [D1, ... DN], где последнее подразумевает num_labels=1. N >= 1, а num_labels — количество целевых классов для соответствующего прогноза. Обычно N=1 и labels имеет форму [размер_пакета, num_labels]. [D1, ... DN] должно соответствовать predictions. Значения должны быть в диапазоне [0, num_classes), где num_classes — последняя размерность predictions. Значения вне этого диапазона игнорируются. |
predictions | Вещественное число Tensor с формой [D1, ... DN, num_classes], где N >= 1. Обычно N=1 и predictions имеет форму [размер_пакета, num_classes]. Последняя размерность содержит значения логарифмических вероятностей для каждого класса. [D1, ... DN] должно соответствовать labels. |
k | Целое число, k для метрики @k. Это вычислит среднюю точность для диапазона [1,k], как описано выше. |
weights | Tensor, ранг которого равен 0 или n-1, где n — ранг labels. Если последний, он должен быть совместим для трансляции с labels (т.е., все размерности должны быть либо 1, либо совпадать с соответствующей размерностью labels). |
metrics_collections | Необязательный список коллекций, в которые следует добавить значения. |
updates_collections | Необязательный список коллекций, в которые следует добавить обновления. |
name | Название новой операции обновления и имя пространства имён для других зависимых операций. |
| Возвращаемое значение | |
|---|---|
mean_average_precision | Скаляр float64 Tensor со средними значениями средней точности. |
update | Operation, который должным образом увеличивает переменные, а его значение соответствует metric. |
| Исключения | |
|---|---|
ValueError | если k недействительно. |
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/average_precision_at_k