Graph()可以创建图,下面的c1和c的图不是同一个图,g2和c是同一个图
import tensorflow as tf c = tf.constant(0.0) g = tf.Graph() with g.as_default(): c1 = tf.constant(0.0) print(c1.graph) print(g) print(c.graph) g2 = tf.get_default_graph() print(g2) # 重置图需要释放所有资源,否则会报错 tf.reset_default_graph() g3 = tf.get_default_graph() print(g3)重置默认图后,会重新创建一个默认图,g3和g2不相等
<tensorflow.python.framework.ops.Graph object at 0x000001D96493F6D8> <tensorflow.python.framework.ops.Graph object at 0x000001D96493F6D8> W0526 18:46:41.901327 12760 deprecation_wrapper.py:119] From C:/projects/p520/p4.py:12: The name tf.get_default_graph is deprecated. Please use tf.compat.v1.get_default_graph instead. <tensorflow.python.framework.ops.Graph object at 0x000001D96492A940> <tensorflow.python.framework.ops.Graph object at 0x000001D96492A940> <tensorflow.python.framework.ops.Graph object at 0x000001D90BB17DA0>获取图的所有操作:
allops = g3.get_operations()可以看到,在图中声明常量也算一个操作
[<tf.Operation 'c1' type=Const>, <tf.Operation 'c2' type=Const>, <tf.Operation 'exop' type=MatMul>]