Все еще полезен .data в PyTorch?
Я новичок в PyTorch. Я прочитал много кода, который активно использует член тензора <code>.data</code>. Однако, когда я ищу <code>.data</code> в официальной документации и Google, то нахожу очень мало информации. Я предполагаю, что <code>.data</code> содержит данные в тензоре, но не совсем понимаю, когда мы его используем, а когда нет. Можете объяснить, в чем его назначение и в каких ситуациях его следует применять?
1 ответ(ов)
С версии PyTorch 0.4.0 и по крайней мере до версии 1.7.1 вы можете получить содержимое тензора torch.Tensor, используя атрибут .data.
Предположим, у вас есть тензор point = torch.Tensor(size=(1,2,)); point.requires_grad_(True);
В этом случае:
point.dataбудет тензором, который разделяет те же данные сpoint.
Вы можете проверить это с помощью: point.data_ptr(); point.data.data_ptr();
- Он не связан с историей вычислений тензора
point.data, имеетrequires_grad=False, даже если уpointустановленоrequires_grad=True. - Любые изменения в
point.dataне будут отслеживаться autograd.
Документация:
Какую версию Python я установил?
Как проверить, использует ли PyTorch GPU?
Ошибка времени выполнения: ожидался скалярный тип Long, но найден Float
Как проверить, написан ли код на Python 2.7 или 3 и выше?
Как восстановить встроенную функцию, которую я случайно перезаписал?