PyTorch: разница между типом (a), a.type, a.type()

#pytorch

#pytorch

Вопрос:

предположим, что a является тензором, тогда в чем разница между:

тип (a)

a.type

a.type()

Я не смог найти документ, отличающий их.

Комментарии:

1. кроме того, в чем разница между float и tensor . значение с плавающей точкой для dtype?

Ответ №1:

type это встроенный метод python.

  • Он вернет тип объекта. Нравится <class 'torch.Tensor'>

torch.Tensor.type ( x.type() ) — это встроенный метод pytorch.

  • Он вернет тип данных, хранящихся внутри тензора. torch.DoubleTensor нравится и т.д.

Редактировать:

И о x.type() vs x.type — когда вы пишете имя функции в круглых скобках x.type () , она фактически выполняет функцию и возвращает ее значение. Тогда как без круглых скобок x.type это просто ссылка на функцию.

Ответ №2:

 type(a) - returns the class type
a.type - returns built method type
a.type() - return the data type

>>> a = torch.Tensor()
>>> type(a)
<class 'torch.Tensor'>
>>> a.type
<built-in method type of Tensor object at 0x7f6a0acfc140>
>>> a.type()    
'torch.FloatTensor'