mindspore.ops.Stack
- class mindspore.ops.Stack(axis=0)[源代码]
在指定轴上对输入Tensor序列进行堆叠。
输入秩为 R 的Tensor序列,则输出秩为 (R+1) 的Tensor。
给定输入Tensor的shape为 \((x_1, x_2, ..., x_R)\) 。若输入Tensor的长度为 N 。如果存在 \(axis \ge 0\) ,则输出Tensor的shape为 \((x_1, x_2, ..., x_{axis}, N, x_{axis+1}, ..., x_R)\) 。
参数:
axis (int) - 指定堆叠运算的轴。取值范围为[-(R+1), R+1)。默认值:0。
输入:
input_x (Union[tuple, list]) - 输入多个Tensor对象组成的tuple或list,每个Tensor具有相同shape和数据类型。
输出:
堆叠运算后的Tensor,数据类型和 input_x 的相同。
异常:
TypeError - input_x 中元素的数据类型不相同。
ValueError - input_x 的长度不大于1,或axis不在[-(R+1),R+1)范围中,或 input_x 中元素的shape不相同。
- 支持平台:
Ascend
GPU
CPU
样例:
>>> data1 = Tensor(np.array([0, 1]).astype(np.float32)) >>> data2 = Tensor(np.array([2, 3]).astype(np.float32)) >>> stack = ops.Stack() >>> output = stack([data1, data2]) >>> print(output) [[0. 1.] [2. 3.]]