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