0

Все еще полезен .data в PyTorch?

26

Я новичок в PyTorch. Я прочитал много кода, который активно использует член тензора <code>.data</code>. Однако, когда я ищу <code>.data</code> в официальной документации и Google, то нахожу очень мало информации. Я предполагаю, что <code>.data</code> содержит данные в тензоре, но не совсем понимаю, когда мы его используем, а когда нет. Можете объяснить, в чем его назначение и в каких ситуациях его следует применять?

1 ответ(ов)

0

С версии PyTorch 0.4.0 и по крайней мере до версии 1.7.1 вы можете получить содержимое тензора torch.Tensor, используя атрибут .data.

Предположим, у вас есть тензор point = torch.Tensor(size=(1,2,)); point.requires_grad_(True);

В этом случае:

  1. point.data будет тензором, который разделяет те же данные с point.

Вы можете проверить это с помощью: point.data_ptr(); point.data.data_ptr();

  1. Он не связан с историей вычислений тензора point.data, имеет requires_grad=False, даже если у point установлено requires_grad=True.
  2. Любые изменения в point.data не будут отслеживаться autograd.

Документация:

https://github.com/pytorch/pytorch/releases/tag/v0.4.0

Чтобы ответить на вопрос, пожалуйста, войдите или зарегистрируйтесь