如何将PyTorch Tensor转换为python列表?
我当前的用例是将一个大小为[1, 2048, 1, 1]的张量转换为一个包含2048个元素的列表。
我的张量有浮点值。有没有一种解决方案可以同时处理int和其他可能的数据类型?
发布于 2018-12-23 21:01:03
使用Tensor.tolist()例如:
import torch >>> a= torch.randn(2,2) >>> a.tolist() [0.012766935862600803,0.5415473580360413,-0.08909505605697632,0.7729271650314331] >>> a0,0.tolist() 0.012766935862600803
要删除大小为1的所有尺寸,请使用a.squeeze().tolist()。
或者,如果除一个维度之外的所有维度的大小都是1 (或者您希望获得张量的每个元素的列表),则可以使用a.flatten().tolist()。
发布于 2021-03-27 17:21:35
列表的张量:
a_list = embeddings.tolist()要张量的列表:
a_tensor = torch.Tensor(a_list).cuda()发布于 2021-08-05 06:03:37
列表或字符串的#@pyorch张量
in[]
#bbox predictions
boxes = predictions[:, :4]
print(boxes)
out[]
tensor(54.97658) tensor(393.99637) tensor(225.55316) tensor(879.53503)
tensor(670.91669) tensor(400.35202) tensor(810.) tensor(878.34045)
tensor(219.87546) tensor(408.02075) tensor(346.14133) tensor(860.66687)
tensor(13.24882) tensor(217.30855) tensor(800.23413) tensor(737.75751)
tensor(0.12453) tensor(552.29401) tensor(76.41209) tensor(885.35455)
tensor(656.11823) tensor(625.61261) tensor(689.63586) tensor(713.37250)之后
in[]
boxes = boxes.tolist()
print(boxes)
out []
54.97657775878906 393.9963684082031 225.55316162109375 879.5350341796875
670.9166870117188 400.3520202636719 810.0 878.3404541015625
219.87545776367188 408.020751953125 346.1413269042969 860.6668701171875
13.24881649017334 217.3085479736328 800.234130859375 737.7575073242188
0.12453281879425049 552.2940063476562 76.4120864868164 885.3545532226562
656.1182250976562 625.6126098632812 689.6358642578125 713.3724975585938https://stackoverflow.com/questions/53903373
复制相似问题