gpt4 book ai didi

pytorch - 如何在 PyTorch 中的特定新维度中重复张量

转载 作者:行者123 更新时间:2023-12-03 15:23:30 25 4
gpt4 key购买 nike

如果我有一个形状为 A 的张量 [M, N]
我想重复张量 K 次,以便结果 B 的形状为 [M, K, N]并且每个切片 B[:, k, :] 应该具有与 A 相同的数据。
这是没有 for 循环的最佳实践。K 可能在其他维度。
torch.repeat_interleave()tensor.repeat() 似乎不起作用。或者我以错误的方式使用它。

最佳答案

tensor.repeat 应该适合您的需要,但您需要先插入一个单一维度。为此,我们可以使用 tensor.reshape tensor.unsqueeze 。由于 unsqueeze 专门定义为插入单一维度,我们将使用它。

B = A.unsqueeze(1).repeat(1, K, 1)

代码说明 A.unsqueeze(1)A[M, N] 变为 [M, 1, N].repeat(1, K, 1) 次 1343141 次 18 次 18 次 23 次 18 次 13435141 次 18 次 18 次 18。

关于pytorch - 如何在 PyTorch 中的特定新维度中重复张量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57896357/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com