Pytorch 中的 permute() 函数

Posted 怎样才能回到过去

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Pytorch 中的 permute() 函数相关的知识,希望对你有一定的参考价值。

作用

交换 tensor 中的维度

用法

将对应维度的序号交换就会交换对应的维度

示例

import torch

a = torch.rand(2, 3, 4)
print(a)
print(a.shape)

# 将第一维和第二维进行交换, 第零维不动
b = a.permute(0, 2, 1)
print(b)
print(b.shape)

>>tensor([[[0.1135, 0.1757, 0.4028, 0.4548],
         [0.4652, 0.9984, 0.8759, 0.8631],
         [0.9614, 0.8819, 0.5834, 0.7719]],

        [[0.5982, 0.6116, 0.2923, 0.1457],
         [0.8527, 0.2529, 0.1352, 0.6022],
         [0.9118, 0.1686, 0.9508, 0.1597]]])
>>torch.Size([2, 3, 4])
>>tensor([[[0.1135, 0.4652, 0.9614],
         [0.1757, 0.9984, 0.8819],
         [0.4028, 0.8759, 0.5834],
         [0.4548, 0.8631, 0.7719]],

        [[0.5982, 0.8527, 0.9118],
         [0.6116, 0.2529, 0.1686],
         [0.2923, 0.1352, 0.9508],
         [0.1457, 0.6022, 0.1597]]])
>>torch.Size([2, 4, 3])

以上是关于Pytorch 中的 permute() 函数的主要内容,如果未能解决你的问题,请参考以下文章

pytorch 中的viewreshapepermutetranspose

pytorch 中的viewreshapepermutetranspose

PyTorch 中 tensor.permute 和 tensor.view 的区别?

如何实现比 PyTorch 快 6 倍的 Permute/Transpose 算子?

如何实现比PyTorch快6倍的Permute/Transpose算子?

pytorch对象在保存图像时对于数组来说太深了