print输出 pytorch_深度学习之Pytorch基础教程!

这些创建方法都可以在创建的时候指定数据类型dtype和存放device(cpu/gpu)。

1.2 操作

1.2.1 算术操作

在PyTorch中,同⼀种操作可能有很多种形式,下⾯面⽤用加法作为例子。

# 形式1:y = torch.rand(5,3)print(x+y)

# 形式2print(torch.add(x,y))# 还可以指定输出result = torch.empty(5, 3)torch.add(x, y, out=result)print(result)

# 形式3y.add_(x)print(y)

1.2.2 索引

我们还可以使⽤类似NumPy的索引操作来访问 Tensor 的一部分,需要注意的是:索引出来的结果与原数据共享内存,也即修改⼀个,另⼀个会跟着修改。

y = x[0,:]y += 1print(y)print(x[0,:]) # 观察x是否改变了

1.2.3 改变形状

注意 view 返回的新tensor与源tensor共享内存(其实是同⼀个tensor),也即更改其中的⼀个,另 外⼀个也会跟着改变。(顾名思义,view仅是改变了对这个张量的观察角度)

y = x.view(15)z = x.view(-1,5) # -1所指的维度可以根据其他维度的值推出来print(x.size,y.size,z.size)

x += 1print(x)print(y)

所以如果我们想返回⼀个真正新的副本(即不共享内存)该怎么办呢?Pytorch还提供了⼀ 个 reshape 可以改变形状,但是此函数并不能保证返回的是其拷贝,所以不推荐使用。推荐先 ⽤ clone 创造一个副本然后再使⽤ view 。

x_cp = x.clone.view(15)x -= 1print(x)print(x_cp)

另外⼀个常用的函数就是 item , 它可以将⼀个标量 Tensor 转换成⼀个Python

number:x = torch.randn(1)print(x)print(x.item)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值