TensorFlow 学习积累(1):variable 和 placeholder
来源:互联网 发布:言论自由 知乎 编辑:程序博客网 时间:2024/06/07 11:12
variable和placeholder
variable :不丢失
variable 用于构建一个变量,在计算图的运算过程中,其值会一直保存到程序运行结束,而一般的tensor张量在tensorflow运行过程中只是在计算图中流过,并不会保存下来。
因此varibale主要用来保存tensorflow构建的一些结构中的参数,这些参数才不会随着运算的消失而消失,才能最终得到一个模型。
比如神经网络中的权重和bias等,在训练过后,总是希望这些参数能够保存下来,而不是直接就消失了,所以这个时候要用到Variable。
注意,所有和varible有关的操作在计算的时候都要使用session会话来控制,包括计算,打印等等。
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
placeholder :喂数据
tensorflow中又一保存数据的利器,placeholder(type,strucuct…),它的第一个参数是你要保存的数据的数据类型,大多数是tensorflow中的float32数据类型,后面的参数就是要保存数据的结构,比如要保存一个1×2的矩阵,则struct=[1 2]。
它在使用的时候和前面的variable不同的是在session运行阶段,需要给placeholder提供数据,利用feed_dict的字典结构给placeholdr变量“喂数据”。
input1 = tf.placeholder(tf.float32)
input2 = tf.placeholder(tf.float32)
# output = tf.multiply(input1,input2)#乘法
# output = tf.add(input1,input2)#加法
# output = tf.mod(input1,input2)#余数
# output = tf.sub(input1,input2)#减发
output = tf.div(input1,input2)#除法
print(sess.run(output,feed_dict={input1:[7.],input2:[2.]}))
- TensorFlow 学习积累(1):variable 和 placeholder
- tensorflow中Variable和Placeholder的学习
- tensorflow框架学习(一)placeholder 与variable
- TensorFlow Session&&Variable&&PlaceHolder
- TensorFlow Variable, Placeholder 以及激励函数学习小结
- Tensorflow 的组件 placeholder,Variable
- Tensorflow编程学习笔记(1)_Session、Variable、Fetch和Feed
- TensorFlow 插曲-- tf.placeholder 与 tf.Variable
- tensorflow学习:placeholder用法
- TensorFlow学习之 placeholder
- TensorFlow学习笔记(六)Variable变量
- Tensorflow学习:Variable变量
- tensorflow学习---Variable
- Tensorflow深度学习之四:placeholder和Session
- Tensorflow学习: Placeholder占位符
- TensorFlow 辨异 —— tf.placeholder 与 tf.Variable
- TensorFlow 辨异 —— tf.placeholder 与 tf.Variable
- TensorFlow 辨异 —— tf.placeholder 与 tf.Variable
- js-某个字段有值即把该行用颜色标记
- Error:Execution failed for task ':caldroid:compileDebugJavaWithJavac'. > Cannot find System Java Com
- 【Matlab/Python】Matlab和Python之间的数据传输
- 用Swing开发GUI程序(四)JList
- C#中委托的+=和-=深入研究 委托的多次注册
- TensorFlow 学习积累(1):variable 和 placeholder
- 趋势递增分布式ID生成方法:Snowflake
- Java中静态、动态代理的实现
- 代码上传git 码云
- APACHE配置SSL【使用代理转发/请求分别走HTTP和HTTPS】
- codility CountDistinctSlices
- 飞跃绝境长城之openVPN的搭建
- 近期海投笔试遇到的问题(2)
- 报警邮件的php脚本