pytorch 调整某一维度数据顺序的方法

yipeiwu_com7年前Python基础

在pytorch中,Tensor是以引用的形式存在的,故而并不能直接像python交换数据那样

a = torch.Tensor(3,4)
a[0],a[1] = a[1],a[0]

# 这会导致a的结果为a=(a[1],a[1],a[2])
# 而非预期的(a[1],a[0],a[2])

这是因为引用赋值导致的,在交换过程,如下所示,当b的值赋值与a的时候,因为tmp指针与a是同一变量的不同名,故而tmp的内容也会变为b。

# 交换a,b
a,b = b,a
# 等价于
tmp = a
a = b #此时,tmp = a= b
b = tmp

故而在我们通过另外一种方式来对其进行交换,通过对下标索引的方式,对其进行交换

a = torch.Tensor(3,4)
index = [1,0,2]
a = a[index]

以上这篇pytorch 调整某一维度数据顺序的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python flask实现分页的示例代码

结合mysql数据库查询,实现分页效果 @user.route("/user_list",methods=['POST','GET']) def user_list(): p =...

django 自定义filter 判断if var in list的例子

1. 需求: 用户答题练习,当用户获取所有题目的同时,需要判断用户是否已经做过该题目,如果做过,需要render的时候添加一个“回顾”按钮。 2. 实现 a. 查询用户做过题目的id...

python实现淘宝购物系统

本文实例为大家分享了python淘宝购物系统的具体代码,供大家参考,具体内容如下 代码如下: #刚创建账户所拥有的钱 money = 0 #定义商品列表 goods_list =...

python os模块简单应用示例

本文实例讲述了python os模块简单应用。分享给大家供大家参考,具体如下: 举例中的目录形式如下所示: In [36]: pwd Out[36]: '/home/python/D...

ubuntu中配置pyqt4环境教程

ubuntu中配置pyqt4环境教程

相机校准前需要设置wifi的mac地址和切换校准模式,之前写的命令行工具,去了工厂发现使用可能有障碍,就做了个小应用程序,用了两种方法,先看一下第一种(不想选择的) 使用Tkinter做...