Tensorflow中的变量与会话

Tensorflow基础之变量及会话

变量

TensorFlow 变量是表示由程序操纵的共享持久状态的最佳方法。变量可通过tf.Variable类进行操作。
Tf.Variable()构造函数构造的变量可以是一个任意类型和形状的Tensor。构造后,变量的类型和形状是固定的。
在训练模型时,某些参数变量是需要长期保存并不断的迭代更新的,可以将参数变量以Tensor的形式存储在某个变量中。

- 创建变量:

在创建一个变量时,将一个张量作为初始值传入构造函数Variable()。
例:

my_Variable = tf.Variable(tf.zeros([1, 2, 3]))   
#创建一个变量,该变量为三维变量,形状为[1, 2, 3]。

`在默认情况下,该变量具有dtype tf.float32。如果未指定类型,则从初始值中推断出dtype。

在需要赋值给一个变量时,使用assign,assign_add的方法,例:

V = tf.Variable(0.0)
V.assign_add(1)

- 变量的初始化:

在模型的其它操作进行之前,变量的初始化必须首先明确的完成。最简单明了的方法就是在模型运行前一次性对所有变量进行初始化操作。使用tf.initialize_all_variable()方法会所有变量进行初始化。
但是当你初始化的变量需要使用另外一个变量的初始化值进行初始化时,由于tf.initialize_all_variable()方法是并行地初始化所有变量,这时我们需要使用其它变量的initialized_value()的属性,直接把已初始化的值作为新变量的初始值。
例:

weights = tf.Variable(tf.random_normal([784, 200], stddev=0.35),name="weights")
w2 = tf.Variable(weights.initialized_value(), name="w2")

会话(tf.session)

会话,主要用于执行网络。所有关于神经网络的计算都在这里进行,它执行的依据是计算图或者计算图的一部分,同时,会话也会负责分配计算资源和变量存放,以及维护执行过程中的变量。

会话的使用方法:

#method 1:
import tendorflow as tf
Product = tf.constant(1.0)
sess = tf.Session()
print(sess.run(Product))
sess.close()
#该形式在使用完之后,不再需要时释放资源是很重要的,调用sess.close()方法释放资源
#method 2
import tensorflow as tf
Product = tf.constant(1.0)
with tf.Session() as sess:
	print(sess.run(Product))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值