eye_cn.rst 1.4 KB
Newer Older
1 2
.. _cn_api_paddle_tensor_eye:

T
tianshuo78520a 已提交
3 4
eye
-------------------------------
5

6
.. py:function:: paddle.tensor.eye(num_rows, num_columns=None, dtype=None, name=None)
7

8
该OP用来构建二维张量(主对角线元素为1,其他元素为0)。
9 10

参数:
11 12 13
    - **num_rows** (int) - 生成二维张量的行数,数据类型为非负int32。
    - **num_columns** (int,可选) - 生成二维张量的列数,数据类型为非负int32。若为None,则默认等于num_rows。
    - **dtype** (np.dtype|core.VarDesc.VarType|str, 可选) - 返回张量的数据类型,可为float16,float32,float64, int32, int64。若为None, 则默认等于float32。
14 15 16 17
    - **name** (str, 可选)- 具体用法请参见 :ref:`api_guide_Name` ,一般无需设置,默认值为None。

返回:shape为 [num_rows, num_columns]的张量。

18 19 20 21 22
返回类型:Variable(Tensor),数据类型为dtype指定的类型。

抛出异常:
    - ``TypeError``: - 如果 ``dtype`` 的类型不是float16, float32, float64, int32, int64其中之一。
    - ``TypeError``: - 如果 ``num_columns`` 不是非负整数或者 ``num_rows`` 不是非负整数。
23 24 25 26 27 28

**代码示例**:

.. code-block:: python

    import paddle
29
    paddle.enable_imperative()
30
    data = paddle.eye(3, dtype='int32') # paddle.eye 等价于 paddle.tensor.eye
31 32 33
    # [[1 0 0]
    #  [0 1 0]
    #  [0 0 1]]
34
    data = paddle.eye(2, 3, dtype='int32')
35 36
    # [[1 0 0]
    #  [0 1 0]]
37 38 39 40