squeeze() 函數
squeeze() 用來去掉向量的一個維度,只有維度為 1 的那一維才能去掉
example:
初始化1個向量shape為(1,2,3)的向量
import torch a = torch.rand((1,2,3))
去掉第 0 維,第 0 維的大小是1,所以可以去掉第0維,去掉后向量的 shape 是(2,3)
去掉最后一維,最后一維的大小是3,所以不會操作成功,向量的 shape 仍然是(1,2,3)
unsqueeze()函數
從函數名字就可以看出,unsqueeze() 和 squeeze() 的功能是相反的,squeeze 是去掉1維,那 unsqueeze() 就是增加1維。
example:
增加第 4 維,此時向量的 shape 是(1,2,3,1)
插入第 0 維,我們初始化一個 shape 為(2,3)的向量,然后在插入第 0 維,插入后向量的 shape 為(1,2,3)