评价此页

torch.range#

torch.range(start=0, end, step=1, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) Tensor#

返回一个 1D 张量,大小为 endstartstep+1\left\lfloor \frac{\text{end} - \text{start}}{\text{step}} \right\rfloor + 1 包含从 startend 的值,步长为 step。步长是张量中两个相邻值之间的间隔。

outi+1=outi+step.\text{out}_{i+1} = \text{out}_i + \text{step}.

警告

此函数已弃用,将在未来版本中删除,因为它与 Python 的 range 内建函数行为不一致。请改用 torch.arange(),它会在 [start, end) 范围内生成值。

参数
  • start (float, optional) – 点集的起始值。默认值:0

  • end (float) – 点集的结束值

  • step (float, optional) – 相邻点对之间的间隔。默认值:1

关键字参数
  • out (Tensor, optional) – 输出张量。

  • dtype (torch.dtype, optional) – 返回张量所需的类型。默认值:如果 None,则使用全局默认值(请参阅 torch.set_default_dtype())。如果未提供 dtype,则从其他输入参数推断数据类型。如果 startendstep 中的任何一个为浮点数,则 dtype 将推断为默认数据类型,请参阅 get_default_dtype()。否则,dtype 将推断为 torch.int64

  • layout (torch.layout, 可选) – 返回张量的所需布局。默认:torch.strided

  • device (torch.device, 可选) – 返回张量的所需设备。默认:如果为 None,则使用当前设备作为默认张量类型(参见 torch.set_default_device())。对于 CPU 张量类型,device 将是 CPU;对于 CUDA 张量类型,device 将是当前的 CUDA 设备。

  • requires_grad (bool, optional) – 如果 autograd 应记录在返回的张量上的操作。默认值:False

示例

>>> torch.range(1, 4)
tensor([ 1.,  2.,  3.,  4.])
>>> torch.range(1, 4, 0.5)
tensor([ 1.0000,  1.5000,  2.0000,  2.5000,  3.0000,  3.5000,  4.0000])