Skip to content

修复文档 paddle.nn.functional.embedding paddle.index_add #7250

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 4 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions docs/api/paddle/index_add_cn.rst
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ index_add
输出:
out.shape = [3, 3]
out.data = [[2., 1., 2.],
[1., 1., 1.],
[2., 1., 2.],
[2., 1., 2.]]

**示例 1 图解说明**
Expand All @@ -79,10 +79,10 @@ index_add
参数
:::::::::

- **x** Tensor)– 输入 Tensor。 ``x`` 的数据类型可以是 float16, float32,float64,int32,int64。
- **index** Tensor)– 包含索引下标的 1-D Tensor。数据类型为 int32 或者 int64。
- **axis** (int) 索引轴。数据类型为 int。
- **value** Tensor)– 与 ``x`` 相加的 Tensor。 ``value`` 的数据类型同 ``x`` 。
- **x** (Tensor) - 输入 Tensor。 ``x`` 的数据类型可以是 float16float32,float64,int32,int64。
- **index** (Tensor) - 包含索引下标的 1-D Tensor。数据类型为 int32 或者 int64。
- **axis** (int) - 索引轴。数据类型为 int。
- **value** (Tensor) - 与 ``x`` 相加的 Tensor。 ``value`` 的数据类型同 ``x`` 。
- **name** (str,可选) - 具体用法请参见 :ref:`api_guide_Name`,一般无需设置,默认值为 None。

返回
Expand Down
14 changes: 7 additions & 7 deletions docs/api/paddle/nn/Embedding_cn.rst
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,12 @@ Embedding

.. py:class:: paddle.nn.Embedding(num_embeddings, embedding_dim, padding_idx=None, sparse=False, weight_attr=None, scale_grad_by_freq=False, name=None)

嵌入层(Embedding Layer),用于构建 ``Embedding`` 的一个可调用对象,具体用法参照 ``代码示例``。其根据 ``x`` 中的 id 信息从 embedding 矩阵中查询对应 embedding 信息,并会根据输入的 size (num_embeddings, embedding_dim)和 weight_attr 自动构造一个二维 embedding 矩阵。
嵌入层(Embedding Layer),用于构建 ``Embedding`` 的一个可调用对象,具体用法参照 ``代码示例``。它实现了嵌入层的功能,其根据 ``x`` 中的 id 信息从 embedding 矩阵中查询对应 embedding 信息,并会根据输入的 size (num_embeddings, embedding_dim) 和 weight_attr 自动构造一个二维 embedding 矩阵。

输出的 Tensor 的 shape 是在输入 Tensor shape 的最后一维后面添加了 embedding_dim 的维度。

.. note::
input 中的 id 必须满足 ``0 <= id < size[0]``,否则程序会抛异常退出。
input 中的 id 必须满足 ``0 <= id < num_embeddings``,否则程序会抛异常退出。

.. code-block:: text

Expand All @@ -37,12 +37,12 @@ Embedding

- **num_embeddings** (int) - 嵌入字典的大小,input 中的 id 必须满足 ``0 <= id < num_embeddings`` 。
- **embedding_dim** (int) - 每个嵌入向量的维度。
- **padding_idx** (int|long|None,可选) - padding_idx 的配置区间为 ``[-weight.shape[0], weight.shape[0])``,如果配置了 padding_idx,那么在训练过程中遇到此 id 时,其参数及对应的梯度将会以 0 进行填充。
- **max_norm** (float,可选) - 若声明,会将范数大于此值的词嵌入向量重新归一化,使其范数等于此值。在动态图模式下会对 ``weight`` 产生 inplace 修改。默认值为 None。
- **norm_type** (float) - 应用 ``max_norm`` 时所计算的 p 阶范数的 p 值。默认值 2.0。
- **sparse** (bool,可选) - 是否使用稀疏更新,在词嵌入权重较大的情况下,使用稀疏更新能够获得更快的训练速度及更小的内存/显存占用。
- **padding_idx** (int|long|None,可选) - padding_idx 的配置区间为 ``[-num_embeddings, num_embeddings)``,如果配置了 padding_idx,那么在训练过程中遇到此 id 时,其参数及对应的梯度将会以 0 进行填充。默认值:None
- **max_norm** (float,可选) - 若声明,会将范数大于此值的词嵌入向量重新归一化,使其范数等于此值。在动态图模式下会对输入的词嵌入权重产生 inplace 修改。默认值:None。
- **norm_type** (float) - 应用 ``max_norm`` 时所计算的 p 阶范数的 p 值。默认值2.0。
- **sparse** (bool,可选) - 是否使用稀疏更新,在词嵌入权重较大的情况下,使用稀疏更新能够获得更快的训练速度及更小的内存/显存占用。默认值:False。
- **weight_attr** (ParamAttr|None,可选) - 指定嵌入向量的配置,包括初始化方法,具体用法请参见 :ref:`api_guide_ParamAttr`,一般无需设置,默认值为 None。
- **scale_grad_by_freq** (bool,可选) - 是否根据单词在 mini-batch 中出现频率的倒数缩放梯度。默认值 False。
- **scale_grad_by_freq** (bool,可选) - 是否根据单词在 mini-batch 中出现频率的倒数缩放梯度。默认值False。
- **name** (str|None,可选) - 具体用法请参见 :ref:`api_guide_Name`,一般无需设置,默认值为 None。


