首页 > 其他 > 详细

graph

时间:2018-05-04 11:10:59      阅读:215      评论:0      收藏:0      [点我收藏+]

tensorflow中graph包含一些操作对象,这些对象就是计算节点。而tensor表示的是不同操作间的数据节点。

tensorflow会创建默认的图,可以通过tf.get_default_graph()来访问:

代码:

import tensorflow as tf
import numpy as np

c=tf.constant(value=1)
#print(assert c.graph is tf.get_default_graph())
print(c.graph)
print(tf.get_default_graph())

结果:

 

技术分享图片

如何使用自定义的graph,使用Graph.as_default()的上下文管理器:

代码:

import tensorflow as tf
import numpy as np

c=tf.constant(value=1)
#print(assert c.graph is tf.get_default_graph())
print(c.graph)
print(tf.get_default_graph())

g=tf.Graph()
print("g:",g)
with g.as_default():
  d=tf.constant(value=2)
  print(d.graph)
  #print(g)

g2=tf.Graph()
print("g2:",g2)
g2.as_default()
e=tf.constant(value=15)
print(e.graph)

结果:

技术分享图片

分析:第一个总共有一个graph,就是c默认创建的;第二种情况:先创建了图g,然后在g下声明变量,因此g覆盖了d声明时默认的graph。第三种情况,就是有两个图。

 

tf.train.write_graph(g1.as_graph_def(),‘.‘,‘graph.pb‘,False)  保存模型,但是它只是保存了模型的结构,并不保存训练完毕的参数值

tf.train.saver()保存模型,因为它只是保存了网络中的参数值,并不保存模型的结构。

 

graph

原文:https://www.cnblogs.com/smartwhite/p/8989413.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!