开发者学堂课程【深度学习框架 TensorFlow 入门:变量的介绍】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/773/detail/13544
变量的介绍
内容简介:
一、创建变量
二、修改命名空间
一、创建变量
TensorFlow 变量是表示程序处理的共享持久状态的最佳方法。变量通过 tf.VariableOP 类进行操作。变量与模型参数的关系是变量为模型参数所设计,模型参数可以用变量存储。变量的特点:
存储持久化
可修改值
可指定被训练
(1)创建变量
tf.Variable(initial value=None,trainable=True,collections=None.name=None)
initial _value:初始化的值
trainable:是否被训练
collections: 新変量將添加到列出的图的集合中 collections, 默认为
[GraphKeys.GLOBAL_VARIABLES], 如果 trainable 是 True 变量也被添加到图形集合
GraphKeys.TRAINABLE_VARIABLES
变量需要显式初始化,才能运行值
(2)代码列举:
def variable_demo():
“”“
变量的演示
:return:
““”
#创建变量
a = tf.Variable(initial_value=50)
b = tf.Variable(initial value=40)
c = tf.add(a, b)
print("a:\n", a)
print("b:\n", b)
print("c:\n", c)
return None
运行结果:
代码列举:
#创建变量
a = tf.Variable(initial_ _value=50)
b = tf.Variable(initial _value: =40)
c = tf.add(a, b)
print("a:\n", a)
print("b:\n", b)
print("c:\n", c)
#初始化变量
init = tf.global_ variables_ initializer()
#开启会话
with tf.Session() as sess:
#运行初始化
sess. run(init)
a_ value, b_ _value, c_ value = sess. run([a, b, c])
print("a_ value:\n", a_ value)
print("b_ value:\n", b_ value)
print("c_ value:\n", c_ value)]
return None
运行结果:
二、修改命名空间
使用 tf.variable_ scope()修改变量的命名空间
会在 OP 的名字前面增加命名空间的指定名字
代码案例:
with tf.variable_scope(“my_scope”);
a=tf.Variable(initial_value=50)
b=tf.Variable(initial_value=40)
with tf.variable_scope(“your_scope”);
c=tf.add(a,b)
……
……
return None
修改命名空间可以将代码模块化和将这些代码写成事件文件通过 Tensorboard 可视化出来可以看到改变命名空间的效果,让结构更加清晰。