Spec-Zone.ru › TensorFlow

tf.compat.v1.metrics.precision_at_k

Вычисляет точность@k предсказаний по отношению к разреженным меткам.

tf.compat.v1.metrics.precision_at_k(
    labels,
    predictions,
    k,
    class_id=None,
    weights=None,
    metrics_collections=None,
    updates_collections=None,
    name=None
)

Если class_id указано, мы вычисляем точность, учитывая только записи в пакете, для которых class_id находится в числе k наибольших predictions, и вычисляем долю таких записей, для которых class_id является правильной меткой. Если class_id не указано, мы вычислим точность как частоту, с которой в среднем метка среди k классов с наибольшими предсказанными значениями для записи в пакете является правильной и может быть найдена в метке для этой записи.

precision_at_k создает две локальные переменные, true_positive_at_<k> и false_positive_at_<k>, которые используются для вычисления частоты точности@k. Эта частота в конечном итоге возвращается как precision_at_<k>: идемпотентная операция, которая просто делит true_positive_at_<k> на сумму true_positive_at_<k> и false_positive_at_<k>.

Для оценки метрики по потоку данных функция создает операцию update_op, которая обновляет эти переменные и возвращает precision_at_<k>. Внутренне, операция top_k вычисляет операцию Tensor, указывающую k наибольших 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_классов]. Последняя размерность содержит значения логарифмических вероятностей для каждого класса. [D1, ... DN] должно совпадать с labels.
k Целое число, k для метрики @k.
class_id Целое число, идентификатор класса, для которого мы хотим получить бинарные метрики. Он должен быть в диапазоне [0, num_classes], где num_classes — последняя размерность predictions. Если class_id находится вне этого диапазона, метод возвращает NAN.
weights Tensor, ранг которого равен либо 0, либо n-1, где n — ранг labels. Если последний, он должен быть совместим с labels (то есть все размерности должны быть либо 1, либо такими же, как соответствующая labels размерность).
metrics_collections Необязательный список коллекций, в которые должны добавляться значения.
updates_collections Необязательный список коллекций, в которые должны добавляться обновления.
name Имя новой операции обновления и пространство имен для других зависимых операций.
Возвращаемое значение
precision Скалярное значение float64 Tensor, равное значению true_positives, деленному на сумму true_positives и false_positives.
update_op Operation, который увеличивает значения переменных true_positives и false_positives соответствующим образом и значение которого соответствует precision.
Исключения
ValueError Если weights не является None и его форма не соответствует predictions, или если либо metrics_collections, либо updates_collections не являются списком или кортежем.
RuntimeError Если включено выполнение с немедленным результатом.

© 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/api_docs/python/tf/compat/v1/metrics/precision_at_k

Spec-Zone.ru

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