From 5f9c70550ce972307a8a85b64cb49e1abb1e7963 Mon Sep 17 00:00:00 2001 From: Hao Wang <31058429+haowang101779990@users.noreply.github.com> Date: Thu, 20 Dec 2018 15:48:46 +0800 Subject: [PATCH 1/2] 1220 update cnapi --- doc/fluid/api_cn/layers_cn.rst | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/doc/fluid/api_cn/layers_cn.rst b/doc/fluid/api_cn/layers_cn.rst index 536ec0b7ba4..1ec204c301b 100644 --- a/doc/fluid/api_cn/layers_cn.rst +++ b/doc/fluid/api_cn/layers_cn.rst @@ -3532,7 +3532,7 @@ fc **全连接层** -该函数在神经网络中建立一个全连接层。 它可以同时将多个tensor作为自己的输入,并为每个输入的tensor创立一个变量,称为“权”(weights),等价于一个从每个输入单元到每个输出单元的全连接权矩阵。FC层用每个tensor和它对应的权相乘得到输出tensor。如果有多个输入tensor,那么多个乘法运算将会加在一起得出最终结果。如果 ``bias_attr`` 非空,则会新创建一个偏向变量(bias variable),并把它加入到输出结果的运算中。最后,如果 ``act`` 非空,它也会加入最终输出的计算中。 +该函数在神经网络中建立一个全连接层。 它可以同时将多个tensor( ``input`` 可使用多个tensor组成的一个list,详见参数说明)作为自己的输入,并为每个输入的tensor创立一个变量,称为“权”(weights),等价于一个从每个输入单元到每个输出单元的全连接权矩阵。FC层用每个tensor和它对应的权相乘得到输出tensor。如果有多个输入tensor,那么多个乘法运算将会加在一起得出最终结果。如果 ``bias_attr`` 非空,则会新创建一个偏向变量(bias variable),并把它加入到输出结果的运算中。最后,如果 ``act`` 非空,它也会加入最终输出的计算中。 这个过程可以通过如下公式表现: @@ -3619,11 +3619,13 @@ flatten Out.shape = (1, 3 * 100 * 100 * 4) 参数: - - **x** (Variable): 一个秩>=axis 的张量 - - **axis** (int):指出应该将哪些输入维度(唯一的) flatten 到输出的外部维度。axis的值必须在[0,R]范围内,其中R是输入张量的秩。当 axis= 0 时,输出张量的形状为(1,(d_0 X d_1…),其中输入张量的形状为(d_0, d_1,…)d_n)。 - - **name** (str|None):此层的名称(可选)。如果没有设置,层将自动命名。 + - **x** (Variable) - 一个秩>=axis 的张量 + - **axis** (int) - 指出应该将哪些输入维度(唯一的) flatten 到输出的前一个维度。axis的值必须在[0,R]范围内,其中R是输入张量的秩。当 axis= 0 时,输出张量的形状为 (1,d_0 \* d_1 \*… d_n) ,其输入张量的形状为(d_0, d_1,… d_n)。 + - **name** (str|None) - 此层的名称(可选)。如果没有设置,层将自动命名。 + +返回: 一个二维张量,它包含输入张量的内容,输入维数将沿给定轴flatten到输出的前一个维度,剩余的输入维数flatten到输出的后一个维度。 -返回:Variable: 一个二维张量,它包含输入张量的内容,输入维数将沿给定轴flatten到输出的外部维度,剩余的输入维数flatten到输出的内部维数。 +返回类型: Variable 抛出异常: - ValueError: 如果 x 不是一个变量 @@ -6396,7 +6398,7 @@ reshape - **shape** (list) - 新的形状。新形状最多只能有一个维度为-1。 - **actual_shape** (variable) - 一个可选的输入。如果提供,则根据 ``actual_shape`` 进行 reshape,而不是指定 ``shape`` 。也就是说,actual_shape具有比shape更高的优先级。 - **act** (str) - 对reshpe后的tensor变量执行非线性激活 - - **inplace** (bool) - 如果在多个操作符中使用x,则 ``inplace`` 必须设置为False。如果该标志设置为True,则重用输入x进行reshape,这将改变张量变量x的形状,并可能在多个操作符中使用x时造成错误。如果为False,则保留形状x,并创建一个新的输出张量变量,该张量变量的数据是从输入x复制的,但经过了重构。 + - **inplace** (bool) - 如果在多个操作符中使用x,则 ``inplace`` 必须设置为False。如果该标志设置为True,则直接对输入x本身进行reshape操作,张量变量x的形状将会被改变,因此在其他操作中再使用x时会造成错误。如果为False,则保留输入变量x的原形状,并输出一个新的张量变量,该张量变量的数据是从输入x复制的,但是其形状已经经过reshape操作进行重构。 - **name** (str) - 可选变量,此层的名称 返回:如果 ``act`` 为 ``None``,返回reshape后的tensor变量。如果 ``inplace`` 为 ``False`` ,将返回一个新的Tensor变量,否则,将改变x自身。如果 ``act`` 不是 ``None`` ,则返回激活的张量变量。 From d630dd925b6432e92a56495909d8bcc9df2d0d9e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=90=E4=BC=9F?= Date: Tue, 12 Mar 2019 16:57:26 +0800 Subject: [PATCH 2/2] Apply suggestions from code review Co-Authored-By: haowang101779990 <31058429+haowang101779990@users.noreply.github.com> --- doc/fluid/api_cn/layers_cn.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/doc/fluid/api_cn/layers_cn.rst b/doc/fluid/api_cn/layers_cn.rst index 1ec204c301b..6a90c2ff017 100644 --- a/doc/fluid/api_cn/layers_cn.rst +++ b/doc/fluid/api_cn/layers_cn.rst @@ -3620,10 +3620,10 @@ flatten 参数: - **x** (Variable) - 一个秩>=axis 的张量 - - **axis** (int) - 指出应该将哪些输入维度(唯一的) flatten 到输出的前一个维度。axis的值必须在[0,R]范围内,其中R是输入张量的秩。当 axis= 0 时,输出张量的形状为 (1,d_0 \* d_1 \*… d_n) ,其输入张量的形状为(d_0, d_1,… d_n)。 + - **axis** (int) - flatten的划分轴,[0, axis) 轴数据被flatten到输出矩阵的0轴,[axis, R)被flatten到输出矩阵的1轴,其中R是输入张量的秩。axis的值必须在[0,R]范围内。当 axis= 0 时,输出张量的形状为 (1,d_0 \* d_1 \*… d_n) ,其输入张量的形状为(d_0, d_1,… d_n)。 - **name** (str|None) - 此层的名称(可选)。如果没有设置,层将自动命名。 -返回: 一个二维张量,它包含输入张量的内容,输入维数将沿给定轴flatten到输出的前一个维度,剩余的输入维数flatten到输出的后一个维度。 +返回: 一个二维张量,它包含输入张量的内容,但维数发生变化。输入的[0, axis)维将沿给定轴flatten到输出的前一个维度,剩余的输入维数flatten到输出的后一个维度。 返回类型: Variable