ptorch.cat理解

torch.cat

将两个张量进行拼接
主要是对dim取值的一个理解

a = torch.rand(2,3)
b = torch.rand(1,3)
c = torch.cat((a,b),dim=0)

当张量为二维的时候,dim=0表示,dim=1表示
因此上述代码中行可以不一样,但是列数必须相同,否则的话无法进行拼接。
a=([[0.3956, 0.4206, 0.3445],
[0.1258, 0.7269, 0.4539]])

b= ([[0.6137, 0.1521, 0.1562]])

c= ([[0.3956, 0.4206, 0.3445],
[0.1258, 0.7269, 0.4539],
[0.6137, 0.1521, 0.1562]])

当张量为三的时候,

import torch
a = torch.rand(2,2,3)
print("a=",a)
b = torch.rand(1,2,3)
print("b=",b)
c = torch.cat((a,b),dim=0)
print("c=",c)

a= tensor([[[0.3859, 0.4549, 0.3441],
[0.7041, 0.1164, 0.5377]],

[[0.2150, 0.9613, 0.4888],
[0.9834, 0.8159, 0.9237]]])

b= tensor([[[0.4117, 0.8209, 0.5537],
[0.1129, 0.0271, 0.0679]]])
c= tensor([[[0.3859, 0.4549, 0.3441],
[0.7041, 0.1164, 0.5377]],

[[0.2150, 0.9613, 0.4888],
[0.9834, 0.8159, 0.9237]],

[[0.4117, 0.8209, 0.5537],
[0.1129, 0.0271, 0.0679]]])

其中dim=0,表示的为batch,也就是上述索引rand=0,dim=1表示行,dim=2表示列,因此当dim表示多少的时候,只有当前索引位置的数值可以不同,其他地方的索引值必须相同。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值