PyTorch学习笔记(1)张量
程序员文章站
2022-03-21 19:46:30
...
tensor
torch.tensor(data, # 数据 可以使list numpy
dtype=None, # 数据类型 默认与data一致
device=None, # 所在设备 cuda / cpu
requires_grad=False, # 是否需要梯度
pin_memory = False ,# 是否存于锁页内存)
flag = True
if flag:
arr = np.ones((3,3))
print('ndarray的数据类型:',arr.dtype)
t = torch.tensor(arr,device='cuda')
print(t)
张量拼接与切分
torch.cat()
将张量按维度dim 进行拼接 不会扩展张量的维度
tensors 张量序列
dim 要拼接的维度
torch.stack()
在新创建的维度dim 上进行拼接 会扩展张量的维度
tensors 张量序列
dim 要拼接的维度
flag = True
if flag:
t = torch.ones((2,3))
t_stack = torch.stack([t,t,t],dim=0)
print('\n t_stack:{} shape:{}'.format(t_stack,t_stack.shape))
torch.chunk()
将张量按维度dim 进行平均切分
返回值 张量列表
不能整除 最后一份张量小于其他张量
input 要切分的张量
chunks 要切分的份数
dim 要切分的维度
flag = True
if flag:
a = torch.ones((2,5))
list_of_tensors = torch.chunk(a,dim=1,chunks=2)
for idx ,t in enumerate(list_of_tensors):
print('第{}个张量:{},shape is {}'.format(idx+1,t,t.shape))
torch.split()
将张量按维度dim 进行切分
返回值 张量列表
tensor 要切分的张量
split_size_or_sections 为int时,表示每一份的长度
为list时 按list元素切分
dim 要切分的维度
flag = True
if flag:
t = torch.ones((2,5))
list_of_tensors = torch.split(t,2,dim=1)
for idx , t in enumerate(list_of_tensors):
print('第{}个张量:{},shape is {}'.format(idx + 1, t, t.shape))
torch.index_select()
在维度dim上 按index索引数据
返回值 依index 索引数据拼接的张量
input 要索引的张量
dim 要索引的维度
index 要索引数据的序号
flag = True
if flag:
t = torch.randint(0, 9, size=(3, 3))
idx = torch.tensor([0, 2], dtype=torch.long) # float
t_select = torch.index_select(t, dim=0, index=idx)
print("t:\n{}\nt_select:\n{}".format(t, t_select))
if flag:
t = torch.randint(0, 9, size=(3, 3))
mask = t.le(5) # ge is mean greater than or equal/ gt: greater than le lt
t_select = torch.masked_select(t, mask)
print("t:\n{}\nmask:\n{}\nt_select:\n{} ".format(t, mask, t_select))
上一篇: 2.2 数据操作
下一篇: [Pytorch]安装小记
推荐阅读
-
Android学习笔记(Android Studio) 4-2-1~2 Fragment详解(一、二)(不可不会的Activity和Fragment)
-
Android学习笔记(Android Studio) 4-1-2 Activity的生命周期(不可不会的Activity和Fragment)
-
Android学习笔记(Android Studio) 7-1 SharedPreferences 轻量数据存储(数据存储)
-
PowerShell 学习笔记 - 1 PS Core 基础
-
PowerShell 学习笔记 - 1 PS Core 基础
-
PHP学习笔记1-常量,函数,php学习笔记1-常量
-
Apache Mina 学习笔记(1) - 入门
-
学习笔记1 - 树懒的追求
-
HTML+CSS学习笔记(1)
-
spring框架学习笔记1:搭建测试