8、关于Variable的tf.variable与tf.get_variable代码解析

 1 import tensorflow as tf
  2 tf.reset_default_graph()
  3 var1=tf.Variable(10.0,name="var1")
  4 var2=tf.Variable(11.0,name="var1")
  5 var3=tf.Variable(12.0)
  6 var4=tf.Variable(13.0)
  7 with tf.variable_scope("test1" ):
  8     var5=tf.get_variable('var1',shape=[2],dtype=tf.float32)
  9 with tf.variable_scope("test2" ):
 10     var6=tf.get_variable('var1',shape=[2],dtype=tf.float32)
 11 
 12 var7=tf.get_variable('var1',shape=[2],dtype=tf.float32)
 13 print("var1:",var1.name) #print variable 1
 14 print("var2:",var2.name) #print variable 2
 15 print("var3:",var3.name) #print variable 3
 16 print("var4:",var4.name) #print variable 4
 17 print("var5:",var5.name) #print get_variable 1
 18 print("var6:",var6.name) #print get_variable
 19 print("var7:",var7.name)                  

运行结果:

代码分析: 

1、tf.reset_default_graph函数用于清除默认图形堆栈并重置全局默认图形

2、tf.variable与tf.get_variable都可以用来创建一个变量

3、tf.variable创建会检测变量名是否冲突,如果冲突则自己重新命名1个新的变量名,而tf.get_variable 如果遇到冲突则会报错

4、with tf.variable_scope("test2" ):

tf.variable_scope(): 可以让变量有相同的命名,包括tf.get_variable得到的变量,还有tf.Variable变量

它返回的是一个用于定义创建variable(层)的op的上下文管理器。

可变范围允许创建新的variable并分享已创建的variable,同时提供检查,不会意外创建或共享

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值