python - 按自定义顺序重塑张量(PyTorch)
问题描述
我有以下张量
t = torch.tensor([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 ,15, 16, 17])
我想通过以下方式重塑它:
t_reshape = torch.tensor([[0, 1, 2, 6, 7, 8, 12, 13, 14],
[3, 4, 5, 9, 10, 11, 15, 16, 17]])
有没有办法以这种方式有效地重塑张量?
解决方案
您可以通过重新整形、转置和重新整形来实现这一点:
>>> t.reshape(3,2,-1).transpose(0,1).reshape(2,-1)
tensor([[ 0, 1, 2, 6, 7, 8, 12, 13, 14],
[ 3, 4, 5, 9, 10, 11, 15, 16, 17]])
推荐阅读
- git - 如何阻止 git 跟踪文件夹?
- sql - 如何将新的 CSV 数据插入现有表(Microsoft SQL Server)
- html - webkit-动画和链接问题
- generics - 具有不同对类型的函数重载抛出
- java - 有没有办法在浏览器发送的tomcat过滤器中获取所有x509证书属性?
- python - Approve Button in Mail should approve the record? Odoo v10
- ios - Firebase pod 是在 iOS 上使用 Crashlytics 的必要条件吗?
- python - Min and Max values in n-dimension stack Python
- python - thred django-main-thread 中的异常:
- excel - 如果今天修改了txt文件,Excel VBA退出子