tf.squeeze
| View source on GitHub |
Removes dimensions of size 1 from the shape of a tensor.
tf.squeeze(
input, axis=None, name=None
)
Given a tensor input, this operation returns a tensor of the same type with all dimensions of size 1 removed. If you don't want to remove all size 1 dimensions, you can remove specific size 1 dimensions by specifying axis.
For example:
# 't' is a tensor of shape [1, 2, 1, 3, 1, 1] tf.shape(tf.squeeze(t)) # [2, 3]
Or, to remove specific size 1 dimensions:
# 't' is a tensor of shape [1, 2, 1, 3, 1, 1] tf.shape(tf.squeeze(t, [2, 4])) # [1, 2, 3, 1]
Unlike the older op tf.compat.v1.squeeze, this op does not accept a deprecated squeeze_dims argument.
Note: ifinputis atf.RaggedTensor, then this operation takesO(N)time, whereNis the number of elements in the squeezed dimensions.
| Args | |
|---|---|
input | A Tensor. The input to squeeze. |
axis | An optional list of ints. Defaults to []. If specified, only squeezes the dimensions listed. The dimension index starts at 0. It is an error to squeeze a dimension that is not 1. Must be in the range [-rank(input), rank(input)). Must be specified if input is a RaggedTensor. |
name | A name for the operation (optional). |
| Returns | |
|---|---|
A Tensor. Has the same type as input. Contains the same data as input, but has one or more dimensions of size 1 removed. |
| Raises | |
|---|---|
ValueError | The input cannot be converted to a tensor, or the specified axis cannot be squeezed. |
© 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/r2.4/api_docs/python/tf/squeeze