pytorch的入门操作(1)

本文详细介绍了PyTorch中的张量概念,包括0阶到高阶张量的定义,以及如何通过Python列表、NumPy数组和PyTorch API创建张量。还列举了多种创建特定值张量的方法,如全零、全一、随机值等。此外,讨论了张量的常用操作,如获取数据、转换为NumPy数组、形状操作、转置等,帮助读者深入理解PyTorch张量的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.Tensor

a:各种数值数据都可已称为张量

b:常数:scaler:0阶张量

c:向量:vector:1阶张量

d:矩阵:matrix:2阶张量

e:3阶张量

2.张量的创建方式

 1.使用python中的列表或者序列来创建tensor

torch.tensor([[1., -1.], [1., -1.]])

2.使用numpy中的数组创建tensor

 torch.tensor(np.array([[1, 2, 3], [4, 5, 6]]))

3.使用torch的api创建tensor

(1)torch.empty(3, 4)创建三行四列的空的tensor,会用无用数据进行填充

(2)torch.ones([3, 4])创建三行四列的全为1的tensor

(3)torch.zeros([3, 4])创建三行四列的全为0的tensor

(4)torch.rand([3, 4])创建三行四列的随机值tensor 随机的去见识[0, 1)

(5)torch.randint(low=0, high=10,size=[3, 4])创建三行四列随机整数的tensor,随机值的区间是[low, high)   random + int  

(6)torch.randn([3, 4])创建三行四列的随机数的tensor,随机值的分布式均值为0,方差为1

3.pytorch中tensor的常用方法

张量的方法和属性

 (1)获取torch中的数据(当tensor中只有一个元素可用时):torch.item()  # 用的非常多

        

 这里的t1=torch.Tensor([[[1]]]) 表示三阶 有几对中括号表示几阶

 两个元素的就会报错

(2)转化为numpy数组

直接变量名加.numpy()就行了  直接把tensor 转成np array

(3)获取形状:torch.size()  #注意和np的shape不同 要加()

          

 

直接变量名加.size()  如果要获取某一维度上的形状 t2.size(-1)获取t2最后一个维度上的形状

(4)形状改变:torch.view((3, 4)) 类似numpy中的reshape 是一种浅拷贝,仅仅是形状发生变化

         乘积要想用 三行四列不能转化成三行六列 t2.view([2, -1]) -1表示根据前面数决定后面的数值 相当于自己跟你算 

        

 (5)获取维度torch.dim()   获取阶数 常数为0 向量1 矩阵2

         

(6)获取最大值最小值:tensor.max() tensor.min()

 (7)转置:tensor.t()   二维的时候 tansform就是转置

t1.transpose(0, 1) 交换 第一维度和第二维度的值 

t1.permute(1, 2, 0) 把原来的位置转换成现在的位置(维度变化)

         

怎么理解转置

t3 = torch.Tensor(np.arange(24).reshape(3,2, 4)) 怎么理解 3 2 4 三块 每块 两行四列

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Lyttonkeepgoing

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值