torch.arange¶
- torch.arange(start=0, end, step=1, *, out=None, dtype=None, layout=torch.strided, device=None, requires_grad=False) Tensor ¶
返回一个大小为 的一维张量,其值从区间
[start, end)
中获取,以 start 为起始值,公差为step
。注意:使用浮点型 dtypes(尤其是降低精度的类型,如
bfloat16
)时,结果可能会受到浮点数舍入行为的影响。序列中的某些值在特定浮点格式中可能无法精确表示,这可能导致重复值或意外的舍入。对于精确的序列,建议使用整型 dtypes 而非浮点型 dtypes。请注意,当
step
为非整数时,与end
比较时会受浮点数舍入误差的影响;为了避免不一致,建议在这种情况下从end
中减去一个小的 epsilon 值。- 参数
start (Number, 可选) – 点集的起始值。默认值:
0
。end (Number) – 点集的结束值
step (Number, 可选) – 每对相邻点之间的间隔。默认值:
1
。
- 关键字参数
out (Tensor, 可选) – 输出张量。
dtype (
torch.dtype
, 可选) – 返回张量的期望数据类型。默认值:如果为None
,则使用全局默认设置(参见torch.set_default_dtype()
)。如果未给出 dtype,则从其他输入参数推断数据类型。如果 start、end 或 stop 中任何一个为浮点型,则推断 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 张量类型,则是当前的 CUDA 设备。requires_grad (bool, 可选) – 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])