Невозможно создать тензор с помощью torch.Tensor - PullRequest
0 голосов
/ 03 июля 2018

Я пытался создать тензор, как показано ниже.

import torch
t = torch.tensor(2,3)

я получил следующую ошибку.

TypeError Traceback (самый последний вызов последний) в () ----> 1 a = torch.tensor (2,3)

TypeError: тензор () принимает 1 позиционный аргумент, но 2 были даны

Итак, я попробовал следующее

import torch
t = torch.Tensor(2,3)
# No error while creating the tensor
# When i print i get an error
print(t)

я получаю следующую ошибку

RuntimeError Traceback (самый последний вызов последний) в () ----> 1 отпечаток (а)

D: \ softwares \ anaconda \ lib \ site-packages \ torch \ensor.py в магнезии (Я) 55 # символов для замены символов Юникода на. 56 if sys.version_info> (3,): ---> 57 вернуть torch._tensor_str._str (самостоятельно) 58 еще: 59 if hasattr (sys.stdout, 'encoding'):

D: \ softwares \ anaconda \ lib \ site-packages \ torch_tensor_str.py в _str (Я) 216 суффикс = ', dtype =' + str (self.dtype) + суффикс 217 -> 218 футов, масштаб, sz = _number_format (self) 219 если масштаб! = 1: 220 префикс = префикс + SCALE_FORMAT.format (масштаб) + '' * отступ

D: \ softwares \ anaconda \ lib \ site-packages \ torch_tensor_str.py в _number_format (тензор, min_sz) 94 # ТОДО: использовать fmod? 95 для значения в тензоре: ---> 96, если значение! = Math.ceil (value.item ()): 97 int_mode = False 98 перерыв

RuntimeError: переполнение при длительной распаковке

Но, согласно этой ТАКОЙ Посте , он смог создать тензор. Я что-то здесь упускаю? Кроме того, почему я смог создать тензор с Tensor (заглавная T), а не с tensor (маленькая t)

Please look at the error.

1 Ответ

0 голосов
/ 03 июля 2018

torch.tensor() ожидает, что последовательность или array_like создадут тензор, тогда как torch.Tensor() класс может создать тензор только с информацией о форме.

Вот подпись torch.tensor():

1010 * строка документации *:
тензор (данные, dtype = нет, устройство = нет, require_grad = False) -> Тензор

Создает тензор с помощью: attr: data.

Args
data (array_like): исходные данные для тензора. Может быть список, кортеж, NumPy ndarray, скаляр и другие типы.

dtype (: class: torch.dtype, необязательно): требуемый тип данных возвращаемого тензора.


Относительно RuntimeError: я не могу воспроизвести ошибку в дистрибутивах Linux. Печать тензора прекрасно работает с терминала ipython.

ipython print tensor


При более внимательном рассмотрении ошибки это кажется проблемой только в ОС Windows. Как упоминалось в комментариях, взгляните на Issues / 6339: Ошибка при печати тензоров, содержащих большие значения

...