torch x = x.view(-1, ...)理解

参考链接: https://blog.csdn.net/scut_salmon/article/details/82391320

在torch里面,view函数相当于numpy的reshape,来看几个例子:


 
 
  1. a = torch.arange( 1, 17) # a's shape is (16,)
  2. a.view( 4, 4) # output below
  3. tensor([[ 1, 2, 3, 4],
  4. [ 5, 6, 7, 8],
  5. [ 9, 10, 11, 12],
  6. [ 13, 14, 15, 16]])
  7. [ torch.FloatTensor of size 4x4]
  8. a.view( 2, 2, 4) # output below
  9. tensor([[[ 1, 2, 3, 4],
  10. [ 5, 6, 7, 8]],
  11. [ [ 9, 10, 11, 12],
  12. [ 13, 14, 15, 16]]])
  13. [ torch.FloatTensor of size 2x2x4]

在函数的参数中经常可以看到-1例如x.view(-1, 4)

这里-1表示一个不确定的数,就是你如果不确定你想要reshape成几行,但是你很肯定要reshape成4列,那不确定的地方就可以写成-1

例如一个长度的16向量x,

x.view(-1, 4)等价于x.view(4, 4)

x.view(-1, 2)等价于x.view(8,2)

x.view(2, -1)等价于x.view(2,8)

x.view(4, -1)等价于x.view(4,4)

以此类推

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值