Tensorflow:在不同的计算图上定义和使用变量

# 相当于实例化一个类g1
g1 = tf.Graph()

# 将计算图g1设置为默认图  
with g1.as_default():
    # 在计算图g1中定义变量“v”,并设置初始值为0。
    # 进行初始化  "v"表示名称 initializer表示初始化,可以使用各种初始化的方法
    # tf.zeros_initializer(shape=[1])   初始化为0
    v = tf.get_variable(
         "v", initializer=tf.zeros_initializer(shape=[1]))  
  
g2 = tf.Graph()
with g2.as_default():
    # 在计算图g2中定义变量“v”,并设置初始值为1。
    v = tf.get_variable(
    "v", initializer=tf.ones_initializer(shape=[1]))  
  
# 在计算图g1中读取变量“v”的取值。
#将g1作为当前的作用域
with tf.Session(graph=g1) as sess:
    # 初始化所有的变量
    tf.initialize_all_variables().run()
    # tf.variable_scope返回相应的变量
    with tf.variable_scope("", reuse=True):
         # 在计算图g1中,变量“v”的取值应该为0,所以下面这行会输出[0.]。
         print(sess.run(tf.get_variable("v")))   
  
# 在计算图g2中读取变量“v”的取值。
with tf.Session(graph=g2) as sess:
    tf.initialize_all_variables().run()
    with tf.variable_scope("", reuse=True):
        # 在计算图g2中,变量“v”的取值应该为1,所以下面这行会输出[1.]。
        print(sess.run(tf.get_variable("v")))  

tf.varuable_scope()用法详解见:http://www.pianshen.com/article/5291273540/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值