Hi, for Pytorch 0.4, it introduces a new scalar torch.tensor()
with dim
0.
I feel confused since all the function of scalar tensor can be replaced by dim=1
Tensor(1)
.
Why need another new type making more complex for the API?
When you index into a vector, you get a scalar. So scalar support is natural. In fact, not having it is a more complex API because it makes it a special case of indexing.
1 Like
Is there a way to create a scalar other than indexing? Currently I am doing this:
scalar = torch.Tensor([0])[0]
A bit weird, I would say.
scalar = torch.tensor(0)
Nice. I found a problem though:
x = torch.tensor(0)
x
Out[26]: tensor(0)
x += 3.2
x
Out[28]: tensor(3)
x = torch.tensor(0, dtype=torch.float32)
x += 3.2
x
Out[31]: tensor(3.2000)
Isn’t the default dtype supposed to be torch.float32
?
The type is inferred from the data you passed.
Try x = torch.tensor(0.)
.
3 Likes