Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
FluidDoc
提交
48049078
F
FluidDoc
项目概览
PaddlePaddle
/
FluidDoc
通知
5
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
23
列表
看板
标记
里程碑
合并请求
111
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
F
FluidDoc
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
23
Issue
23
列表
看板
标记
里程碑
合并请求
111
合并请求
111
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
48049078
编写于
5月 08, 2020
作者:
L
Li Fuchen
提交者:
GitHub
5月 08, 2020
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add cn doc of trace API & diag_embed API (#2039)
* add cn doc of trace API * add cn doc of diag_embed API
上级
b1e72d33
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
122 addition
and
3 deletion
+122
-3
doc/fluid/api_cn/nn_cn/diag_embed_cn.rst
doc/fluid/api_cn/nn_cn/diag_embed_cn.rst
+72
-2
doc/fluid/api_cn/tensor_cn.rst
doc/fluid/api_cn/tensor_cn.rst
+2
-1
doc/fluid/api_cn/tensor_cn/trace_cn.rst
doc/fluid/api_cn/tensor_cn/trace_cn.rst
+48
-0
未找到文件。
doc/fluid/api_cn/nn_cn/diag_embed_cn.rst
浏览文件 @
48049078
diag
.. _cn_api_functional_diag_embed:
diag_embed
-------------------------------
**版本升级,文档正在开发中**
.. py:function:: paddle.functional.diag_embed(input, offset=0, dim1=-2, dim2=-1):
该 OP 创建一个 Tensor,其在指定的 2D 平面(由 ``dim1`` 和 ``dim2`` 指定)上的对角线由输入 ``input`` 填充。
默认的,指定的 2D 平面由返回 Tensor 的最后两维组成。
参数 ``offset`` 确定在指定的二维平面中填充对角线的位置:
- 如果 offset = 0,则填充主对角线。
- 如果 offset > 0,则填充主对角线右上的对角线。
- 如果 offset < 0,则填充主对角线左下的对角线。
参数:
- **input** (Variable|numpy.ndarray)- 输入变量,至少为 1D 数组,支持数据类型为 float32,float64,int32,int64。
- **offset** (int ,可选)- 从指定的二维平面中获取对角线的位置,默认值为 0,既主对角线。
- **dim1** (int , 可选)- 填充对角线的二维平面的第一维,默认值为 -2。
- **dim2** (int , 可选)- 填充对角线的二维平面的第二维,默认值为 -1。
返回: 指定二维平面填充了对角线的 Tensor。数据类型和输入数据类型一致。
返回类型: 变量(Variable)
**代码示例**
.. code-block:: python
import paddle.nn.functional as F
import paddle.fluid.dygraph as dg
import numpy as np
diag_embed = np.random.randn(2, 3).astype('float32')
# [[ 0.7545889 , -0.25074545, 0.5929117 ],
# [-0.6097662 , -0.01753256, 0.619769 ]]
with dg.guard():
data1 = F.diag_embed(diag_embed)
data1.numpy()
# [[[ 0.7545889 , 0. , 0. ],
# [ 0. , -0.25074545, 0. ],
# [ 0. , 0. , 0.5929117 ]],
# [[-0.6097662 , 0. , 0. ],
# [ 0. , -0.01753256, 0. ],
# [ 0. , 0. , 0.619769 ]]]
data2 = F.diag_embed(diag_embed, offset=-1, dim1=0, dim2=2)
data2.numpy()
# [[[ 0. , 0. , 0. , 0. ],
# [ 0.7545889 , 0. , 0. , 0. ],
# [ 0. , -0.25074545, 0. , 0. ],
# [ 0. , 0. , 0.5929117 , 0. ]],
#
# [[ 0. , 0. , 0. , 0. ],
# [-0.6097662 , 0. , 0. , 0. ],
# [ 0. , -0.01753256, 0. , 0. ],
# [ 0. , 0. , 0.619769 , 0. ]]]
data3 = F.diag_embed(diag_embed, offset=1, dim1=0, dim2=2)
data3.numpy()
# [[[ 0. , 0.7545889 , 0. , 0. ],
# [ 0. , -0.6097662 , 0. , 0. ]],
#
# [[ 0. , 0. , -0.25074545, 0. ],
# [ 0. , 0. , -0.01753256, 0. ]],
#
# [[ 0. , 0. , 0. , 0.5929117 ],
# [ 0. , 0. , 0. , 0.619769 ]],
#
# [[ 0. , 0. , 0. , 0. ],
# [ 0. , 0. , 0. , 0. ]]]
doc/fluid/api_cn/tensor_cn.rst
浏览文件 @
48049078
...
...
@@ -68,6 +68,7 @@ paddle.tensor
tensor_cn/tanh_cn.rst
tensor_cn/t_cn.rst
tensor_cn/tensordot_cn.rst
tensor_cn/trace_cn.rst
tensor_cn/transpose_cn.rst
tensor_cn/tril_cn.rst
tensor_cn/triu_cn.rst
...
...
@@ -76,4 +77,4 @@ paddle.tensor
tensor_cn/var_cn.rst
tensor_cn/where_cn.rst
tensor_cn/zeros_cn.rst
tensor_cn/zeros_like_cn.rst
tensor_cn/zeros_like_cn.rst
\ No newline at end of file
doc/fluid/api_cn/tensor_cn/trace_cn.rst
0 → 100644
浏览文件 @
48049078
.. _cn_api_tensor_trace:
trace
-------------------------------
.. py:function:: paddle.trace(input, offset=0, dim1=0, dim2=1)
该 OP 计算输入 Tensor 在指定平面上的对角线元素之和,并输出相应的计算结果。
如果输入是 2D Tensor,则返回对角线元素之和。
如果输入的维度大于 2D,则返回一个由对角线元素之和组成的数组,其中对角线从由 dim1 和 dim2 指定的二维平面中获得。默认由输入的前两维组成获得对角线的 2D 平面。
参数 ``offset`` 确定从指定的二维平面中获取对角线的位置:
- 如果 offset = 0,则取主对角线。
- 如果 offset > 0,则取主对角线右上的对角线。
- 如果 offset < 0,则取主对角线左下的对角线。
参数:
- **input** (Variable)- 输入变量,至少为 2D 数组,支持数据类型为 float32,float64,int32,int64。
- **offset** (int ,可选)- 从指定的二维平面中获取对角线的位置,默认值为 0,既主对角线。
- **dim1** (int , 可选)- 获取对角线的二维平面的第一维,默认值为 0。
- **dim2** (int , 可选)- 获取对角线的二维平面的第二维,默认值为 1。
返回: 指定二维平面的对角线元素之和。数据类型和输入数据类型一致。
返回类型: 变量(Variable)
**代码示例**
.. code-block:: python
import paddle.tensor as tensor
import paddle.fluid.dygraph as dg
import numpy as np
case1 = np.random.randn(2, 3).astype('float32')
case2 = np.random.randn(3, 10, 10).astype('float32')
case3 = np.random.randn(3, 10, 5, 10).astype('float32')
with dg.guard():
case1 = dg.to_variable(case1)
case2 = dg.to_variable(case2)
case3 = dg.to_variable(case3)
data1 = tensor.trace(case1) # data1.shape = [1]
data2 = tensor.trace(case2, offset=1, dim1=1, dim2=2) # data2.shape = [3]
data3 = tensor.trace(case3, offset=-3, dim1=1, dim2=-1) # data2.shape = [3, 5]
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录