pytorch中[..., 0]怎么使用
这篇文章将为大家详细讲解有关pytorch中[..., 0]怎么使用,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
在看程序的时候看到了x[…, 0]的语句不是很理解,后来自己做实验略微了解,以此记录方便自己查看。
b=torch.Tensor([[[[10,2],[4,5],[7,8]],[[1,2],[4,5],[7,8]]]])print(b.size())(1, 2, 3, 2)print(b[…,0])tensor([[[10., 4., 7.],[ 1., 4., 7.]]])print(b[…,0].size())(1, 2, 3)print(b[…,2])Traceback (most recent call last):File “”, line 1, inIndexError: index 2 is out of bounds for dimension 3 with size 2
print(b[0,…])tensor([[[10., 2.],[ 4., 5.],[ 7., 8.]],[[ 1., 2.],[ 4., 5.],[ 7., 8.]]])print(b[0,…].size())(2, 3, 2)
print(b[0,…,0].size())(2, 3)print(b[0,…,0])tensor([[10., 4., 7.],[ 1., 4., 7.]])
[…, 0]表示抽取tensor b的第4根轴上的第一列数字组成tensor,[0, …]表示抽取tensor b的第一根轴上的第一列数字组成tensor,[0, …, 0]表示抽取b的第一根和第四根轴上的第一列数字组成tensor。
还发现一个现象
print(b[…,0:])tensor([[[[10., 2.],[ 4., 5.],[ 7., 8.]],[[ 1., 2.],[ 4., 5.],[ 7., 8.]]]])
print(b[…,1:])tensor([[[[2.],[5.],[8.]],[[2.],[5.],[8.]]]])
print(b[…,2:])tensor([], size=(1, 2, 3, 0))
补充:PyTorch中[..., 0]的使用案例
1. 示例1
import torcha = torch.rand((17, 24, 8))b = a[..., 0]c = a[:, :, 0]print(b == c)
结果为True
2. 示例2
import torcha = torch.rand((64, 17, 24, 8))b = a[..., 0]c = a[:, :, :, 0]print(b == c)
结果为True
pytorch的优点
1.PyTorch是相当简洁且高效快速的框架;2.设计追求最少的封装;3.设计符合人类思维,它让用户尽可能地专注于实现自己的想法;4.与google的Tensorflow类似,FAIR的支持足以确保PyTorch获得持续的开发更新;5.PyTorch作者亲自维护的论坛 供用户交流和求教问题6.入门简单
关于“pytorch中[..., 0]怎么使用”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341