tf.contrib.metrics.streaming_covariance
Вычисляет смещённую выборочную ковариацию между predictions и labels.
tf.contrib.metrics.streaming_covariance(
predictions, labels, weights=None, metrics_collections=None,
updates_collections=None, name=None
)
Функция streaming_covariance создаёт четыре локальные переменные, comoment, mean_prediction, mean_label, и count, которые используются для вычисления выборочной ковариации между прогнозами и метками в нескольких партиях данных. Ковариация в конечном итоге возвращается как идемпотентная операция, которая просто делит comoment на count - 1. Мы используем count - 1, чтобы получить несмещённую оценку.
Алгоритм, используемый для этого онлайн-вычисления, описан в https://en.wikipedia.org/wiki/Algorithms_for_calculating_variance. В частности, формула, используемая для объединения двух выборочных моментов, имеет вид C_AB = C_A + C_B + (E[x_A] - E[x_B]) * (E[y_A] - E[y_B]) * n_A * n_B / n_AB. Момент для одной партии данных - это просто sum((x - E[x]) * (y - E[y])), необязательно взвешенный.
Если weights не равно None, то оно используется для вычисления взвешенных моментов, средних значений и количества. ПРИМЕЧАНИЕ: эти веса рассматриваются как "веса частоты", а не "веса надёжности". См. обсуждение различий на https://wikipedia.org/wiki/Weighted_arithmetic_mean#Weighted_sample_variance.
Для облегчения вычисления ковариации в нескольких партиях данных функция создаёт операцию update_op, которая обновляет базовые переменные и возвращает обновлённую ковариацию.
| Аргументы | |
|---|---|
predictions | Tensor произвольного размера. |
labels | Tensor того же размера, что и predictions. |
weights | Необязательное Tensor, указывающее частоту выборки примера. Ранг должен быть равен 0 или совпадать с рангом labels, и он должен быть совместим по трансляции с labels (т.е., все измерения должны быть либо 1, либо такими же, как соответствующее измерение labels). |
metrics_collections | Необязательный список коллекций, в которые должна быть добавлена переменная значения метрики. |
updates_collections | Необязательный список коллекций, в которые должны быть добавлены операции обновления метрики. |
name | Необязательное имя области переменных. |
| Возвращаемые значения | |
|---|---|
covariance | Tensor, представляющий текущую несмещённую выборочную ковариацию, comoment / (count - 1). |
update_op | Операция, которая должным образом обновляет локальные переменные. |
| Исключения | |
|---|---|
ValueError | Если метки и прогнозы имеют разный размер или если 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_covariance