diff --git a/doc/fluid/api_cn/layers_cn/transpose_cn.rst b/doc/fluid/api_cn/layers_cn/transpose_cn.rst index 2fba689a752171e3950b9ee25a5290f3c6660019..33df874e197309226a0657823098fed68aa3c3c9 100644 --- a/doc/fluid/api_cn/layers_cn/transpose_cn.rst +++ b/doc/fluid/api_cn/layers_cn/transpose_cn.rst @@ -5,18 +5,40 @@ transpose .. py:function:: paddle.fluid.layers.transpose(x,perm,name=None) -根据perm对输入矩阵维度进行重排。 - -返回张量(tensor)的第i维对应输入维度矩阵的perm[i]。 +该OP根据perm对输入的多维Tensor进行数据重排。返回多维Tensor的第i维对应输入Tensor的perm[i]维。 参数: - - **x** (Variable) - 输入张量(Tensor) - - **perm** (list) - 输入维度矩阵的转置 - - **name** (str) - 该层名称(可选) + - **x** (Variable) - 输入:x:[N_1, N_2, ..., N_k, D]多维Tensor,可选的数据类型为float16, float32, float64, int32, int64。 + - **perm** (list) - perm长度必须和X的维度相同,并依照perm中数据进行重排。 + - **name** (str) - 该层名称(可选)。 + +返回: 多维Tensor + +返回类型:Variable -返回: 转置后的张量(Tensor) +**示例**: + +.. code-block:: python + + x = [[[ 1 2 3 4] [ 5 6 7 8] [ 9 10 11 12]] + [[13 14 15 16] [17 18 19 20] [21 22 23 24]]] + shape(x) = [2,3,4] + + # 例0 + perm0 = [1,0,2] + y_perm0 = [[[ 1 2 3 4] [13 14 15 16]] + [[ 5 6 7 8] [17 18 19 20]] + [[ 9 10 11 12] [21 22 23 24]]] + shape(y_perm0) = [3,2,4] + + # 例1 + perm1 = [2,1,0] + y_perm1 = [[[ 1 13] [ 5 17] [ 9 21]] + [[ 2 14] [ 6 18] [10 22]] + [[ 3 15] [ 7 19] [11 23]] + [[ 4 16] [ 8 20] [12 24]]] + shape(y_perm1) = [4,3,2] -返回类型:变量(Variable) **代码示例**: @@ -25,10 +47,11 @@ transpose # 请使用 append_batch_size=False 来避免 # 在数据张量中添加多余的batch大小维度 import paddle.fluid as fluid - x = fluid.layers.data(name='x', shape=[5, 10, 15], + x = fluid.layers.data(name='x', shape=[2, 3, 4], dtype='float32', append_batch_size=False) x_transposed = fluid.layers.transpose(x, perm=[1, 0, 2]) - + print x_transposed.shape + #(3L, 2L, 4L)