|
|
|
@ -5935,13 +5935,10 @@ def reshape(x, shape, actual_shape=None, act=None, inplace=False, name=None):
|
|
|
|
|
than :attr:`shape`.
|
|
|
|
|
act (str): The non-linear activation to be applied to the reshaped tensor
|
|
|
|
|
variable.
|
|
|
|
|
inplace(bool): Must use :attr:`False` if :attr:`x` is used in multiple
|
|
|
|
|
operators. If this flag is set :attr:`True`, reuse input
|
|
|
|
|
:attr:`x` to reshape, which will change the shape of
|
|
|
|
|
tensor variable :attr:`x` and might cause errors when
|
|
|
|
|
:attr:`x` is used in multiple operators. If :attr:`False`,
|
|
|
|
|
preserve the shape :attr:`x` and create a new output tensor
|
|
|
|
|
variable whose data is copied from input x but reshaped.
|
|
|
|
|
inplace(bool): If ``inplace`` is `True`, the input and output of ``layers.reshape``
|
|
|
|
|
are the same variable, otherwise, the input and output of
|
|
|
|
|
``layers.reshape`` are different variables. Note that if :attr:`x`
|
|
|
|
|
is more than one layers' input, ``inplace`` must be :attr:`False`.
|
|
|
|
|
name (str): The name of this layer. It is optional.
|
|
|
|
|
|
|
|
|
|
Returns:
|
|
|
|
@ -8334,6 +8331,44 @@ def stack(x, axis=0):
|
|
|
|
|
If :code:`axis` < 0, it would be replaced with :code:`axis+rank(x[0])+1`.
|
|
|
|
|
If :code:`axis` is None, it would be replaced with 0.
|
|
|
|
|
|
|
|
|
|
.. code-block:: text
|
|
|
|
|
|
|
|
|
|
Case 1:
|
|
|
|
|
Input:
|
|
|
|
|
x[0].data = [ [1.0 , 2.0 ] ]
|
|
|
|
|
x[0].dims = [1, 2]
|
|
|
|
|
x[1].data = [ [3.0 , 4.0 ] ]
|
|
|
|
|
x[1].dims = [1, 2]
|
|
|
|
|
x[2].data = [ [5.0 , 6.0 ] ]
|
|
|
|
|
x[2].dims = [1, 2]
|
|
|
|
|
|
|
|
|
|
Attrs:
|
|
|
|
|
axis = 0
|
|
|
|
|
|
|
|
|
|
Output:
|
|
|
|
|
Out.data =[ [ [1.0, 2.0] ],
|
|
|
|
|
[ [3.0, 4.0] ],
|
|
|
|
|
[ [5.0, 6.0] ] ]
|
|
|
|
|
Out.dims = [3, 1, 2]
|
|
|
|
|
|
|
|
|
|
Case 2:
|
|
|
|
|
Given
|
|
|
|
|
x[0].data = [ [1.0 , 2.0 ] ]
|
|
|
|
|
x[0].dims = [1, 2]
|
|
|
|
|
x[1].data = [ [3.0 , 4.0 ] ]
|
|
|
|
|
x[1].dims = [1, 2]
|
|
|
|
|
x[2].data = [ [5.0 , 6.0 ] ]
|
|
|
|
|
x[2].dims = [1, 2]
|
|
|
|
|
|
|
|
|
|
Attrs:
|
|
|
|
|
axis = 1 or axis = -2
|
|
|
|
|
|
|
|
|
|
Output:
|
|
|
|
|
Out.data =[ [ [1.0, 2.0]
|
|
|
|
|
[3.0, 4.0]
|
|
|
|
|
[5.0, 6.0] ] ]
|
|
|
|
|
Out.dims = [1, 3, 2]
|
|
|
|
|
|
|
|
|
|
Args:
|
|
|
|
|
x (Variable|list(Variable)|tuple(Variable)): Input variables.
|
|
|
|
|
axis (int|None): The axis along which all inputs are stacked.
|
|
|
|
|