torch.squeeze(input, dim=None, out=None) 返回一个输入的所有规模为1的维移除的tensor。
如:
输入的shape为:
(
A
×
1
×
B
×
C
×
1
×
D
)
(A \times 1 \times B \times C \times 1 \times D)
(A×1×B×C×1×D),输出的tensor为:
(
A
×
B
×
C
×
D
)
(A \times B \times C \times D)
(A×B×C×D)。
当给定 d i m dim dim时,squeeze操作只在给定维上进行,如果输入的shape为 ( A × 1 × B ) (A \times 1 \times B) (A×1×B),那么squeeze(input, 0)则会保持原来的形状,但squeeze(input, 1)将会squeeze输入为 ( A × B ) (A \times B) (A×B)的shape。
注意:返回的tensor和输入tensor是共享存储的,因此此处tensor内容的改变将会影响其他相应tensor的内容。