首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将torch.tensor矩阵转换为较大的张量?

如何将torch.tensor矩阵转换为较大的张量?
EN

Stack Overflow用户
提问于 2020-05-13 22:44:12
回答 2查看 427关注 0票数 0

我遇到一个将torch.tensor的python矩阵转换为torch.tensor的问题。

例如,M是一个(n,m)矩阵,每个元素M[i][j]都是一个具有相同大小(p, q, r, ...)的torch.tensor。如何将列表M的python列表转换为具有(n,m,p,q,r,...)大小的torch.tensor。

代码语言:javascript
复制
M = []
for i in range(5):
    row = []
    for j in range(10):
        row.append(torch.rand(3,4))
    M.append(row)

如何将上面的M转换为具有(5,10,3,4)大小的torch.tensor。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-05-13 23:04:58

尝试torch.stack()在第一个维度上堆叠张量列表。

代码语言:javascript
复制
import torch

M = []
for i in range(5):
    row = []
    for j in range(10):
        row.append(torch.rand(3,4))
    row = torch.stack(row)
    M.append(row)
M = torch.stack(M)

print(M.size())
# torch.Size([5, 10, 3, 4])
票数 1
EN

Stack Overflow用户

发布于 2020-05-13 22:56:30

尝尝这个。

代码语言:javascript
复制
ref = np.arange(3*4*5).reshape(3,4,5) # numpy array
values = [ref.copy()+i for i in range(6)] # List of numpy arrays
b = torch.from_numpy(np.array(values)) # torch-array from List of numpy arrays

参考文献

  1. 将NumPy阵列转换为火炬张量
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61786172

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档