TensorFlow Session会话控制&Variable变量详解


Posted in Python onJuly 30, 2018

这篇文章主要讲TensorFlow中的Session的用法以及Variable。

Session会话控制

Session是TensorFlow为了控制和输出文件的执行语句,运行session.run()就能获得运算结果或者部分运算结果。我们在这里使用一个简单的矩阵相乘的例子来解释Session的两个用法。

首先我们要加载TensorFlow并建立两个矩阵以及两个矩阵所做的运算。这里我们建立一个一行两列的matrix1和一个两行一列的matrix2,让它们做矩阵的乘法。tf.matmul相当于numpy中的dot方法,都是做矩阵的product。

import tensorflow as tf

matrix1 = tf.constant([[2, 2]])
matrix2 = tf.constant([[2], [2]])

product = tf.matmul(matrix1, matrix2)

接下来我们使用第一种会话控制Session来激活product并得到计算结果:

sess = tf.Session()
result = sess.run(product)
print(result)
sess.close()

运行结果为:[[8]]

还有另外一种Session的打开模式同样可以激活product:

with tf.Session() as sess:
 result2 = sess.run(product)
 print(result2)

运行结果同样是[[8]]。在这里我们不需要我们单独做sess.close()的操作。

variable变量

与python的变量不同,在TensorFlow中如果我们要定义一个变量,必须使用tf.Variable()来定义它才是个变量,括号中可以包含的参数有变量的值,变量的名称等。这里我们用一个简单的加法运算来解释变量的用法。

首先导入tensorflow并定义变量state, 常量one,以及运算方法tf.add, tf.assign

import tensorflow as tf

state = tf.Variable(0, name='counter')
# 输出变量名
print(state.name)
one = tf.constant(1)

new_value = tf.add(state, one)
# 将new_value加载到state里面,这时state的值就是new_value
update = tf.assign(state, new_value)

我们可以将变量打印出来得到变量的信息:

init = tf.global_variables_initializer()

接下来我们就要用Session来将变量激活进行运算,并打印出state的结果:

with tf.Session() as sess:
 sess.run(init)
 for _ in range(3):
  sess.run(update)
  print(sess.run(state))

这里我们让update运行3次,也就是做3次加法,运行结果为:

TensorFlow Session会话控制&Variable变量详解

以上这篇TensorFlow Session会话控制&Variable变量详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python正则表达式实现截取成对括号的方法
Jan 06 Python
Python+tkinter使用80行代码实现一个计算器实例
Jan 16 Python
python去除文件中重复的行实例
Jun 29 Python
Python3 Post登录并且保存cookie登录其他页面的方法
Dec 28 Python
Django使用Channels实现WebSocket的方法
Jul 28 Python
Python全局锁中如何合理运用多线程(多进程)
Nov 06 Python
python 读取数据库并绘图的实例
Dec 03 Python
Python 实现try重新执行
Dec 21 Python
pymysql的简单封装代码实例
Jan 08 Python
python读取图片的几种方式及图像宽和高的存储顺序
Feb 11 Python
详解vscode实现远程linux服务器上Python开发
Nov 10 Python
python des,aes,rsa加解密的实现
Jan 16 Python
TensorFlow Session使用的两种方法小结
Jul 30 #Python
教你利用Python玩转histogram直方图的五种方法
Jul 30 #Python
对TensorFlow中的variables_to_restore函数详解
Jul 30 #Python
Python实现模拟浏览器请求及会话保持操作示例
Jul 30 #Python
tensorflow 打印内存中的变量方法
Jul 30 #Python
Python实现的多叉树寻找最短路径算法示例
Jul 30 #Python
tensorflow: variable的值与variable.read_value()的值区别详解
Jul 30 #Python
You might like
《魔兽争霸3》重制版究竟重制了什么?玩家:这么糊弄真的好吗?
2020/05/04 魔兽争霸
提升PHP执行速度全攻略(上)
2006/10/09 PHP
JavaScript中的History历史对象
2008/01/16 Javascript
JQuery 入门实例1
2009/06/25 Javascript
解决火狐浏览器下JS setTimeout函数不兼容失效不执行的方法
2012/11/14 Javascript
用表格输出1-1000之间的数字实现代码(附特效)
2013/04/21 Javascript
struts2+jquery+json实现异步加载数据(自写)
2013/06/24 Javascript
Nodejs极简入门教程(一):模块机制
2014/10/25 NodeJs
JavaScript弹出对话框的三种方式
2016/03/23 Javascript
jQuery validate验证插件使用详解
2016/05/11 Javascript
JavaScript中的Number数字类型学习笔记
2016/05/26 Javascript
使用js获取地址栏参数的方法推荐(超级简单)
2016/06/14 Javascript
AngularJS入门教程之数据绑定原理详解
2016/11/02 Javascript
Ajax实现不刷新取最新商品
2017/03/01 Javascript
JavaScript中undefined和null的区别
2017/05/03 Javascript
VS Code转换大小写、修改选中文字或代码颜色的方法
2017/12/15 Javascript
实例讲解JavaScript 计时事件
2020/07/04 Javascript
[51:10]VP vs VGJ.S 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
Python设计足球联赛赛程表程序的思路与简单实现示例
2016/06/28 Python
教你使用python画一朵花送女朋友
2018/03/29 Python
解决python selenium3启动不了firefox的问题
2018/10/13 Python
利用ImageAI库只需几行python代码实现目标检测
2019/08/09 Python
pymysql模块的操作实例
2019/12/17 Python
python Timer 类使用介绍
2020/12/28 Python
python pyg2plot的原理知识点总结
2021/02/28 Python
2019年c语言经典面试题目
2016/08/17 面试题
行政总监岗位职责
2013/12/05 职场文书
幼儿园家长会邀请函
2014/01/15 职场文书
人力资源主管职责范本
2014/03/05 职场文书
创意广告词
2014/03/17 职场文书
岗位工作说明书
2014/07/29 职场文书
医德考评自我评价
2014/09/14 职场文书
党的群众路线教育实践活动查摆问题及整改措施
2014/10/10 职场文书
护士年终考核评语
2014/12/31 职场文书
会议通知
2015/04/15 职场文书
高考升学宴主持词
2019/06/21 职场文书