cat和stack

在PyTorch中,cat和stack函数用于处理张量(tensors)的操作,但它们的效果是有区别的。

  • torch.cat用于连接多个张量,可以在一个已有的维度上进行连接,需要保证其他维度大小相同。

  • torch.stack用于在新的维度上堆叠多个张量,要求所有输入张量的形状必须一致。

    1. torch.cat:
      torch.cat函数用于沿指定维度连接多个张量。它将多个张量按照指定的维度拼接在一起,从而创建一个更大的张量。所有的输入张量在除了指定的拼接维度之外的其他维度上,都必须具有相同的大小
import torch

tensor1 = torch.tensor([[1, 2], [3, 4]])
tensor2 = torch.tensor([[5, 6]])

result_tensor = torch.cat((tensor1, tensor2), dim=0)
# 结果将是 tensor([[1, 2],
#                 [3, 4],
#                 [5, 6]])

    1. torch.stack:
      torch.stack函数用于在新的维度上堆叠多个张量。它会创建一个新的张量,新的维度是用户指定的。所有输入张量的形状必须一致。
import torch

tensor1 = torch.tensor([1, 2])
tensor2 = torch.tensor([3, 4])

result_tensor = torch.stack((tensor1, tensor2), dim=0)
# 结果将是 tensor([[1, 2],
#                 [3, 4]])

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值