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. Example: # 't' is a tensor of shape [1, 2, 1, 3, 1, 1] tf.shape(tf.squeeze(t)) # [2, 3] # 't' is a tensor of shape [1, 2, 1, 3, 1, 1] tf.shape(tf.squeeze(t, [2, 4])) # [1, 2, 3, 1]
Here is what the above code is Doing:
1. We have a tensor of shape [1, 2, 1, 3, 1, 1]
2. We use tf.squeeze to remove all size 1 dimensions
3. We get a tensor of shape [2, 3]
4. We use tf.squeeze to remove the size 1 dimension at index 2
5. We get a tensor of shape [1, 2, 3, 1]