tf.contrib.metrics.streaming_pearson_correlation
Computes Pearson correlation coefficient between predictions
, labels
.
tf.contrib.metrics.streaming_pearson_correlation( predictions, labels, weights=None, metrics_collections=None, updates_collections=None, name=None )
The streaming_pearson_correlation
function delegates to streaming_covariance
the tracking of three [co]variances:
-
streaming_covariance(predictions, labels)
, i.e. covariance -
streaming_covariance(predictions, predictions)
, i.e. variance -
streaming_covariance(labels, labels)
, i.e. variance
The product-moment correlation ultimately returned is an idempotent operation cov(predictions, labels) / sqrt(var(predictions) * var(labels))
. To facilitate correlation computation across multiple batches, the function groups the update_op
s of the underlying streaming_covariance and returns an update_op
.
If weights
is not None, then it is used to compute a weighted correlation. NOTE: these weights are treated as "frequency weights", as opposed to "reliability weights". See discussion of the difference on https://wikipedia.org/wiki/Weighted_arithmetic_mean#Weighted_sample_variance
Args | |
---|---|
predictions | A Tensor of arbitrary size. |
labels | A Tensor of the same size as predictions. |
weights | Optional Tensor indicating the frequency with which an example is sampled. Rank must be 0, or the same rank as labels , and must be broadcastable to labels (i.e., all dimensions must be either 1 , or the same as the corresponding labels dimension). |
metrics_collections | An optional list of collections that the metric value variable should be added to. |
updates_collections | An optional list of collections that the metric update ops should be added to. |
name | An optional variable_scope name. |
Returns | |
---|---|
pearson_r | A Tensor representing the current Pearson product-moment correlation coefficient, the value of cov(predictions, labels) / sqrt(var(predictions) * var(labels)) . |
update_op | An operation that updates the underlying variables appropriately. |
Raises | |
---|---|
ValueError | If labels and predictions are of different sizes, or if weights is the wrong size, or if either metrics_collections or updates_collections are not a list or tuple . |
© 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_pearson_correlation