tf.math.reduce_mean
Stay organized with collections
Save and categorize content based on your preferences.
Computes the mean of elements across dimensions of a tensor.
tf.math.reduce_mean(
input_tensor, axis=None, keepdims=False, name=None
)
Used in the notebooks
Used in the guide |
Used in the tutorials |
|
|
Reduces input_tensor
along the dimensions given in axis
by computing the
mean of elements across the dimensions in axis
.
Unless keepdims
is true, the rank of the tensor is reduced by 1 for each
of the entries in axis
, which must be unique. If keepdims
is true, the
reduced dimensions are retained with length 1.
If axis
is None, all dimensions are reduced, and a tensor with a single
element is returned.
For example:
x = tf.constant([[1., 1.], [2., 2.]])
tf.reduce_mean(x)
<tf.Tensor: shape=(), dtype=float32, numpy=1.5>
tf.reduce_mean(x, 0)
<tf.Tensor: shape=(2,), dtype=float32, numpy=array([1.5, 1.5], dtype=float32)>
tf.reduce_mean(x, 1)
<tf.Tensor: shape=(2,), dtype=float32, numpy=array([1., 2.], dtype=float32)>
Args |
input_tensor
|
The tensor to reduce. Should have numeric type.
|
axis
|
The dimensions to reduce. If None (the default), reduces all
dimensions. Must be in the range [-rank(input_tensor),
rank(input_tensor)) .
|
keepdims
|
If true, retains reduced dimensions with length 1.
|
name
|
A name for the operation (optional).
|
Returns |
The reduced tensor.
|
Equivalent to np.mean
Please note that np.mean
has a dtype
parameter that could be used to
specify the output type. By default this is dtype=float64
. On the other
hand, tf.reduce_mean
has an aggressive type inference from input_tensor
,
for example:
x = tf.constant([1, 0, 1, 0])
tf.reduce_mean(x)
<tf.Tensor: shape=(), dtype=int32, numpy=0>
y = tf.constant([1., 0., 1., 0.])
tf.reduce_mean(y)
<tf.Tensor: shape=(), dtype=float32, numpy=0.5>
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates. Some content is licensed under the numpy license.
Last updated 2024-04-26 UTC.
[null,null,["Last updated 2024-04-26 UTC."],[],[],null,["# tf.math.reduce_mean\n\n\u003cbr /\u003e\n\n|------------------------------------------------------------------------------------------------------------------------------|\n| [View source on GitHub](https://github.com/tensorflow/tensorflow/blob/v2.16.1/tensorflow/python/ops/math_ops.py#L2490-L2547) |\n\nComputes the mean of elements across dimensions of a tensor.\n\n#### View aliases\n\n\n**Main aliases**\n\n[`tf.reduce_mean`](https://www.tensorflow.org/api_docs/python/tf/math/reduce_mean)\n\n\u003cbr /\u003e\n\n tf.math.reduce_mean(\n input_tensor, axis=None, keepdims=False, name=None\n )\n\n### Used in the notebooks\n\n| Used in the guide | Used in the tutorials |\n|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| - [Logistic regression for binary classification with Core APIs](https://www.tensorflow.org/guide/core/logistic_regression_core) - [Multilayer perceptrons for digit recognition with Core APIs](https://www.tensorflow.org/guide/core/mlp_core) - [Distributed training with Core APIs and DTensor](https://www.tensorflow.org/guide/core/distribution) - [Quickstart for the TensorFlow Core APIs](https://www.tensorflow.org/guide/core/quickstart_core) - [Introduction to gradients and automatic differentiation](https://www.tensorflow.org/guide/autodiff) | - [Transfer learning with YAMNet for environmental sound classification](https://www.tensorflow.org/tutorials/audio/transfer_learning_audio) - [Learned data compression](https://www.tensorflow.org/tutorials/generative/data_compression) - [Uncertainty-aware Deep Learning with SNGP](https://www.tensorflow.org/tutorials/understanding/sngp) - [CycleGAN](https://www.tensorflow.org/tutorials/generative/cyclegan) - [Neural style transfer](https://www.tensorflow.org/tutorials/generative/style_transfer) |\n\nReduces `input_tensor` along the dimensions given in `axis` by computing the\nmean of elements across the dimensions in `axis`.\nUnless `keepdims` is true, the rank of the tensor is reduced by 1 for each\nof the entries in `axis`, which must be unique. If `keepdims` is true, the\nreduced dimensions are retained with length 1.\n\nIf `axis` is None, all dimensions are reduced, and a tensor with a single\nelement is returned.\n\n#### For example:\n\n x = tf.constant([[1., 1.], [2., 2.]])\n tf.reduce_mean(x)\n \u003ctf.Tensor: shape=(), dtype=float32, numpy=1.5\u003e\n tf.reduce_mean(x, 0)\n \u003ctf.Tensor: shape=(2,), dtype=float32, numpy=array([1.5, 1.5], dtype=float32)\u003e\n tf.reduce_mean(x, 1)\n \u003ctf.Tensor: shape=(2,), dtype=float32, numpy=array([1., 2.], dtype=float32)\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Args ---- ||\n|----------------|----------------------------------------------------------------------------------------------------------------------------------------------|\n| `input_tensor` | The tensor to reduce. Should have numeric type. |\n| `axis` | The dimensions to reduce. If `None` (the default), reduces all dimensions. Must be in the range `[-rank(input_tensor), rank(input_tensor))`. |\n| `keepdims` | If true, retains reduced dimensions with length 1. |\n| `name` | A name for the operation (optional). |\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\n| Returns ------- ||\n|---|---|\n| The reduced tensor. ||\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e\n\nnumpy compatibility\n-------------------\n\n\u003cbr /\u003e\n\nEquivalent to np.mean\n\nPlease note that `np.mean` has a `dtype` parameter that could be used to\nspecify the output type. By default this is `dtype=float64`. On the other\nhand, [`tf.reduce_mean`](../../tf/math/reduce_mean) has an aggressive type inference from `input_tensor`,\nfor example: \n\n x = tf.constant([1, 0, 1, 0])\n tf.reduce_mean(x)\n \u003ctf.Tensor: shape=(), dtype=int32, numpy=0\u003e\n y = tf.constant([1., 0., 1., 0.])\n tf.reduce_mean(y)\n \u003ctf.Tensor: shape=(), dtype=float32, numpy=0.5\u003e\n\n\u003cbr /\u003e\n\n\u003cbr /\u003e"]]