一、定义
TensorFlow :是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。
节点:一般用来表示施加的数学操作,但也可以表示数据输入(feed in)的起点/输出(push out)的终点,或者是读
取/写入持久变量(persistent variable)的终点。
线:表示"节点"之间的输入/输出关系。这些数据“线”可以输运“size可动态调整”的多维数据数组,即“张量”(tensor)。
二、工作过程
TensorFlow整个算法包含三个部分,分别是计算图、张量和模型会话
2.1、计算图
计算图是TensorFlow整个框架,按照计算图启动一个会话,通过会话中完成变量赋值、计算等操作,得到结果。整个计
算图分为两个部分。
(1)构造部分:主要工作是创建源节点和源节点输出传递给其他节点做运算
(2)执行部分:通过session执行图中的计算
2.2、张量
在TensorFlow中,张量是对运算结果的引用,运算结果多以数组的形式存储,与numpy中数组不同的是张量还包含三个
重要属性名字、维度、类型。张量的名字,是张量的唯一标识符,通过名字可以发现张量是如何计算出来的。比如"add:0"代表
的是计算节点"add"的第一个输出结果。维度和类型与数组类似。
2.3、模型会话
用来执行构造好的计算图,同时会话拥有和管理程序运行时的所有资源。当计算完成之后,需要通过关闭会话来帮助系统回
收资源。
在TensorFlow中使用会话有两种方式,第一种需要明确调用会话生成函数和关闭会话函数:
# 创建session session = tensorflow.Session() #获取运算结果 session.run() #关闭会话,释放资源 session.close()
第二种可以使用with的方式:
with tf.Session() as session: session.run()