tensorflow是一个机器学习库.
tensorflow 从名字翻译过来是'张量流'.计算(操作)是一个加工过程,输入张量,经过加工后得到另一个输出张量.复杂的计算可以看作是一系列加工流,即输入数据,经过一系列加工流后输出结果张量. 每一个操作(加工)相互连接,构成一个有向图.
A Tensor
is a symbolic handle to one of the outputs of an Operation
. It does not hold the values of that operation's output, but instead provides a means of computing those values in a TensorFlow tf.Session
.
Tensor是一个操作结果的符号句柄,它本身不包含任何输出值,只是定义了计算结果的数据格式(shape和type)。即,数据是几维的,每一维的大小,数据元素的类型。
它本身没有操作的输出值,通过会话(tf.Session),可以计算出Tensor的值.
# Build a dataflow graph.
c = tf.constant([[1.0, 2.0], [3.0, 4.0]])
d = tf.constant([[1.0, 1.0], [0.0, 1.0]])
e = tf.matmul(c, d)
# Construct a `Session` to execute the graph.
sess = tf.Session()
# Execute the graph and store the value that `e` represents in `result`.
result = sess.run(e)
c,d,e都是一个Tensor,c,d定义了一个2x2的矩阵,每个元素是double类型。c,d是tf.constant操作的结果返回的Tensor,它没有具体的值,print(c)输出的是:
Tensor("Const:0", shape=(2, 2), dtype=float32)
如果要取得其中的值,必须通过会话,运行sess.run(c)才能返回结果。
array([[1., 2.],
[3., 4.]], dtype=float32)
上述计算可以用计算图描述。