在 TF 中,一个张量如下表述:
my_tensor = tf.constant(0., shape=[6,3,7])
print(my_tensor) # -> Tensor("Const_1:0", shape=(6, 3, 7), dtype=float32)
一个张量应该包含如下内容:
- 一个名字,它用于键值对的存储,用于后续的检索: Const: 0
- 一个形状描述, 描述数据的每一维度的元素个数:(6,3,7)
- 数据类型,比如 float32
从向量空间到实数域的多重线性映射(multilinear maps)
在 TensorFlow 中用 tensor 数据结构来代表所有的数据, 计算图中, 操作间传递的数据都是 tensor。
张量是一个拥有 n 维度的数组,并且其中的值都拥有相同的类型,比如整型,浮点型,布尔型等等。
张量可以用我们所说的形状来描述:我们用列表(或元祖)来描述我们的张量的每个维度的大小
不同维度的Tensor | 俗称 | 表示方法 |
---|---|---|
n 维度的张量 | 多维数组 | (D_0, D_1, D_2, ..., D_n-1) |
W x H 大小的张量 | 矩阵 | (W, H) |
尺度是 W 的张量 | 向量 | (W, ) |
0维度的张量 | 标量 | ()或(1, ) |
注意: D_*,W,H 都是整型。
Tensor 种类 | Annotation |
---|---|
常值张量(constant) | 是不需要初始化的。 |
变量(Variable) | 是维护图执行过程中的状态信息的. 需要它来保持和更新参数值,是需要动态调整的。必须先通过 tf.global_variables_initializer() 初始化,然后才有值。 |