119、TensorFlow如何创建计算图
#Dataflow是并行化编程常用的方式 #当使用TensorFlow执行你的程序的时候有以下几个优点 #1、并行化 。通过声明的边来代表操作之间的依赖 # 对系统来说确定可以并行化的操作是比较容易的 #2、分布式执行: # 通过使用声明的边来代表操作之间值的传递 # 这样使得tensorflow在跨多平台之间执行你的程序, # TensorFlow在不同的设备之间加入了必要的协调和交流 #3、编译 # TensorFlow的XLA compiler能使用你的数据流图的信息来生成更快的代码 # 列如通过合并相邻的操作 #4、可移植性: # 数据流图是与语言独立的表示在你的模型代码中,你可以构建一个数据流图通过python # 并且将它存储在保存模型中,并且将它恢复到c++代码,以得到更低延时的前向计算 #tf.Graph: #tf.Graph包括两种相关的信息 #Graph structure : 图的节点和边,指示了如何将独立的操作组合到一起 # 但不是说明他们应该如何使用 #Graph collections: TensorFlow提供了一个通用的机制对于在tf.Graph中存储集合的元数据 #可以通过使用tf.add_to_collection方法将一个对象添加到集合中 #tf.GraphKeys定义了一些标准的key #tf.get_collection可以让你通过key来找到对象 #TensorFlow的许多部分都应用了这个能力:例如当你创建一个tf.Variable #它就被默认地添加到了集合中,表示为全局变量和可以训练的变量 #当你之后使用tf.train.Saver或者tf.train.Optimizer的时候 #在这些集合中的变量就被当成了默认的参数