PyTorch के Tensors की एक सूची है और मैं इसे सरणी में बदलना चाहता हूं लेकिन इसे त्रुटि के साथ उठाया गया है:

'सूची' वस्तु में कोई विशेषता नहीं है 'सीपीयू'

मैं इसे सरणी में कैसे परिवर्तित कर सकता हूं?

import torch
result = []
for i in range(3):
    x = torch.randn((3, 4, 5))
    result.append(x)
a = result.cpu().detach().numpy()
1
Aras 10 नवम्बर 2020, 18:17

1 उत्तर

सबसे बढ़िया उत्तर

आप उन्हें ढेर कर सकते हैं और NumPy सरणी में बदल सकते हैं:

import torch
result = [torch.randn((3, 4, 5)) for i in range(3)]
a = torch.stack(result).cpu().detach().numpy()

इस मामले में, a का आकार निम्न होगा: [3, 3, 4, 5]

यदि आप उन्हें [3*3, 4, 5] सरणी में जोड़ना चाहते हैं, तो:

a = torch.cat(result).cpu().detach().numpy()
2
Berriel 10 नवम्बर 2020, 15:21