contrib.metrics.streaming_pearson_correlation
tf.contrib.metrics.streaming_pearson_correlation
tf.contrib.metrics.streaming_pearson_correlation
streaming_pearson_correlation( predictions, labels, weights=None, metrics_collections=None, updates_collections=None, name=None )
Defined in tensorflow/contrib/metrics/python/ops/metric_ops.py
.
See the guide: Metrics (contrib) > Metric Ops
Computes Pearson correlation coefficient between predictions
, labels
.
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
: ATensor
of arbitrary size. -
labels
: ATensor
of the same size as predictions. -
weights
: OptionalTensor
indicating the frequency with which an example is sampled. Rank must be 0, or the same rank aslabels
, and must be broadcastable tolabels
(i.e., all dimensions must be either1
, or the same as the correspondinglabels
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
: ATensor
representing the current Pearson product-moment correlation coefficient, the value ofcov(predictions, labels) / sqrt(var(predictions) * var(labels))
. -
update_op
: An operation that updates the underlying variables appropriately.
Raises:
-
ValueError
: Iflabels
andpredictions
are of different sizes, or ifweights
is the wrong size, or if eithermetrics_collections
orupdates_collections
are not alist
ortuple
.
© 2017 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/api_docs/python/tf/contrib/metrics/streaming_pearson_correlation