对于如何创建图并开启session,参考如下

# -- encoding:utf-8 --

import tensorflow as tf

# 定义常量矩阵a和矩阵b

a=tf.constant([[1,2],[3,4]],dtype=tf.int32)

b=tf.constant([5,6,7,8],dtype=tf.int32,shape=[2,2])

# 2.以a和b做为输入,进行矩阵的乘法操作.

c=tf.matmul(a,b,name='matmu1')

print(type(c))
print(c) # 3.以a和c为输入,进行矩阵的加法操作 g=tf.add(a,c,name='add')
print(g) # 4.添加减法
h=tf.subtract(b,a,name='b-a')
l=tf.matmul(h,c)
r=tf.add(g,l) # 回话构建和启动
sess=tf.Session()
print(sess) # 调用session的run方法来执行矩阵的加法,得到c的记过值
# 不需要考虑图中间的运算,在允许的时候只需要关注最终结果对应的对象已经所需要的输入数据值
# 只需要传递仅需所需要得到的结果对象,会自动的根据图中的依赖关系触发所有相关的OP操作的执行
# 如果op之间没有依赖关系,tensorflow底层会并行的执行op -->自动进行
# fetches:表示获取那个op操作的结果值
result=sess.run(fetches=[c,r])
print("type:{},value:{}".format(type(result),result))
# print(r.eval()) # 关闭回话
sess.close() # 使用with 方法创建session 可以自动关闭session.
with tf.Session() as sess2:
print(sess2)
print("sess2 run:{}",format(sess2.run(c)))
print("c eval:{}".format(c.eval())) #交互式回话构建
sess3=tf.InteractiveSession()
print("InteractiveSession>>>>>>>>")
print(r.eval())
print(sess3.run(c)) # print("变量a是否在默认图中:{}".format(a.graph is tf.get_default_graph()))
#
# # 使用新的构建的图
# graph=tf.Graph()
# with graph.as_default():
# # 此时在这个代码块中,使用的就是新的定义的图graph(相当于把默认图换成了graph)
# d=tf.constant(5.0)
# print("变量d是否在新图graph中:{}".format(d.graph is graph))
# print(d.graph is tf.get_default_graph())
# with tf.Graph().as_default() as g2:
# e=tf.constant(6.0)
# print("变量e是否在新图g2中:{}".format(e.graph is g2)) # 错误的操作
# f=tf.add(d,e)
# print("变量f的图;{}".format(f.graph))

tensoflow学习入门一的更多相关文章

  1. 每天成长一点---WEB前端学习入门笔记

    WEB前端学习入门笔记 从今天开始,本人就要学习WEB前端了. 经过老师的建议,说到他每天都会记录下来新的知识点,每天都是在围绕着这些问题来度过,很有必要每天抽出半个小时来写一个知识总结,及时对一天工 ...

  2. C# BackgroundWorker组件学习入门介绍

    C# BackgroundWorker组件学习入门介绍 一个程序中需要进行大量的运算,并且需要在运算过程中支持用户一定的交互,为了获得更好的用户体验,使用BackgroundWorker来完成这一功能 ...

  3. 给深度学习入门者的Python快速教程 - 番外篇之Python-OpenCV

    这次博客园的排版彻底残了..高清版请移步: https://zhuanlan.zhihu.com/p/24425116 本篇是前面两篇教程: 给深度学习入门者的Python快速教程 - 基础篇 给深度 ...

  4. 给深度学习入门者的Python快速教程 - numpy和Matplotlib篇

    始终无法有效把word排版好的粘贴过来,排版更佳版本请见知乎文章: https://zhuanlan.zhihu.com/p/24309547 实在搞不定博客园的排版,排版更佳的版本在: 给深度学习入 ...

  5. UML学习入门就这一篇文章

    1.1 UML基础知识扫盲 UML这三个字母的全称是Unified Modeling Language,直接翻译就是统一建模语言,简单地说就是一种有特殊用途的语言. 你可能会问:这明明是一种图形,为什 ...

  6. Stanford Parser学习入门(2)-命令行运行

    在Stanford parser目录中已经定义了一部分命令行工具以及图形界面,本文将介绍如何在windows使用这些工具进行语法分析,Linux下也有shell可以使用. 关于如何搭建环境请参考上一篇 ...

  7. Python学习入门基础教程(learning Python)--5.6 Python读文件操作高级

    前文5.2节和5.4节分别就Python下读文件操作做了基础性讲述和提升性介绍,但是仍有些问题,比如在5.4节里涉及到一个多次读文件的问题,实际上我们还没有完全阐述完毕,下面这个图片的问题在哪呢? 问 ...

  8. 深度学习入门实战(二)-用TensorFlow训练线性回归

    欢迎大家关注腾讯云技术社区-博客园官方主页,我们将持续在博客园为大家推荐技术精品文章哦~ 作者 :董超 上一篇文章我们介绍了 MxNet 的安装,但 MxNet 有个缺点,那就是文档不太全,用起来可能 ...

  9. Shell脚本编程学习入门 02

    Shell脚本编程学习入门是本文要介绍的内容,我们可以使用任意一种文字编辑器,比如gedit.kedit.emacs.vi等来编写shell脚本,它必须以如下行开始(必须放在文件的第一行):   #! ...

随机推荐

  1. zabbix监控之自定义item

    zabbix安装完成后,当需要使用自定义脚本构建自定义item必须注意以下几点: 1.首先使用zabbix_get手动在zabbix-server服务端获取监控的默认的item值,如下: [root@ ...

  2. 2018-2019-1 20189218《Linux内核原理与分析》第九周作业

    进程调度的时机 进程调度时机就是内核调用schedule函数的时机.当内核即将返回用户空间时,内核会检查need_resched标志是否设置.如果设置,则调用schedule函数,此时是从中断(或者异 ...

  3. C# 取form表单的数据

    //key代表form表单中html元素的name属性值 public static string StringForm(string key) { string result = null; res ...

  4. JS ——DOM,BOM(包含盒模型,动画)总结

    JS盒模型 content: 通过计算后样式获取padding + content: box.clientWidth | box.clientHeightborder + padding + cont ...

  5. P1349 广义斐波那契数列(矩阵加速)

    P1349 广义斐波那契数列 题目描述 广义的斐波那契数列是指形如an=pan-1+qan-2的数列.今给定数列的两系数p和q,以及数列的最前两项a1和a2,另给出两个整数n和m,试求数列的第n项an ...

  6. POJ 1751 Highways(最小生成树&Prim)题解

    思路: 一开始用Kruskal超时了,因为这是一个稠密图,边的数量最惨可能N^2,改用Prim. Prim是这样的,先选一个点(这里选1)作为集合A的起始元素,然后其他点为集合B的元素,我们要做的就是 ...

  7. Facebook广告API系列 2 - Audience Management

    Facebook广告API系列 2 Facebook marketing API有三大组成部分: Audience Management Ads Management Ads Insights 本篇稍 ...

  8. C#中的DllImport使用方法

    DllImport是System.Runtime.InteropServices命名空间下的一个属性类,其功能是提供从非托管DLL导出的函数的必要调用信息 DllImport属性应用于方法,要求最少要 ...

  9. python 处理命令行参数--转载

    标题写了那么久,现在现在才有时间,整理下自己的思路.首先先总结下自己对sys模块的理解.手册上对sys的描述是系统参数和系统函数,这里的系统实际上是python解释器.这个模块提供了用户可以访问的解释 ...

  10. Spring/Spring MVC/Spring Boot的区别

    1.spring boot更简单,容易上手: 2.spring boot对第三方技术进行了很好的封装,提供了大量的第三方接口: 3.通过依赖配置,不需要XML等配置文件: 4.提供了安全性等特性. S ...