pytorch中[..., 0]的用法说明


Posted in Python onMay 20, 2021

在看程序的时候看到了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, in
IndexError: 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 torch
a = torch.rand((17, 24, 8))
b = a[..., 0]
c = a[:, :, 0]
print(b == c)

结果为True

2. 示例2

import torch
a = torch.rand((64, 17, 24, 8))
b = a[..., 0]
c = a[:, :, :, 0]
print(b == c)

结果为True

3. 结论

可以看出[…, 0]相当于[:, :, … :, 0]

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python文件去除注释的方法
May 25 Python
Python批量修改文本文件内容的方法
Apr 29 Python
Python实现二分查找与bisect模块详解
Jan 13 Python
python正则表达式的使用
Jun 12 Python
Python使用matplotlib实现的图像读取、切割裁剪功能示例
Apr 28 Python
python递归函数绘制分形树的方法
Jun 22 Python
opencv python 傅里叶变换的使用
Jul 21 Python
python实现公司年会抽奖程序
Jan 22 Python
pandas基于时间序列的固定时间间隔求均值的方法
Jul 04 Python
解决django同步数据库的时候app models表没有成功创建的问题
Aug 09 Python
使用Python刷淘宝喵币(低阶入门版)
Oct 30 Python
python 实现字符串下标的输出功能
Feb 13 Python
浅谈pytorch中stack和cat的及to_tensor的坑
May 20 #Python
pytorch实现手写数字图片识别
解决python3安装pandas出错的问题
May 20 #Python
python 如何在list中找Topk的数值和索引
May 20 #Python
Requests什么的通通爬不了的Python超强反爬虫方案!
python使用glob检索文件的操作
python opencv通过按键采集图片源码
You might like
图象函数中的中文显示
2006/10/09 PHP
解决php使用异步调用获取数据时出现(错误c00ce56e导致此项操作无法完成)
2013/07/03 PHP
Javascript 函数对象的多重身份
2009/06/28 Javascript
一个简单的jQuery计算器实现了连续计算功能
2014/07/21 Javascript
JavaScript的History API使搜索引擎抓取AJAX内容
2015/12/07 Javascript
nodejs 的 session 简单使用
2016/06/06 NodeJs
极简主义法编写JavaScript类
2017/11/02 Javascript
Vue 使用 Mint UI 实现左滑删除效果CellSwipe
2018/04/27 Javascript
在小程序中使用腾讯视频插件播放教程视频的方法
2018/07/10 Javascript
详解解决Vue相同路由参数不同不会刷新的问题
2018/10/12 Javascript
JavaScript禁用右键单击优缺点分析
2019/01/20 Javascript
webpack4.x下babel的安装、配置及使用详解
2019/03/07 Javascript
详解JSON和JSONP劫持以及解决方法
2019/03/08 Javascript
微信小程序官方动态自定义底部tabBar的例子
2019/09/04 Javascript
python下实现二叉堆以及堆排序的示例
2017/09/29 Python
Python在不同目录下导入模块的实现方法
2017/10/27 Python
解决python爬虫中有中文的url问题
2018/05/11 Python
python实现一个简单的udp通信的示例代码
2019/02/01 Python
基于Python实现拆分和合并GIF动态图
2019/10/22 Python
python科学计算之narray对象用法
2019/11/25 Python
基于python爬取链家二手房信息代码示例
2020/10/21 Python
分享一个python的aes加密代码
2020/12/22 Python
基于CSS3实现的漂亮Menu菜单效果代码
2015/09/10 HTML / CSS
HTML5在canvas中绘制复杂形状附效果截图
2014/06/23 HTML / CSS
土耳其风格手工珠宝:Ottoman Hands
2019/07/26 全球购物
工商管理系学生的自我评价分享
2013/11/29 职场文书
服务承诺书范文
2014/05/19 职场文书
美术兴趣小组活动总结
2014/07/07 职场文书
交通事故赔偿协议书怎么写
2014/10/04 职场文书
2014全年工作总结
2014/11/27 职场文书
2014年妇幼卫生工作总结
2014/12/09 职场文书
2015年保安个人工作总结
2015/04/02 职场文书
2015年村党支部工作总结
2015/04/30 职场文书
家长会开场白和结束语
2015/05/29 职场文书
python spilt()分隔字符串的实现示例
2021/05/21 Python
写一个Python脚本下载哔哩哔哩舞蹈区的所有视频
2021/05/31 Python