Как сохранить тензорные атрибуты Pytorch на диск? - PullRequest
0 голосов
/ 20 февраля 2020

Я использовал setattr, чтобы сохранить некоторую информацию с помощью тензора Pytorch, который можно получить, как и ожидалось:

import torch
before_write = torch.Tensor()
setattr(before_write, "features", "my_features")
print(before_write.features)
> 'my_features'

Неожиданно, когда я записываю тензор на диск, а затем снова читаю его обратно , функции исчезли:

torch.save(before_write, "~/my_tensor")
after_write = torch.load("~/my_tensor")
print(after_write.features)
> AttributeError: 'Tensor' object has no attribute 'features'

Почему атрибут теряется при записи тензора на диск? Это ожидаемое поведение? Будет ли обходной путь для сохранения объектов вместе с тензором?

Примечание: используя пустой класс Python и записывая его с помощью pickle, действительно сохраняет атрибуты.

...