PyTorch笔记之 squeeze() 和 unsqueeze()


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)


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM