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

 更新时间:2018年07月30日 10:55:24   作者:诗蕊  
今天小编就为大家分享一篇TensorFlow Session会话控制&Variable变量详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

这篇文章主要讲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变量详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Pyscript使用本地Pyodide配置步骤

    Pyscript使用本地Pyodide配置步骤

    PyScript是“一个用于在 HTML(如 PHP)中交错 Python 的系统,这篇文章主要介绍了Pyscript使用本地Pyodide配置方法,需要的朋友可以参考下
    2022-12-12
  • python模块如何查看

    python模块如何查看

    在本篇文章中小编给大家整理的是关于python的模块位置的相关知识点,需要的朋友们可以参考下。
    2020-06-06
  • Python之os操作方法(详解)

    Python之os操作方法(详解)

    下面小编就为大家带来一篇Python之os操作方法(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • python中的闭包用法实例详解

    python中的闭包用法实例详解

    这篇文章主要介绍了python中的闭包用法,以实例形式详细分析了Python中闭包的概念及相关使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-05-05
  • Python3将ipa包中的文件按大小排序

    Python3将ipa包中的文件按大小排序

    这篇文章主要介绍了Python3将ipa包中的文件按大小排序,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-04-04
  • python django下载大的csv文件实现方法分析

    python django下载大的csv文件实现方法分析

    这篇文章主要介绍了python django下载大的csv文件实现方法,结合实例形式分析了Django框架下载csv大文件的相关操作技巧与注意事项,需要的朋友可以参考下
    2019-07-07
  • Python如何判断Excel单元格的值是否为空

    Python如何判断Excel单元格的值是否为空

    在Python中,你可以使用openpyxl库来处理Excel文件,这篇文章主要介绍了Python判断Excel单元格的值是否为空,需要的朋友可以参考下
    2024-06-06
  • 为Python的web框架编写MVC配置来使其运行的教程

    为Python的web框架编写MVC配置来使其运行的教程

    这篇文章主要介绍了为Python的web框架编写MVC配置来使其运行的教程,示例代码基于Python2.x版本,需要的朋友可以参考下
    2015-04-04
  • Django多对多ManyToManyField字段的使用

    Django多对多ManyToManyField字段的使用

    Django是一个支持多对多关系的Web框架,可以在模型中定义多对多关系,本文主要介绍了Django多对多ManyToManyField字段的使用,感兴趣的可以了解一下
    2023-12-12
  • Python的输入,输出和标识符详解

    Python的输入,输出和标识符详解

    这篇文章主要介绍了介绍了Python的输入,输出和标识符,有需要的朋友们可以参考一下,希望能给您带来帮助
    2022-01-01

最新评论