meridian.backend.squeeze

Removes dimensions of size 1 from the shape of a tensor.

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.

  @tf 
 . 
 function 
 def 
  
 func 
 ( 
 x 
 ): 
 print 
 ( 
 'x.shape:' 
 , 
 x 
 . 
 shape 
 ) 
 known_axes 
 = 
 [ 
 i 
 for 
 i 
 , 
 size 
 in 
 enumerate 
 ( 
 x 
 . 
 shape 
 ) 
 if 
 size 
 == 
 1 
 ] 
 y 
 = 
 tf 
 . 
 squeeze 
 ( 
 x 
 , 
 axis 
 = 
 known_axes 
 ) 
 print 
 ( 
 'shape of tf.squeeze(x, axis=known_axes):' 
 , 
 y 
 . 
 shape 
 ) 
 y 
 = 
 tf 
 . 
 squeeze 
 ( 
 x 
 ) 
 print 
 ( 
 'shape of tf.squeeze(x):' 
 , 
 y 
 . 
 shape 
 ) 
 return 
 0 
 _ 
 = 
 func 
 . 
 get_concrete_function 
 ( 
 tf 
 . 
 TensorSpec 
 ([ 
 None 
 , 
 1 
 , 
 2 
 ], 
 dtype 
 = 
 tf 
 . 
 int32 
 )) 
 # Output is. 
 # x.shape: (None, 1, 2) 
 # shape of tf.squeeze(x, axis=known_axes): (None, 2) 
 # shape of tf.squeeze(x): <unknown> 
 

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).

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
The input cannot be converted to a tensor, or the specified axis cannot be squeezed.

Create a Mobile Website
View Site in Mobile | Classic
Share by: