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求crc32值的方法
Oct 05 Python
Python中的anydbm模版和shelve模版使用指南
Jul 09 Python
python 添加用户设置密码并发邮件给root用户
Jul 25 Python
Python中的错误和异常处理简单操作示例【try-except用法】
Jul 25 Python
浅谈Django中的数据库模型类-models.py(一对一的关系)
May 30 Python
利用python在excel里面直接使用sql函数的方法
Feb 08 Python
python单例模式原理与创建方法实例分析
Oct 26 Python
Python Lambda函数使用总结详解
Dec 11 Python
Python 实现OpenCV格式和PIL.Image格式互转
Jan 09 Python
python 数据分析实现长宽格式的转换
May 18 Python
matplotlib实现数据实时刷新的示例代码
Jan 05 Python
Python基于opencv的简单图像轮廓形状识别(全网最简单最少代码)
Jan 28 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随机抽奖实例分析
2015/03/04 PHP
基于CI框架的微信网页授权库示例
2016/11/25 PHP
PHP开发APP端微信支付功能
2017/02/17 PHP
PHP学习笔记之session
2018/05/06 PHP
js和jquery批量绑定事件传参数一(新猪猪原创)
2010/06/23 Javascript
JavaScript程序员应该知道的45个实用技巧
2014/03/04 Javascript
jquery操作checked属性以及disabled属性的多种方法
2014/06/20 Javascript
JavaScript处理解析JSON数据过程详解
2015/09/11 Javascript
JavaScript事件详细讲解
2016/06/27 Javascript
JavaScript实现打地鼠小游戏
2020/04/23 Javascript
jQuery选择器特殊字符与属性空格问题
2017/08/14 jQuery
Vue使用vue-cli创建项目
2017/09/01 Javascript
详解微信小程序框架wepy踩坑记录(与vue对比)
2019/03/12 Javascript
JS实现json数组排序操作实例分析
2019/10/28 Javascript
vue 实现通过vuex 存储值 在不同界面使用
2019/11/11 Javascript
[01:19:46]EG vs Secret 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.21.mp4
2020/07/19 DOTA
python 实时遍历日志文件
2016/04/12 Python
Python 实现删除某路径下文件及文件夹的实例讲解
2018/04/24 Python
Django框架的中的setting.py文件说明详解
2018/10/15 Python
详解Python3中ceil()函数用法
2019/02/19 Python
Python使用tkinter模块实现推箱子游戏
2019/10/08 Python
Python打开文件、文件读写操作、with方式、文件常用函数实例分析
2020/01/07 Python
python 操作mysql数据中fetchone()和fetchall()方式
2020/05/15 Python
python中什么是面向对象
2020/06/11 Python
Python爬虫+tkinter界面实现历史天气查询的思路详解
2021/02/22 Python
CSS3实现各种图形的示例代码
2016/10/19 HTML / CSS
红色故事演讲稿
2014/05/22 职场文书
商场促销活动总结
2014/07/10 职场文书
离婚协议书范本样本
2014/08/19 职场文书
研究生导师推荐信
2014/09/06 职场文书
2014年教师节讲话稿5篇
2014/09/10 职场文书
地下停车场租赁协议范本
2014/10/07 职场文书
社区植树节活动总结
2015/02/06 职场文书
2016年小学端午节活动总结
2016/04/01 职场文书
css 边框添加四个角的实现代码
2021/10/16 HTML / CSS
Django + Taro 前后端分离项目实现企业微信登录功能
2022/04/07 Python