TensorFlow计算图的使用方法

TensorFlow 程序一般可以分为两个阶段。在第一个阶段需要定义计算图中所有的计算 。比如在第 2 章的向量加法样例程序中首先定义了两个输入,然后定义了 一个计算来得到它们的和。

import tensorf low as tf
a= tf.constant([l.O, 2 .0], name=”a”)
b = tf.constant([2.0, 3.0], name=”b ”)
result = a + b

在 Python 中一般会采用“ impo口 tensorflow as tf”的形式来载入 TensorFlow,这样可以使用“ tf”来代替“ tensorflow”作为模块名称,使得整个程序更加简洁。

在 TensorFlow 程序中,系统会自动维护一个默认的计算图,通过 tf.get_default_graph 函数可以获取当前默认的计算图.

#通过a.graph可以查看张所属的计算圈。因为没有特意指定,所以这个计算图应该等于
#当前默认的计算圈。所以下面这个操作输出值为 Trueprint(a.graph is tf.get default graph())

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

import tensorflow as tf
gl = tf.Graph()
with gl.as default () :
#在计算阁 gl 中定义变量“v”,并设置初始值为 0 。
v = tf.get variable(
” v ”, initializer=tf . zeros_initiali zer (shape=[l)))
g2 = tf.Graph()
with g2.as_default() :
#在计算阁g2中定义变量“v飞并设置初始值为 l 。
v = tf.get variable(
” v ”, i nitializer=tf. ones_initializer (shape= [l)))
#在计算图gl中读取变盘“v”的取值 。
with tf.Session(graph=gl) as sess :
tf.gl.bal variables initializer (). run ()
with tf.variable_scope (””, r euse=True ) :
#在计算图 gl 中,变量“ v”的取值应该为 0,所以下面这行会输出[ 0. )。
print(sess.run(tf.get variable (”v ”)))
#在计算图 g2 巾读取变量“ v”的取值。
with tf.Session (graph=g2 ) as sess:
tf.global_variables_initializer().run()
with tf.variable scope ("”, reuse=True ) :
#在计算图 g2 中,变量“v”的取值应该为 1 ,所以下面这行会输出[ l. )。
print(sess . run(tf .get variable (”v”)))

在这里插入图片描述TensorFlow 中的计算图不仅仅可以用来隔离张量和计算,它还
提供了管理张量和计算的机制。计算图可以通过 tf.Graph.device 函数来指定运行计算的设
备。这为 TensorFlow 使用 GPU 提供了机制

g = tf.Graph()
#指定计算运行的设备。
W工 th g.device (/ gpu :O ’):
result = a + b

在一个计算图中,可以通过集合 C collection )来管理不同类别的资

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值