3.2 TensorFlow数据模型 ---- 张量
在TensorFlow程序中,所有的数据都通过张量的形式来表示。从功能的角度上看,张量可以简单理解为多维数组。但张量在TensorFlow中的实现并不是直接采用的数组的形式,它只是对TensorFlow中运算结果的引用。在张量中并没有真正的保存数字,它保存的是如何得到这些数字的计算过程。
一个张量主要包含了三个属性:名字,维度和类型。其中张量的属性名字不仅使一个张量的唯一标识符,它同样给出了这个张量是如何计算出来的。张量的第二个属性张量的维度,这个属性描述了一个张量的维度信息。张量的第三个属性是类型,每一个张量都会有一个唯一的类型。
张量的使用
第一类用途是对中间计算结果的引用。当一个计算包含很多中间结果时,使用张量可以提高代码的可读性。
#使用张量计算中间结果 a = tf.constant([1.0, 2.0], name = "a") b = tf.constant([2.0, 3.0], name = "b") result = a + b #直接计算向量的和,可读性较差 result = tf.constant([1.0, 2.0], name = "a") + tf.constant([2.0, 3.0], name = "b")