pypto.arange#
产品支持情况#
产品 |
是否支持 |
|---|---|
Ascend 950PR/Ascend 950DT |
√ |
Atlas A3 训练系列产品/Atlas A3 推理系列产品 |
√ |
Atlas A2 训练系列产品/Atlas A2 推理系列产品 |
√ |
功能说明#
创建长度为\(\left\lceil \frac{\text{end} - \text{start}}{\text{step}} \right\rceil\)的一维Tensor,包含区间 [start, end) 内、以 step 为步长的等差数列。
函数原型#
arange(start: Union[int, float] = 0, end: Union[int, float], step: Union[int, float] = 1) -> Tensor
参数说明#
参数名 |
输入/输出 |
说明 |
|---|---|---|
start |
输入 |
源操作数。 |
end |
输入 |
源操作数。 |
step |
输入 |
源操作数。 |
返回值说明#
返回一维输出Tensor,若输入值存在float数据类型,则输出Tensor数据类型为float,否则为int。
约束说明#
step不能为0,作为浮点数,abs(step)>1e-8;
(end-start)/step需大于0;
如果 start, end, step 均为 int 输入,则三者均不能超出 int32 范围
调用示例#
TileShape设置示例#
调用该operation接口前,应通过set_vec_tile_shapes设置TileShape。
TileShape和输出output维度一致,均为一维。
如输入start为m,end为n, step为p, 输出shape为[q], TileShape设置为[q1], 则q1分别用于切分q轴。
pypto.set_vec_tile_shapes(16)
接口调用示例#
y1 = pypto.arange(1.0, 4.0, 0.5)
y2 = pypto.arange(1.0, 4.0)
y3 = pypto.arange(4)
结果示例如下:
输出数据y1: [1.0, 1.5, 2.0, 2.5, 3.0, 3.5]
输出数据y2: [1.0, 2.0, 3.0]
输出数据y3: [0, 1, 2, 3]