tensorflow中很重要的一个部分就是Variable,它能构建一个变量,在计算图的运算过程中,其值会一直保存到程序运行结束,而一般的tensor张量在tensorflow运行过程中只是在计算图中流过,并不会保存下来,因此varibale主要用来保存tensorflow构建的一些结构中的参数,这样,这些参数才不会随着运算的消失而消失,才能最终得到一个模型。比如神经网络中的权重和bias等,在训练过后,总是希望这些参数能够保存下来,而不是直接就消失了,所以这个时候要用到Variable。注意,所有和varible有关的操作在计算的时候都要使用session会话来控制,包括计算,打印等等。
# -*- coding: utf-8 -*-
"""
Created on Mon Apr 3 11:07:29 2017
@author: zhangshaoxing
"""
import tensorflow as tf
a=tf.Variable(1)
b=tf.constant(1) #定义变量a=0和常量1,并且定义a的自加运算aplus1和更新a的值得操作update"""
aplus1=tf.add(a,b)
update=tf.assign(a,aplus1)
#设置完变量之后,必须要对变量进行初始化工作,变量才能使用
init=tf.initialize_all_variables()
with tf.Session() as sess:
sess.run(init) #运行初始化变量的计算
for i in range(10): #循环10次,查看a逐渐自加1的结果
sess.run(update) #执行变量a的自加运算
print(sess.run(a)) #打印变量a也需要用session.run
运行结果:
2
3
4
5
6
7
8
9
10
11
您的赞助将是我不断创作的最大动力,谢谢支持!!!
如果您觉得我的文章对您有帮助,可以通过以下方式进行赞赏: