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实现上传样本到virustotal并查询扫描信息的方法
Oct 05 Python
Python中对列表排序实例
Jan 04 Python
Python实现通过文件路径获取文件hash值的方法
Apr 29 Python
Python判断变量是否为Json格式的字符串示例
May 03 Python
python3+PyQt5重新实现自定义数据拖放处理
Apr 19 Python
运行django项目指定IP和端口的方法
May 14 Python
Python爬虫包BeautifulSoup异常处理(二)
Jun 17 Python
在PyCharm导航区中打开多个Project的关闭方法
Jan 17 Python
Python对象与引用的介绍
Jan 24 Python
CentOS7下安装python3.6.8的教程详解
Jan 03 Python
PyCharm中Matplotlib绘图不能显示UI效果的问题解决
Mar 12 Python
python关于集合的知识案例详解
May 30 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
使用PHP similar text计算两个字符串相似度
2015/11/06 PHP
JavaScript 全角转半角部分
2009/10/28 Javascript
jQuery的$.proxy()应用示例介绍
2014/04/03 Javascript
全面解析Bootstrap排版使用方法(文字样式)
2015/11/30 Javascript
jQuery获取复选框被选中数量及判断选择值的方法详解
2016/05/25 Javascript
JS实现table表格数据排序功能(可支持动态数据+分页效果)
2016/05/26 Javascript
Js类的静态方法与实例方法区分及jQuery拓展的两种方法
2016/06/03 Javascript
jQuery Tags Input Plugin(添加/删除标签插件)详解
2016/06/20 Javascript
JavaScript实战(原生range和自定义特效)简单实例
2016/08/21 Javascript
很棒的一组js图片轮播特效
2017/01/12 Javascript
小程序Request的另类用法详解
2019/08/09 Javascript
微信小程序商品详情页底部弹出框
2019/11/22 Javascript
JavaScript装饰者模式原理与用法实例详解
2020/03/09 Javascript
[47:43]Alliance vs KG 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/18 DOTA
Python输入二维数组方法
2018/04/13 Python
django 发送手机验证码的示例代码
2018/04/25 Python
Python 最大概率法进行汉语切分的方法
2018/12/14 Python
用Python实现大文本文件切割的方法
2019/01/12 Python
python 通过类中一个方法获取另一个方法变量的实例
2019/01/22 Python
Python 元组拆包示例(Tuple Unpacking)
2019/12/24 Python
详解opencv中画圆circle函数和椭圆ellipse函数
2019/12/27 Python
PyTorch 随机数生成占用 CPU 过高的解决方法
2020/01/13 Python
Python爬虫库requests获取响应内容、响应状态码、响应头
2020/01/25 Python
pycharm运行程序时看不到任何结果显示的解决
2020/02/21 Python
python爬虫实现爬取同一个网站的多页数据的实例讲解
2021/01/18 Python
英国电器零售商:PRC Direct
2018/06/21 全球购物
世界上最大的隐形眼镜商店:1-800 Contacts
2018/11/03 全球购物
鲜花方阵解说词
2014/02/13 职场文书
光信息科学与技术专业职业生涯规划
2014/03/13 职场文书
《充气雨衣》教学反思
2014/04/07 职场文书
维修工先进事迹
2014/05/29 职场文书
医药公司采购员岗位职责
2014/09/12 职场文书
2014年维稳工作总结
2014/11/18 职场文书
浅析Python中的套接字编程
2021/06/22 Python
解决xampp安装后Apache无法启动
2022/03/21 Servers
拙作再改《我的收音机情缘》
2022/04/05 无线电