pytorch 如何把Variable转换成numpy?

当我用pytorch,我不能把Variable转换成numpy。当我尝试用torch.Tensor或torch.FloatTensor,但都不行。那么我怎样才能解决这个问题呢?
已邀请:
匿名用户

匿名用户

赞同来自:

Variable不能转换为numpy,因为它们是保存操作历史的张量的包装器,numpy没有这些对象。您可以使用该变量检索变量所持有的张量。数据属性。然后,这个应该工作:var.data.numpy()。
匿名用户

匿名用户

赞同来自:

 (Variable(x).data).cpu().numpy()
匿名用户

匿名用户

赞同来自:

 
#!/usr/bin/python
# -*- coding: UTF-8 -*-

import torch
from torch.autograd import Variable

a = torch.FloatTensor([1,2,3,4])
b = Variable(a)
print b.data.numpy()

泡泡格尔

赞同来自:

可以用Variable(x).data.numpy()。
但是numpy不能转换成Variable。
Tensor和numpy可以自由转换,Variable是Tensor的一个wapper,Variable中的data就是Tensor,除此之外还包括grad(导数)和creator(操作历史)。

要回复问题请先登录注册