View source on GitHub
|
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. covariancestreaming_covariance(predictions, predictions), i.e. variancestreaming_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_ops 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.
|
View source on GitHub