pytorch学习笔记1-创建tensor(张量,多维数组)
Posted 友人A947
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pytorch学习笔记1-创建tensor(张量,多维数组)相关的知识,希望对你有一定的参考价值。
创建Tensor(张量,多维数组)
整体程序如下
import torch
"""
1.创建tensor(张量,多维数组)
"""
'1.1创建⼀个5x3的未初始化的 Tensor'
x = torch.empty(5, 3)
print(x)
'1.2创建⼀个5x3的随机初始化的 Tensor 范围(0,1)'
x = torch.rand(5, 3)
print(x)
'1.3创建⼀个5x3的long型全0的 Tensor'
x = torch.zeros(5, 3, dtype=torch.long)
print(x)
'1.4直接根据数据创建'
x = torch.tensor([5.5, 3])
print(x)
'''1.5还可以通过现有的 Tensor 来创建,此⽅法会默认᯿⽤输⼊ Tensor 的⼀些属性,例如数据类型,除⾮
⾃定义数据类型。'''
print(1.5)
x = x.new_ones(5, 3, dtype=torch.float64) # 返回的tensor默认具有相同的torch.dtype和torch.device
print(x)
x = torch.randn_like(x, dtype=torch.float) # 指定新的数据类型
print(x)
'1.6我们可以通过 shape 或者 size() 来获取 Tensor 的形状'
print(x.size())
print(x.shape)
'''
其他创建函数汇总
Tensor(*sizes) 基础构造函数
tensor(data,) 类似np.array的构造函数
ones(*sizes) 全1Tensor
zeros(*sizes) 全0Tensor
eye(*sizes) 对⻆线为1,其他为0
arange(s,e,step) 从s到e,步⻓为step
linspace(s,e,steps) 从s到e,均匀切分成steps份
rand/randn(*sizes) 均匀/标准分布
normal(mean,std)/uniform(from,to) 正态分布/均匀分布
randperm(m) 随机排列
'''
1.1创建⼀个5x3的未初始化的 Tensor
x = torch.empty(5, 3)
print(x)
1.2创建⼀个5x3的随机初始化的 Tensor 范围(0,1)
x = torch.rand(5, 3)
print(x)
1.3创建⼀个5x3的long型全0的 Tensor
x = torch.zeros(5, 3, dtype=torch.long)
print(x)
1.4直接根据数据创建
x = torch.tensor([5.5, 3])
print(x)
1.5还可以通过现有的 Tensor 来创建,此⽅法会默认᯿⽤输⼊ Tensor 的⼀些属性,例如数据类型,除⾮ ⾃定义数据类型。
x = x.new_ones(5, 3, dtype=torch.float64) # 返回的tensor默认具有相同的torch.dtype和torch.device
print(x)
x = torch.randn_like(x, dtype=torch.float) # 指定新的数据类型
print(x)
1.6我们可以通过 shape 或者 size() 来获取 Tensor 的形状
print(x.size())
print(x.shape)
1.7其他函数汇总
Tensor(*sizes) 基础构造函数 tensor(data,) 类似np.array的构造函数 ones(*sizes) 全1Tensor zeros(*sizes) 全0Tensor eye(*sizes) 对⻆线为1,其他为0 arange(s,e,step) 从s到e,步⻓为step linspace(s,e,steps) 从s到e,均匀切分成steps份 rand/randn(*sizes) 均匀/标准分布 normal(mean,std)/uniform(from,to) 正态分布/均匀分布 randperm(m) 随机排列
以上是关于pytorch学习笔记1-创建tensor(张量,多维数组)的主要内容,如果未能解决你的问题,请参考以下文章
Pytorch深度学习实战3-2:什么是张量?Tensor的创建与索引