5、变量和可视化

允我心安 提交于 2019-12-04 08:28:44

1、变量的创建

 变量也是一种op,是一种特殊的张量,能够进行存储持久化(用于保存参数,系数等),它的值就是张量,默认被训练

  tf.Variable(initial_ value=None,name=None, trainable=True)  (name表示在可视化中显示的名字)

  创建-一个带值initial _value的新变量,initial_ value初始值,可以是随机的值

 

  • assign(value)

  为变量分配一个新值,返回新值

  • eval(session=None)

  计算并返回此变量的值

  • name 属性表示变量名字
1 import tensorflow as tf
2 import os
3 os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2' #去掉警告,将警告级别提升
4 
5 a = tf.constant([1,2,3,4,5])
6 var = tf.Variable(tf.random.normal([2,3],mean=0.0,stddev=1.0)) #random.normal从正态分布中输出随机值,平均值0.0,标准差1.0
7 print(a)
8 print(var)

输出 :

Tensor("Const_1:0", shape=(5,), dtype=int32)
<tf.Variable 'Variable:0' shape=(2, 3) dtype=float32_ref>

 

 

2、变量的初始化  (变量在进行run时,必须先要进行初始化)

 没有进行初始化 1 import tensorflow as tf
 2 import os
 3 os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2' #去掉警告,将警告级别提升
 4 
 5 a = tf.constant([1,2,3,4,5])
 6 var = tf.Variable(tf.random.normal([2,3],mean=0.0,stddev=1.0)) #random.normal从正态分布中输出随机值,平均值0.0,标准差1.0

 7 with tf.Session() as sess:
 8     print(sess.run([a,var]))

输出:

Attempting to use uninitialized value Variable 

 添加一个初始化所有变量的op(tf.global_variables_initializer())在会话中开启
 1 import tensorflow as tf
 2 import os
 3 os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2' #去掉警告,将警告级别提升
 4 
 5 a = tf.constant([1,2,3,4,5])
 6 var = tf.Variable(tf.random.normal([2,3],mean=0.0,stddev=1.0)) #random.normal从正态分布中输出随机值,平均值0.0,标准差1.0
 7 
 8 #在打印var之前必须做一个显示的初始化
 9 init_op = tf.global_variables_initializer()  #不需要传入值
10 
11 with tf.Session() as sess:
12     sess.run(init_op)   #必须运行初始化op
13     print(sess.run([a,var]))

输出:

[array([1, 2, 3, 4, 5]), array([[-0.11310391,  1.3286809 ,  0.06200764],
       [ 0.45713297, -0.33347377,  1.4530548 ]], dtype=float32)]

 

3、变量的作用域

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!