tensorflow 变量的创建、初始化、执行和输出

来源:互联网 发布:约会交友app源码 编辑:程序博客网 时间:2024/06/07 11:10

本文是对tensorflow中文文档http://wiki.jikexueyuan.com/project/tensorflow-zh/how_tos/variables.html的理解。

当训练模型时,用变量来存储和更新参数。建模时它们需要被明确地初始化,模型训练后它们必须被存储到磁盘。这些变量的值可在之后模型训练和分析是被加载。


创建:

# 创建一个变量, 初始化为标量 0.

state = tf.Variable(0, name="counter")

# 创建一个 op, 其作用是使 state 增加 1
one = tf.constant(1)
new_value = tf.add(state, one)
update = tf.assign(state, new_value)


初始化


# 首先必须增加一个`初始化` op 到图中.
init_op = tf.initialize_all_variables()


执行:

# 启动图, 运行 op
with tf.Session() as sess:


    # 运行 'init' op
    sess.run(init_op)
    # 打印 'state' 的初始值
    print sess.run(state)
    # 运行 op, 更新 'state', 并打印 'state'
    for _ in range(3):
          sess.run(update)
          print sess.run(state)


结果:

# 输出:
# 0
# 1
# 2
# 3


注意:

对于tf.constant

如果定义:a =tf.constant(-2.0,shape=[3])

>>a=[-2.0,-2.0,-2.0]


tf.Variable(初始化值,name='名字')#不要定义shape,这个初始化值,可以是一个数值(如2.0),也可以是一个常量 如tf.Variable(a)得到的就是初始化值为[-2.0,-2.0,-2.0]的变量


tf.get_variable(dtype = tf.int32,shape = [3,2],name='qw')

>>[[ 0.36096191 -0.78045774]
 [ 0.33877492  0.87490582]
 [-0.83722663 -0.17767143]]

随机初始化,得到一个shape为[3,2]的矩阵。









阅读全文
0 0
原创粉丝点击