tensor.rst 1.1 KB
Newer Older
C
chentianyu03 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
.. _cn_user_guide_tensor:

=========
Tensor
=========

飞桨(PaddlePaddle,以下简称Paddle)和其他框架一样,使用Tensor来表示数据。

在神经网络中传递的数据都是Tensor。Tensor可以简单理解成一个多维数组,一般而言可以有任意多的维度。
不同的Tensor可以具有自己的数据类型和形状,同一Tensor中每个元素的数据类型是一样的,Tensor的形状就是Tensor的维度。

下图直观地表示1~6维的Tensor:

.. image:: ../image/tensor.jpg


**Paddle 高级特性**  

:ref:`Lod-Tensor <cn_user_guide_lod_tensor>`

对于一些任务中batch内样本大小不一致的问题,Paddle提供了两种解决方案:

1. padding, 将大小不一致的样本padding到同样的大小,这是一种常用且推荐的使用方式;
2. :ref:`Lod-Tensor <cn_user_guide_lod_tensor>` ,记录每一个样本的大小,减少无用的计算量,LoD 牺牲灵活性来提升性能。

如果一个batch内的样本无法通过分桶、排序等方式使得大小接近, 建议使用 :ref:`Lod-Tensor <cn_user_guide_lod_tensor>` 。