Spec-Zone.ru › TensorFlow 1.15

tf.contrib.metrics.streaming_sparse_precision_at_k

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

tf.contrib.metrics.streaming_sparse_precision_at_k(
    predictions, labels, k, class_id=None, weights=None, metrics_collections=None,
    updates_collections=None, name=None
)

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

Ожидается, что точность будет уменьшаться по мере увеличения k.

streaming_sparse_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 predictions. Операции над множествами, применяемые к top_k и labels, вычисляют истинные положительные и ложные положительные результаты, взвешенные по weights. Затем update_op увеличивает true_positive_at_<k> и false_positive_at_<k> с использованием этих значений.

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

Аргументы
predictions Вещественное число Tensor с формой [D1, ... DN, num_classes], где N >=
  1. Обычно N=1, и предсказания имеют форму [размер пакета, num_classes]. Конечное измерение содержит значения логарифмов для каждого класса. [D1, ... DN] должно соответствовать labels.
labels int64 Tensor или SparseTensor с формой [D1, ... DN, num_labels], где N >= 1 и num_labels — количество целевых классов для соответствующего предсказания. Обычно N=1, и labels имеет форму [размер_пакета, num_labels]. [D1, ... DN] должно соответствовать predictions. Значения должны быть в диапазоне [0, num_classes), где num_classes — последнее измерение predictions. Значения за пределами этого диапазона игнорируются.
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 не являются списком или кортежем.

© 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/contrib/metrics/streaming_sparse_precision_at_k

Spec-Zone.ru

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