Переполнение при распаковке долго - Pytorch
Я запускаю следующий код
import torch
from __future__ import print_function
x = torch.empty(5, 3)
print(x)
на машине с Ubuntu в режиме CPU, которая выдает мне следующую ошибку, что может быть причиной и как это исправить
x = torch.empty(5, 3)
----> print(x)
/usr/local/lib/python3.6/dist-packages/torch/tensor.py in __repr__(self)
55 # characters to replace unicode characters with.
56 if sys.version_info > (3,):
---> 57 return torch._tensor_str._str(self)
58 else:
59 if hasattr(sys.stdout, 'encoding'):
/usr/local/lib/python3.6/dist-packages/torch/_tensor_str.py in _str(self)
216 suffix = ', dtype=' + str(self.dtype) + suffix
217
--> 218 fmt, scale, sz = _number_format(self)
219 if scale != 1:
220 prefix = prefix + SCALE_FORMAT.format(scale) + ' ' * indent
/usr/local/lib/python3.6/dist-packages/torch/_tensor_str.py in _number_format(tensor, min_sz)
94 # TODO: use fmod?
95 for value in tensor:
---> 96 if value != math.ceil(value.item()):
97 int_mode = False
98 break
RuntimeError: Overflow when unpacking long
1 ответ
Решение
Поскольку torch.empty() предоставляет неинициализированную память, вы можете получить или не получить из нее большое значение. Пытаться
x = torch.rand(5, 3)
print(x)
это дало бы ответ.