采用TensorFlow支持通过tf.Graph函数来生成新的向量图,代码如下:
import tensorflow as tf
# a = tf.constant([1.0,2.0],name="a")
# b = tf.constant([2.0,3.0],name="b")
# result = a+b
# print(a.graph is tf.get_default_graph())
g1 = tf.Graph()
with g1.as_default():
v = tf.get_variable("v",initializer=tf.zeros_initializer(shape=[1]))
g2 = tf.Graph()
with g2.as_default():
v = tf.get_variable("v",initializer=tf.ones_initializer(shape=[1]))
with tf.Session(graph=g1) as sess:
tf.global_variables_initializer().run()
with tf.variable_scope("",reuse=True):
print(sess.run(tf.get_variable("v")))
# with tf.Session(graph=g2) as sess:
# tf.global_variables_initializer().run()
# with tf.variable_scope("",reuse=True):
# print(sess.run(tf.get_variable("v")))
执行后发生如下错误:
解决办法:因为上述代码写法是TensorFlow旧版本的写法,将Line6 和Line10 改如下如下可以实现代码的正常运行:
v = tf.get_variable("v",initializer=tf.zeros_initializer()(shape = [1]))
v = tf.get_variable( "v",initializer=tf.ones_initializer()(shape = [1]))