gpt4 book ai didi

pytorch - 如何在 Pytorch 中对批处理中的每个矩阵进行转置?

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

假设我有 4 批 5x3 矩阵。所以这些张量的尺寸是 4x5x3。如何对每个批处理中的每个矩阵进行转置。那么将其转换为 4x3x5 吗?

最佳答案

出于性能考虑,我将在这里放弃一些基准测试。使用OP答案中提出的相同张量。

In[2]: import torch
In[3]: x = torch.randn(2, 3, 5)
In[4]: x.size()
Out[4]: torch.Size([2, 3, 5])
In[5]: %timeit x.permute(1, 0, 2)
1.03 µs ± 41.7 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
In[6]: %timeit torch.transpose(x, 0, 1)
892 ns ± 9.61 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
In[7]: torch.transpose(x, 0, 1).equal(x.permute(1, 0, 2))
Out[7]: True

很明显torch.transpose速度更快,因此建议尽可能使用它。

关于pytorch - 如何在 Pytorch 中对批处理中的每个矩阵进行转置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57512113/

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