Python 这是创建PyTorch标量的方法吗?
我是PyTorch的新手,只是想确认一下下面的代码是否分别创建了值为1、2和3的标量Python 这是创建PyTorch标量的方法吗?,python,pytorch,Python,Pytorch,我是PyTorch的新手,只是想确认一下下面的代码是否分别创建了值为1、2和3的标量 import torch a = torch.tensor(1) b = torch.tensor(2) c = torch.tensor(3) 谢谢。参考文档中的示例: 因此,他们似乎认可传递一个数字会创建相应的标量。您可以进一步检查张量中的内容 import torch t = torch.tensor(1) print(t.size()) print(t.ndim) print(t.numel())
import torch
a = torch.tensor(1)
b = torch.tensor(2)
c = torch.tensor(3)
谢谢。参考文档中的示例:
因此,他们似乎认可传递一个数字会创建相应的标量。您可以进一步检查张量中的内容
import torch
t = torch.tensor(1)
print(t.size())
print(t.ndim)
print(t.numel())
print(t.stride())
print(t.element_size())
print(t.type())
跟踪Pytork可以通过数据和维度创建张量
import torch
# by data
t = torch.tensor([1., 1.])
# by dimension
t = torch.zeros(2,2)
您的案例是通过标量数据创建张量:t=torch.tensor(1)
。
但这也是一个标量:
t=torch.tensor([1])
imho,因为它有一个大小,没有方向 创建Pytorch标量有什么用处?假设我有一个B
作为PyTorch浮点张量,那么B*3.14
是否与B*torch.tensor(3.14)
相同?如果相同,为什么还要创建PyTorch标量?@MohitLamba一个用例:如果您想使用PyTorch的JIT跟踪功能,那么您的函数只能使用torch.Tensor
类型化参数(以及元组、列表和dict)。因此,您的函数需要读取myu函数(f:float,t:torch.Tensor)
,而不是myu函数(f:torch.Tensor,t:torch.Tensor)
。
import torch
# by data
t = torch.tensor([1., 1.])
# by dimension
t = torch.zeros(2,2)