python之pytorch中[..., 0]的用法说明
内容摘要
这篇文章主要为大家详细介绍了python之pytorch中[..., 0]的用法说明,具有一定的参考价值,可以用来参考一下。
文章正文
这篇文章主要为大家详细介绍了python之pytorch中[..., 0]的用法说明,具有一定的参考价值,可以用来参考一下。
在看程序的时候看到了x[…, 0]的语句不是很理解,后来自己做实验略微了解,以此记录方便自己查看。
代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 | <code> 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, in IndexError: index 2 is out of bounds for dimension 3 with size 2</code> |
pytorch中[..., 0]的用法说明
代码如下:
1 2 3 4 5 6 7 8 9 10 | <code> print (b[0,…]) tensor([[[10., 2.], [ 4., 5.], [ 7., 8.]], [[ 1., 2.], [ 4., 5.], [ 7., 8.]]]) print (b[0,…].size()) (2, 3, 2)</code> |
pytorch中[..., 0]的用法说明
代码如下:
1 2 3 4 5 6 | <code> print (b[0,…,0].size()) (2, 3) print (b[0,…,0]) tensor([[10., 4., 7.], [ 1., 4., 7.]])</code> |
pytorch中[..., 0]的用法说明
[…, 0]表示抽取tensor b的第4根轴上的第一列数字组成tensor,[0, …]表示抽取tensor b的第一根轴上的第一列数字组成tensor,[0, …, 0]表示抽取b的第一根和第四根轴上的第一列数字组成tensor。
还发现一个现象
代码如下:
1 2 3 4 5 6 7 8 | <code> print (b[…,0:]) tensor([[[[10., 2.], [ 4., 5.], [ 7., 8.]], [[ 1., 2.], [ 4., 5.], [ 7., 8.]]]])</code> |
pytorch中[..., 0]的用法说明
代码如下:
1 2 3 4 5 6 7 8 | <code> print (b[…,1:]) tensor([[[[2.], [5.], [8.]], [[2.], [5.], [8.]]]])</code> |
pytorch中[..., 0]的用法说明
代码如下:
1 2 3 | <code> print (b[…,2:]) tensor([], size=(1, 2, 3, 0))</code> |
pytorch中[..., 0]的用法说明
补充:PyTorch中[..., 0]的使用案例
1. 示例1
代码如下:
1 2 3 4 5 6 | <code> import torch a = torch.rand((17, 24, 8)) b = a[..., 0] c = a[:, :, 0] print (b == c)</code> |
pytorch中[..., 0]的用法说明
结果为True
2. 示例2
代码如下:
1 2 3 4 5 6 | <code> import torch a = torch.rand((64, 17, 24, 8)) b = a[..., 0] c = a[:, :, :, 0] print (b == c)</code> |
pytorch中[..., 0]的用法说明
结果为True
3. 结论
可以看出[…, 0]相当于[:, :, … :, 0]
以上为个人经验,希望能给大家一个参考,也希望大家多多支持php教程。
注:关于python之pytorch中[..., 0]的用法说明的内容就先介绍到这里,更多相关文章的可以留意
代码注释