未验证 提交 4f492898 编写于 作者: Y yukavio 提交者: GitHub

add functional_one_hot doc (#2432)

* add functional_one_hot doc

* fix some bug

* fix some bug

* fix some bug

* fix some asc bug

* fix code bug

* fix text

* add example code

* fix bug

* fix bug

* fix bug

* fix some bug
上级 15f16747
......@@ -8,6 +8,7 @@ functional
functional/l1_loss.rst
functional/nll_loss.rst
functional/mse_loss.rst
functional/one_hot.rst
functional/ctc_loss.rst
functional/adaptive_avg_pool2d.rst
functional/adaptive_avg_pool3d.rst
......
.. _api_nn_functional_one_hot:
one_hot
---------
.. autofunction:: paddle.nn.functional.one_hot
:noindex:
......@@ -19,6 +19,7 @@ functional
functional_cn/mse_loss_cn.rst
functional_cn/ctc_loss_cn.rst
functional_cn/sigmoid_cn.rst
functional_cn/one_hot_cn.rst
functional_cn/dropout_cn.rst
functional_cn/dropout2d_cn.rst
functional_cn/dropout3d_cn.rst
......
.. _cn_api_nn_functional_one_hot:
one_hot
-------------------------------
.. py:function:: paddle.nn.functional.one_hot(x, num_classes, name=None)
该OP将输入'x'中的每个id转换为一个one-hot向量,其长度为 ``num_classes`` ,该id对应的向量维度上的值为1,其余维度的值为0。
输出的Tensor的shape是在输入shape的最后一维后面添加了num_classes的维度。
- 示例1:
.. code-block:: text
输入:
X.shape = [4]
X.data = [1, 1, 3, 0]
num_classes = 4
输出:
Out.shape = [4, 4]
Out.data = [[0., 1., 0., 0.],
[0., 1., 0., 0.],
[0., 0., 0., 1.],
[1., 0., 0., 0.]]
- 示例2:
.. code-block:: text
输入:
X.shape = [4]
X.data = [1, 1, 5, 0]
num_classes = 4
输出:抛出 Illegal value 的异常
X中第2维的值是5,超过了num_classes,因此抛异常。
参数:
- **x** (Tensor) - 维度为 :math:`[N_1, ..., N_n]` 的多维Tensor,维度至少1维。数据类型为int32或int64。
- **num_classes** (int) - 用于定义一个one-hot向量的长度。若输入为词id,则 ``num_classes`` 通常取值为词典大小。
- **name** (str,可选) – 具体用法请参见 :ref:`api_guide_Name` ,一般无需设置,默认值为None。
返回:Tensor,转换后的one_hot Tensor,数据类型为float32。
**代码示例**:
.. code-block:: python
import paddle
label = paddle.data(name="label", shape=[4], dtype="int64")
# label.shape = [4]
# label.data = [1, 1, 3, 0]
one_hot_label = paddle.nn.functional.one_hot(x=label, num_classes=4)
# one_hot_label.shape = [4, 4]
# one_hot_label.data = [[0., 1., 0., 0.],
# [0., 1., 0., 0.],
# [0., 0., 0., 1.],
# [1., 0., 0., 0.]]
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册