data_cn.rst 2.2 KB
Newer Older
H
Hao Wang 已提交
1 2 3 4 5 6 7
.. _cn_api_fluid_layers_data:

data
-------------------------------

.. py:function:: paddle.fluid.layers.data(name, shape, append_batch_size=True, dtype='float32', lod_level=0, type=VarType.LOD_TENSOR, stop_gradient=True)

8
该OP会在全局block中创建变量(Variable),该全局变量可被计算图中的算子(operator)访问。
H
Hao Wang 已提交
9

10
注意:
H
Hao Wang 已提交
11

12
  不推荐使用 ``paddle.fluid.layers.data`` ,因其在之后的版本中会被删除。请使用 ``paddle.fluid.data`` 。 
H
Hao Wang 已提交
13

14
  ``paddle.fluid.layers.data`` 在组网期间会设置创建的变量维度(shape)和数据类型(dtype),但不会检查输入数据的维度和数据类型是否符合要求。 ``paddle.fluid.data`` 会在运行过程中由Executor/ParallelExecutor检查输入数据的维度。
H
Hao Wang 已提交
15 16

参数:
17 18
    - **name** (str)- 被创建的变量的名字,具体用法请参见 :ref:`api_guide_Name` 。
    - **shape** (list)- 声明维度信息的list。如果 ``append_batch_size`` 为True且内部没有维度值为-1,则应将其视为每个样本的形状。 否则,应将其视为batch数据的形状。
H
Hao Wang 已提交
19 20
    - **append_batch_size** (bool)-

21 22
        1.如果为True,则在维度(shape)的开头插入-1。
        例如,如果shape=[1],则输出shape为[-1,1]。可用于设置运行期间不同batch大小。
H
Hao Wang 已提交
23

24
        2.如果维度(shape)包含-1,比如shape=[-1,1]。
H
Hao Wang 已提交
25 26
        append_batch_size会强制变为为False(表示无效),因为PaddlePaddle不能在shape上设置一个以上的未知数。

27 28 29 30
    - **dtype** (np.dtype|VarType|str)- 数据类型,支持bool,float16,float32,float64,int8,int16,int32,int64,uint8。
    - **type** (VarType)- 输出类型,支持VarType.LOD_TENSOR,VarType.SELECTED_ROWS,VarType.NCCL_ID。默认为VarType.LOD_TENSOR。
    - **lod_level** (int)- LoD层。0表示输入数据不是一个序列。默认值为0。
    - **stop_gradient** (bool)- 提示是否应该停止计算梯度,默认值为True。
H
Hao Wang 已提交
31 32 33

返回:全局变量,可进行数据访问

34
返回类型:Variable
H
Hao Wang 已提交
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51

**代码示例**:

.. code-block:: python

    import paddle.fluid as fluid
    data = fluid.layers.data(name='x', shape=[784], dtype='float32')