Tensorflow最重要的两个概念——Tensor和Flow。
Tensor就是张量,在Tensorflow中Tensor可以被简单的理解为多维数组。Tensor是Tensorflow的数据结构,那么Flow是Tensorflow的计算模型。Flow的中文翻译成流,它表达了张量之间通过计算相互转化的过程。Tensorflow是一个通过计算图的形式来表述计算的编程系统。Tensorflow每一个计算都是计算图上的一个节点,节点之间的边描述了计算之间的依赖关系。

计算图的使用
Tensorflow的程序一般分为两个阶段,在第一个阶段需要定义计算图中的计算。第二个阶段是执行计算。
下面代码给出计算样例:

在Python中一般会采用import tensorflow as tf的形式载入Tensorflow,这样可以用tf来代替tensorflow作为模块名称。
在这个过程中,Tensorflow会自动将定义的计算转化为计算图 上的节点。在Tensorflow程序中,系统会自动维护一个默认的计算图,通过tf.get_default_graph函数可以获取当前默认计算图。

除了使用默认的计算图,Tensorflow支持通过tf.Graph函数来生成新的计算图。不同计算图上的张量和运算都不会共享。

#

tf.Variable与tf.get_variable()
tf.Variable(initial_value=None, trainable=True, collections=None, validate_shape=True, caching_device=None, name=None, variable_def=None, dtype=None, expected_shape=None, import_scope=None)
tf.get_variable(name, shape=None, dtype=None, initializer=None, regularizer=None, trainable=True, collections=None, caching_device=None, partitioner=None, validate_shape=True, custom_getter=None)
区别
使用tf.Variable时,如果检测到命名冲突,系统会自己处理。使用tf.get_variable()时,系统不会处理冲突,而会报错
基于这两个函数的特性,当我们需要共享变量的时候,需要使用tf.get_variable()。在其他情况下,这两个的用法是一样的
tf.get_variable 和tf.Variable不同的一点是,前者拥有一个变量检查机制,会检测已经存在的变量是否设置为共享变量,如果已经存在的变量没有设置为共享变量,TensorFlow 运行到第二个拥有相同名字的变量的时候,就会报错。

为了解决这个问题,TensorFlow 又提出了 tf.variable_scope 函数:它的主要作用是,在一个作用域 scope 内共享一些变量,可以有如下几种用法:
http://blog.csdn.net/u013645510/article/details/53769689
在tensorflow中,有两个scope, 一个是name_scope一个是variable_scope,这两个scope到底有什么区别呢?

http://blog.csdn.net/u012436149/article/details/53081454

#


上面代码产生了两个计算图,每个计算图中定义了一个名字为“v”的变量,在计算图g1中,将v初始化为0;在计算图g2中,将v初始化为1。可以看到当运行不同计算图时,变量v的值也是不一样的。Tensorflow的计算图不仅仅可以用来隔离张量和计算,它还提供管理张量和计算的机制。
计算图可以通过tf.Graph.device函数来指定运行计算的设备。这为Tensorflow使用GPU提供了机制。
下面的程序将加法计算跑在GPU上。

Tensorflow--图相关推荐

  1. android冻结命令,在Android上使用冻结tensorflow图中的变量

    TLDR:如何在Android上使用冻结tensorflow图中的变量? 1.我想做什么 我有一个Tensorflow模型,它在多个变量中保持一个内部状态,用:state_var = tf.Varia ...

  2. 5.1 Tensorflow:图与模型的加载与存储

    这里写目录标题 前言 快速应用 存储与加载,简单示例 存储的文件 tf.train.Saver与存储文件的讲解 核心定义 存储文件的讲解 保存图与模型进阶 按迭代次数保存 按时间保存 更详细的解释 前 ...

  3. python人工智能——深度学习——TensorFlow——图和会话

    图 图默认已经注册,一组表示 tf.Operation计算单位的对象和tf.Tensor表示操作之间流动的数据单元的对象. 获取调用: tf.get_default_graph() op.sess或者 ...

  4. 人工智能tensorflow图的可视化

    1.首先要序列化数据 import tensorflow as tf #定义op #op名称op指令空间内是唯一的,如果op名字相同,会给后面的依次加索引 # a=tf.constant(3.0,na ...

  5. 吴裕雄 python 神经网络——TensorFlow 图、张量及会话

    import tensorflow as tfg1 = tf.Graph() with g1.as_default():v = tf.get_variable("v", [1], ...

  6. 一个高效且友好的TensorFlow图神经网络(GNN)框架:tf_geometric

    本文已加入

  7. 【ML】TensorFlow 图

  8. TensorFlow之图结构与TensorBoard可视化

    TensorFlow之图结构与TensorBoard可视化 1.1 什么是图结构 图包含了一组tf.Operation代表的计算单元对象和tf.Tensor代表的计算单元之间流动的数据. 1.2 图相 ...

  9. tensorflow入门教程和底层机制简单解说——本质就是图计算,自动寻找依赖,想想spark机制就明白了...

    简介 本章的目的是让你了解和运行 TensorFlow! 在开始之前, 让我们先看一段使用 Python API 撰写的 TensorFlow 示例代码, 让你对将要学习的内容有初步的印象. 这段很短 ...

  10. tensorflow tf.enable_eager_execution()(立即执行操作,不添加到稍后在“ tf.Session”中执行的图)

    @tf_export("enable_eager_execution") def enable_eager_execution(config=None,device_policy= ...

最新文章

  1. centos6.5安装zabbix3.4
  2. Python基础语法06--文件
  3. Java——容器(Set)
  4. C++继承时的名字遮蔽(一)
  5. php多线程解决之stream_socket_client
  6. android gallery自动播放,可循环显示图像的Android Gallery组件
  7. 前端学习(2248)git是怎么运作的
  8. 一文说清linux system load
  9. PCA(Principal Component Analysis)原理简单分析
  10. SQL 交叉表存储过程
  11. servletContextListener定时任务使用
  12. Annotation Processing Tool
  13. 【个人总结】清除样式(间距、浮动、定位)
  14. 盘点全球8K视频直播的解决方案和成果
  15. java正则表达式或_java 正则表达式
  16. UNI/TUBE2新配对上线,Eswap迎来新机遇
  17. 如何用SCRM销售管理系统管理销售和做销售管理
  18. 前缀树——以Gin路由为例
  19. 6-6 Isleap (5 分)
  20. 深度学习的不确定性(Uncertainty/confidence score)与校准(Calibration)

热门文章

  1. Dev的多语言简单实现
  2. 蚂蚁暑期实习前端面试
  3. eplan安装提示没有安装许可语言_CAD和EPLAN!电气制图你会选择哪个?
  4. 以下构成python循环结构的方法中_《Python程序设计与案例教程》课件chap5循环结构程序设计.ppt...
  5. opensource项目_最佳Opensource.com:教育
  6. pc-bsd安装教程_桌面用户的BSD:PC-BSD的回顾
  7. (23)HTTP 状态消息
  8. 作死 | 程序猿的花式作死,因为你的幽默,你的前途有了!
  9. 重量级 | 重量级!Maven史上最全教程,看了必懂
  10. Bootstrap3 过渡插件