@deprecation.deprecated_args(None, "Use the `axis` argument instead",
def squeeze(input, axis=None, name=None, squeeze_dims=None):
  # pylint: disable=redefined-builtin
  """Removes dimensions of size 1 from the shape of a tensor.
从tensor的形状中移除size = 1的维度。

  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
给定一个input tensor,这个操作会返回一个同样类型的tensor并且移除了所有size = 1的维度。如果你不想移除所有size=1的维度,可以通过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]

Note: if input is a tf.RaggedTensor, then this operation takes O(N)
time, where N is the number of elements in the squeezed dimensions.

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).
squeeze_dims: Deprecated keyword argument that is now axis.


A Tensor. Has the same type as input.
Contains the same data as input, but has one or more dimensions of
size 1 removed.

ValueError: When both squeeze_dims and axis are specified.

posted @ 2020-07-31 17:10  ZH奶酪  阅读(44)  评论(0编辑  收藏