Expand Down
22 changes: 11 additions & 11 deletions docs/api/paddle/nn/functional/embedding_cn.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,13 @@ embedding



嵌入层(Embedding Layer),根据 input 中的 id 信息从 embedding 矩阵中查询对应 embedding 信息,并会根据输入的 size (vocab_size, emb_size)和 dtype 自动构造一个二维 embedding 矩阵
根据输入 ``x`` 中的 id 信息从 embedding 矩阵 ``weight`` 中查询对应的 embedding 信息

输出的 Tensor 的 shape 是将输入 Tensor shape 后追加一维 emb_size
输出的 Tensor 的 shape 是将输入 Tensor shape 后追加一维 embedding_dim(weight.shape[1])

.. note::

input 中的 id 必须满足 ``0 =< id < size[0]``,否则程序会抛异常退出
x 中的 id 必须满足 ``0 =< id < weight.shape[0]``,否则程序会抛出异常并退出


.. code-block:: text
Expand All @@ -23,7 +23,7 @@ embedding
x.data = [[1, 3], [2, 4], [4, 127]]
x.shape = [3, 2]
weight.shape = [128, 16]
输出是 Tensor:
输出是 Tensor
out.shape = [3, 2, 16]
out.data = [[[0.129435295, 0.244512452, ..., 0.436322452],
[0.345421456, 0.524563927, ..., 0.144534654]],
Expand All @@ -39,19 +39,19 @@ embedding
::::::::::::


- **input** (Tensor) - 存储 id 信息的 Tensor,数据类型必须为:int32/int64。input 中的 id 必须满足 ``0 =< id < size[0]`` 。
- **weight** (Tensor) - 存储词嵌入权重参数的 Tensor,形状为(num_embeddings, embedding_dim)。
- **padding_idx** (int|long|None,可选) - padding_idx 的配置区间为 ``[-weight.shape[0], weight.shape[0]``,如果配置了 padding_idx,那么在训练过程中遇到此 id 时,其参数及对应的梯度将会以 0 进行填充。如果 padding_idx < 0 ,则 padding_idx 将自动转换到 ``weight.shape[0] + padding_idx`` 。如果设置为 "None",则不会对输出产生影响。默认值:None。
- **max_norm** (float,可选) - 若声明,会将范数大于此值的词嵌入向量重新归一化,使其范数等于此值。在动态图模式下会对 ``weight`` 产生 inplace 修改。默认值为 None。
- **norm_type** (float) - 应用 ``max_norm`` 时所计算的 p 阶范数的 p 值。默认值 2.0。
- **x** (Tensor) - 存储 id 信息的 Tensor,数据类型必须为:int32/int64。输入中的 id 必须满足 ``0 =< id < weight.shape[0]`` 。
- **weight** (Tensor) - 存储词嵌入权重参数的 Tensor,形状为 (num_embeddings, embedding_dim)
- **padding_idx** (int|None,可选) - padding_idx 的配置区间为 ``[-weight.shape[0], weight.shape[0])``,如果配置了 padding_idx,那么在训练过程中遇到此 id 时,其参数及对应的梯度将会以 0 进行填充。如果 padding_idx < 0 ,则 padding_idx 将自动转换到 ``weight.shape[0] + padding_idx`` 。如果设置为 None,则不会对输出产生影响。默认值:None。
- **max_norm** (float,可选) - 若声明,会将范数大于此值的词嵌入向量重新归一化,使其范数等于此值。在动态图模式下会对 ``weight`` 产生 inplace 修改。默认值:None。
- **norm_type** (float) - 应用 ``max_norm`` 时所计算的 p 阶范数的 p 值。默认值2.0。
- **sparse** (bool,可选) - 是否使用稀疏更新,在词嵌入权重较大的情况下,使用稀疏更新(即设置为 True)能够获得更快的训练速度及更小的内存/显存占用。但是一些优化器不支持稀疏更新,例如 :ref:`cn_api_paddle_optimizer_Adadelta` , :ref:`cn_api_paddle_optimizer_Adamax` , :ref:`cn_api_paddle_optimizer_Lamb` 。在这些情况下,稀疏必须为 False。默认值:False。
- **scale_grad_by_freq** (bool,可选) - 是否根据单词在 mini-batch 中出现频率的倒数缩放梯度。默认值 False。
- **scale_grad_by_freq** (bool,可选) - 是否根据单词在 mini-batch 中出现频率的倒数缩放梯度。默认值False。
- **name** (str,可选) - 具体用法请参见 :ref:`api_guide_Name`,一般无需设置,默认值为 None。


返回
::::::::::::
Tensor, input 映射后得到的 Embedding Tensor,数据类型和权重定义的类型一致。
Tensor,x 映射后得到的 Embedding Tensor,数据类型和权重定义的类型一致。


代码示例
Expand Down