tesorflow中的Graph对象

创建图对象

import tensorflow as tf
import numpy as np

a = tf.constant(123)
print(a.graph)
print(tf.get_default_graph())
<tensorflow.python.framework.ops.Graph object at 0x7f46885216d8>
<tensorflow.python.framework.ops.Graph object at 0x7f46885216d8>

当tensorflow库被加载时,即使用户没有显示地创建一个图,他也会自动创建一个图对象,并将其作为默认的额数据流图。

创建显示图

import tensorflow as tf
import numpy as np

g= tf.Graph() #创建了一个图对象g
with g.as_default(): # 将g设置为默认图像
    a = tf.constant(123)
    print(a.graph)
    print(tf.get_default_graph())
<tensorflow.python.framework.ops.Graph object at 0x7f466363b2e8>
<tensorflow.python.framework.ops.Graph object at 0x7f466363b2e8>

as_default():返回一个上下文管理器,使得当前图对象称为当前默认图对象;在一个进程中创建多个人图对象时(图对象互不依赖),非常有用。

get_default_graph():获取当前图对象的句柄(某个事务的唯一标识)。

创建多个图

import tensorflow as tf 
import numpy as np

g1 = tf.Graph()
g2 = tf.Graph()

with g1.as_default():
    a = tf.constant(123)
    print(a.graph)
    print(tf.get_default_graph())
    
with g2.as_default():
    b = tf.multiply(2, 3)
    print(b.graph)
    print(tf.get_default_graph())
<tensorflow.python.framework.ops.Graph object at 0x7f466363b630>
<tensorflow.python.framework.ops.Graph object at 0x7f466363b630>
<tensorflow.python.framework.ops.Graph object at 0x7f4688609b00>
<tensorflow.python.framework.ops.Graph object at 0x7f4688609b00>

Tensor 对象 a 和 b 所属的图已不再一样,随着as_default()的值变化而变化。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值