PyTorch中permute的基本用法示例

作者:York1996 时间:2022-04-22 01:14:01 

permute(dims)

将tensor的维度换位。

参数:参数是一系列的整数,代表原来张量的维度。比如三维就有0,1,2这些dimension。

例:

import torch
import numpy    as np

a=np.array([[[1,2,3],[4,5,6]]])

unpermuted=torch.tensor(a)
print(unpermuted.size())  #  ——>  torch.Size([1, 2, 3])

permuted=unpermuted.permute(2,0,1)
print(permuted.size())     #  ——>  torch.Size([3, 1, 2])

 再比如图片img的size比如是(28,28,3)就可以利用img.permute(2,0,1)得到一个size为(3,28,28)的tensor。

利用这个函数permute(0,2,1)可以把Tensor([[[1,2,3],[4,5,6]]]) 转换成

tensor([[[1., 4.],
       [2., 5.],
       [3., 6.]]])

如果使用view,可以得到

tensor([[[1., 2.],
        [3., 4.],
        [5., 6.]]])

关于view的用法:参见PyTorch中view的用法 

附:permute(多维数组,[维数的组合])

比如:

a=rand(2,3,4);  %这是一个三维数组,各维的长度分别为:2,3,4

%现在交换第一维和第二维:

permute(A,[2,1,3])  %变成3*2*4的矩阵

import torch
import numpy    as np

a=np.array([[[1,2,3],[4,5,6]]])

unpermuted=torch.tensor(a)
print(unpermuted.size())  #  ——>  torch.Size([1, 2, 3])

tensor([[[1., 4.],
       [2., 5.],
       [3., 6.]]])

permuted=unpermuted.permute(2,0,1)
print(permuted.size())     #  ——>  torch.Size([3, 1, 2])

tensor([[[1., 2.],
        [3., 4.],
        [5., 6.]]])

来源:https://blog.csdn.net/york1996/article/details/81876886

标签:pytorch,permute,函数
0
投稿

猜你喜欢

  • swfupload上传使用代码说明ASP版

    2011-11-27 09:34:32
  • 彻底删除thinkphp3.1案例blog标签的方法

    2023-11-21 12:01:01
  • Transact_SQL小手册,适合初学者

    2008-08-25 19:40:00
  • 详解python上传文件和字符到PHP服务器

    2023-10-15 19:02:12
  • Python实现统计文本中的字符数量

    2021-01-28 00:27:04
  • python 实时遍历日志文件

    2021-03-30 09:26:20
  • Python编程使用matplotlib绘制动态圆锥曲线示例

    2021-08-30 03:38:18
  • python matplotlib绘图,修改坐标轴刻度为文字的实例

    2023-09-29 12:27:57
  • python应用之如何使用Python发送通知到微信

    2022-03-04 01:59:55
  • ASP和MYSQL开发网站的注意事项

    2009-08-21 13:23:00
  • 浅谈Scrapy框架普通反爬虫机制的应对策略

    2023-07-14 17:11:40
  • 巧用CSS滤镜做图案文字

    2011-04-29 14:06:00
  • JavaScript的事件代理比你想的要简单

    2009-04-27 12:40:00
  • 如何正确显示模式对话框showModalDialog中的中文?

    2010-06-28 18:24:00
  • python 字典有序并写入json文件过程解析

    2021-08-21 21:12:01
  • python如何使用jt400.jar包代码实例

    2021-05-07 03:50:46
  • Python Django框架介绍之模板标签及模板的继承

    2021-11-05 01:36:56
  • pyqt4教程之messagebox使用示例分享

    2023-11-06 08:09:03
  • OpenCV-Python实现油画效果的实例

    2022-03-26 09:16:37
  • js三维正方体(兼容ie/ff)

    2008-04-12 14:38:00
  • asp之家 网络编程 m.aspxhome.com