Squeeze - version 13#
This page documents version 13 of operator Squeeze. See Squeeze for the latest version (since version 25).
Domain:
ai.onnxSince version: 13
Remove single-dimensional entries from the shape of a tensor.
Takes an input axes with a list of axes to squeeze.
If axes is not provided, all the single dimensions will be removed from
the shape. If an axis is selected with shape entry not equal to one, an error is raised.
Inputs
data (T): Tensors with at least max(dims) dimensions.
axes (tensor(int64)): List of integers indicating the dimensions to squeeze. Negative value means counting dimensions from the back. Accepted range is [-r, r-1] where r = rank(data).
Outputs
squeezed (T): Reshaped tensor with same data as input.
Type Constraints
T: Constrain input and output types to all tensor types. Allowed types: tensor(bfloat16), tensor(bool), tensor(complex128), tensor(complex64), tensor(double), tensor(float), tensor(float16), tensor(int16), tensor(int32), tensor(int64), tensor(int8), tensor(string), tensor(uint16), tensor(uint32), tensor(uint64), tensor(uint8).
Examples#
test_cc_squeeze_all_singleton
Node:
Squeeze(data, axes) -> (squeezed)
Inputs:
data: shape=(1, 2, 1, 3), dtype=float32
[[[[0., 1., 2.]],
[[3., 4., 5.]]]]
axes: shape=(0,), dtype=int64
[]
Outputs:
squeezed: shape=(2, 3), dtype=float32
[[0., 1., 2.],
[3., 4., 5.]]
test_cc_squeeze_axes
Node:
Squeeze(data, axes) -> (squeezed)
Inputs:
data: shape=(2, 1, 3, 1), dtype=float32
[[[[0.],
[1.],
[2.]]],
[[[3.],
[4.],
[5.]]]]
axes: shape=(2,), dtype=int64
[1, 3]
Outputs:
squeezed: shape=(2, 3), dtype=float32
[[0., 1., 2.],
[3., 4., 5.]]
test_cc_squeeze_empty_axes_name
Node:
Squeeze(data, "") -> (squeezed)
Inputs:
data: shape=(1, 2, 1, 3), dtype=float32
[[[[0., 1., 2.]],
[[3., 4., 5.]]]]
Outputs:
squeezed: shape=(2, 3), dtype=float32
[[0., 1., 2.],
[3., 4., 5.]]
test_cc_squeeze_no_axes_input
Node:
Squeeze(data) -> (squeezed)
Inputs:
data: shape=(1, 2, 1, 3), dtype=float32
[[[[0., 1., 2.]],
[[3., 4., 5.]]]]
Outputs:
squeezed: shape=(2, 3), dtype=float32
[[0., 1., 2.],
[3., 4., 5.]]
Differences with previous version (11)#
SchemaDiff: Squeeze (domain 'ai.onnx')
old version: 11
new version: 13
breaking: yes
Breaking reasons:
input ‘axes’ (added): at position 1; option=Single; type_str=’tensor(int64)’
attribute ‘axes’ (removed): type=INTS; required=False
Inputs:
[BREAKING] added ‘axes’: at position 1; option=Single; type_str=’tensor(int64)’
Attributes:
[BREAKING] removed ‘axes’: type=INTS; required=False
Type constraints:
changed ‘T’: added types: [‘tensor(bfloat16)’]
Documentation:
line similarity: 0.80 (+1/-1 lines)
--- Squeeze v11
+++ Squeeze v13
@@ -1,5 +1,5 @@
Remove single-dimensional entries from the shape of a tensor.
-Takes a parameter `axes` with a list of axes to squeeze.
+Takes an input `axes` with a list of axes to squeeze.
If `axes` is not provided, all the single dimensions will be removed from
the shape. If an axis is selected with shape entry not equal to one, an error is raised.