unstack
paddle.fluid.layers.
unstack
(x, axis=0, num=None)[源代码]
该OP将单个dim为 D
的Tensor沿 axis
轴unpack为 num
个dim为 (D-1)
的Tensor
- 参数:
x (Variable) – 输入x为
dim > 0
的Tensor,
支持的数据类型: float32,float64,int32,int64。axis (int | 可选) – 输入Tensor进行unpack运算所在的轴,axis的范围为:
[-D, D)
,
如果axis < 0
,则
,axis的默认值为0。
- num (int | 可选) - axis轴的长度,一般无需设置,默认值为
None
。
返回: 长度为num的Tensor列表, 数据类型与输入Tensor相同,dim为 (D-1)
。
返回类型: list(Variable)
- 抛出异常:
ValueError
:x.shape[axis]
<= 0 或axis
不在[-D, D)范围内
代码示例:
- import paddle.fluid as fluid
- x = fluid.layers.data(name='x', shape=[2, 3, 5], dtype='float32') #创建一个shape=[2, 3, 5]的Tensor
- y = fluid.layers.unstack(x, axis=1) #沿着第1轴进行unpack, unpack后为3个shape=[2,5]的Tensor