评价此页

torch.arange#

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

返回一个 1-D 张量,其大小为 endstartstep\left\lceil \frac{\text{end} - \text{start}}{\text{step}} \right\rceil 范围内的值,其中 start 为起始值,公差为 step

注意:在使用浮点数 dtypes(尤其是像 bfloat16 这样的低精度类型)时,结果可能会受到浮点数舍入行为的影响。序列中的某些值可能无法在某些浮点数格式中精确表示,这可能导致值重复或意外舍入。为了获得精确的序列,建议使用整数 dtypes 而非浮点数 dtypes。

注意,当与 end 比较时,非整数 step 会受到浮点数舍入误差的影响;为避免不一致,我们建议在这种情况下从 end 中减去一个小的 epsilon。

outi+1=outi+step\text{out}_{{i+1}} = \text{out}_{i} + \text{step}
参数
  • start (Number, optional) –集合点的起始值。默认为 0

  • end (Number) – 集合点的结束值

  • step (Number, optional) – 相邻点之间的间隔。默认为 1

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

  • dtype (torch.dtype, optional) – 返回张量的期望数据类型。默认情况下,如果 None,则使用全局默认值(请参阅 torch.set_default_dtype())。如果未给出 dtype,则从其他输入参数推断数据类型。如果 startendstop 中的任何一个是浮点数,则 dtype 被推断为默认 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.arange(5)
tensor([ 0,  1,  2,  3,  4])
>>> torch.arange(1, 4)
tensor([ 1,  2,  3])
>>> torch.arange(1, 2.5, 0.5)
tensor([ 1.0000,  1.5000,  2.0000])