当前位置:
首页 >
tensorflow随笔-新的计算图
发布时间:2025/3/12
39
豆豆
生活随笔
收集整理的这篇文章主要介绍了
tensorflow随笔-新的计算图
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
生成新的计算图,并完成常量初始化,在新的计算 图中完成加法计算
import tensorflow as tfg1=tf.Graph()with g1.as_default():value=[1.,2.,3.,4.,5.,6.]init = tf.constant_initializer(value)x=tf.get_variable("x",initializer=init,shape=[2,3])y=tf.get_variable("y",shape=[2,3],initializer=tf.ones_initializer())result=tf.add(x,y,name="myadd")with tf.Session(graph=g1) as sess:tf.global_variables_initializer().run()with tf.variable_scope("",reuse=True):print(sess.run(tf.get_variable("x")))print(sess.run(tf.get_variable("y")))print(sess.run(result))A)tf.Graph.as_default()会创建一个新图,这个图成为当前线程的默认图。
B)在相同进程中创建多个计算图使用tf.Graph.as_default()。如果不创建新的计算图,默认的计算图将被自动创建。
C)如果创建一个新线程,想使用该线程的默认计算图,使用tf.Graph.as_default(),这个函数返回一个上下文管理器( context manager),它能够在这个上下文里面覆盖默认的计算图。在代码务必使用with。
# -*- coding: utf-8 -*-"""Spyder Editor生成新的计算图,并完成常量初始化[代码1]myhaspl@myhaspl.com"""import tensorflow as tfg = tf.Graph()with g.as_default():c = tf.constant(5.0)assert c.graph is gprint "ok"[代码2]
# -*- coding: utf-8 -*-"""Spyder Editor生成新的计算图,并完成常量初始化myhaspl@myhaspl.com"""import tensorflow as tfwith tf.Graph().as_default() as g:c = tf.constant(5.0)assert c.graph is gprint "ok" [代码3]# -*- coding: utf-8 -*-"""Spyder Editor生成新的计算图,并完成常量初始化myhaspl@myhaspl.com4"""import tensorflow as tfwith tf.Graph().as_default() as g:c = tf.constant(5.0)assert c.graph is gprint "ok"sess=tf.Session(graph=g)print sess.run(c)sess.close()[代码4]
# -*- coding: utf-8 -*-"""Spyder Editor生成新的计算图,并完成常量初始化myhaspl@myhaspl.com"""import tensorflow as tfg=tf.get_default_graph()#默认计算图会自动注册c = tf.constant(4.0)result=c*cassert result.graph is g#验证是否result操作属于g这个计算图print "ok1"with tf.Graph().as_default() as g1:c = tf.constant(5.0)assert c.graph is g1print "ok2"assert c.graph is gprint "ok3"sess=tf.Session(graph=g1)print sess.run(c)sess.close() 运行:输出验证失败
ok1
ok2
…
assert c.graph is g
AssertionError
…
[代码5]
# -*- coding: utf-8 -*-"""Spyder Editor生成新的计算图,并完成常量初始化,在新的计算 图中完成加法计算myhaspl@myhaspl.com"""import tensorflow as tfg1=tf.Graph()with g1.as_default():value=[1.,2.,3.,4.,5.,6.]init = tf.constant_initializer(value)x=tf.get_variable("x",initializer=init,shape=[2,3])y=tf.get_variable("y",shape=[2,3],initializer=tf.ones_initializer())result=tf.add(x,y,name="myadd")assert result.graph is g1#验证是否result操作属于g1这个计算图print "ok"with tf.Session(graph=g1) as sess:tf.global_variables_initializer().run()with tf.variable_scope("",reuse=True):print(sess.run(tf.get_variable("x")))print(sess.run(tf.get_variable("y")))print(sess.run(result))总结
以上是生活随笔为你收集整理的tensorflow随笔-新的计算图的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: linux如何挂载nfs目录,linux
- 下一篇: C指针原理(1)-ATT汇编