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 相关文章推荐
Pyhton中防止SQL注入的方法
Feb 05 Python
在Apache服务器上同时运行多个Django程序的方法
Jul 22 Python
python数据预处理之将类别数据转换为数值的方法
Jul 05 Python
python中文编码与json中文输出问题详解
Aug 24 Python
python3 读取Excel表格中的数据
Oct 16 Python
selenium WebDriverWait类等待机制的实现
Mar 18 Python
学习python需要有编程基础吗
Jun 02 Python
python中怎么表示空值
Jun 19 Python
Python tempfile模块生成临时文件和临时目录
Sep 30 Python
python获取命令行参数实例方法讲解
Nov 02 Python
python os.rename实例用法详解
Dec 06 Python
Pillow图像处理库安装及使用
Apr 12 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 批量删除 sql语句
2009/06/05 PHP
php中cookie的使用方法
2014/03/29 PHP
DOM基础及php读取xml内容操作的方法
2015/01/23 PHP
php将字符串全部转换成大写或者小写的方法
2015/03/17 PHP
PHP也能干大事 随机函数
2015/04/14 PHP
PHP中你应该知道的require()文件包含的正确用法
2015/06/12 PHP
PHP实现的mysql主从数据库状态检测功能示例
2017/07/20 PHP
PHP实现的自定义图像居中裁剪函数示例【测试可用】
2017/08/11 PHP
PHP实现基于图的深度优先遍历输出1,2,3...n的全排列功能
2017/11/10 PHP
让mayfish支持mysqli数据库驱动的实现方法
2010/05/22 Javascript
异步javascript的原理和实现技巧介绍
2012/11/08 Javascript
Javascript 按位左移运算符使用介绍(
2014/02/04 Javascript
使用javascript控制cookie显示和隐藏背景图
2014/02/12 Javascript
浅谈angular2路由预加载策略
2017/10/04 Javascript
Angular中管道操作符(|)的使用方法
2017/12/15 Javascript
vue-image-crop基于Vue的移动端图片裁剪组件示例
2018/08/28 Javascript
jQuery点击页面其他部分隐藏下拉菜单功能
2018/11/27 jQuery
JS拖拽排序插件Sortable.js用法实例分析
2019/02/20 Javascript
Element-UI中Upload上传文件前端缓存处理示例
2019/02/21 Javascript
Node.js使用MongoDB的ObjectId作为查询条件的方法
2019/09/10 Javascript
JavaScript中的函数式编程详解
2020/08/22 Javascript
[01:16:50]DOTA2-DPC中国联赛 正赛 Phoenix vs CDEC BO3 第一场 3月7日
2021/03/11 DOTA
Python生成随机MAC地址
2015/03/10 Python
python启动应用程序和终止应用程序的方法
2019/06/28 Python
Django中多种重定向方法使用详解
2019/07/17 Python
python tornado使用流生成图片的例子
2019/11/18 Python
np.newaxis 实现为 numpy.ndarray(多维数组)增加一个轴
2019/11/30 Python
keras自定义回调函数查看训练的loss和accuracy方式
2020/05/23 Python
世界最大的私人旅行指南出版商:孤独星球
2016/08/23 全球购物
维多利亚的秘密阿联酋官网:Victoria’s Secret阿联酋
2019/12/07 全球购物
客户代表实习人员自我鉴定
2013/09/27 职场文书
自荐信不宜过于夸大
2013/11/06 职场文书
业务员自荐信范文
2014/04/20 职场文书
2014年学校党建工作汇报材料
2014/11/02 职场文书
体检通知范文
2015/04/21 职场文书
教师教育教学随笔
2015/08/15 职场文书