130、TensorFlow操作多个计算图
2024-08-29 10:49:05
# Programming with multiple graphs
# 当训练一个模型的时候一个常用的方式就是使用一个图来训练你的模型
# 另一个图来评价和计算训练的效果
# 在许多情况下前向计算和训练是不同的
# 例如像Dropout和batch正则化使用不同的操作在不同的Case条件下
# 更进一步地说 通过使用默认的工具类,如tf.train.Saver使用tf.Variable的命名空间
# 在保存检查点的时候tf.Variable的名字是根据tf.Operation来定义
# 当你使用这种方法来编程的时候你或者使用独立的Python进程来建立和执行这个计算图
# 或者你可以使用多个计算图在相同的进程中
# tf.Graph为tf.Operation定义了命名空间
# 每一个操作必须有唯一的名字
# TensorFlow会通过在操作名字后面appending上_1,_2
# 如果所起的名字已经存在了,使用多个计算图能够让你更好地控制每个计算节点 # 默认的图存储信息关于每个tf.Operation和tf.Tensor
# 如果你对程序创建了更大数量的没有被连接的子图
# 使用多个计算图或许是更有效果的。因此, 不相关的状态可以被垃圾收集
import tensorflow as tf
g_1 = tf.Graph()
with g_1.as_default():
# Operations created in this scope will be added to 'g_1'
c = tf.constant("Node in g_1") # Sessions created in this scope will run operations from 'g_1'
sess_1 = tf.Session()
g_2 = tf.Graph()
with g_2.as_default():
# operations created in this scope will be added to 'g_2'
d = tf.constant("Node in g_2") # Alternatively , you can pass a graph when constructing a 'tf.Session'
# 'sess_2' will run operations from 'g_2'
sess_2 = tf.Session(graph=g_2)
assert c.graph is g_1
assert sess_1.graph is g_1 assert d.graph is g_2
assert sess_2.graph is g_2
最新文章
- MR操作
- Swift - UITableView里的cell底部分割线左侧靠边
- 【转载】UEditor前端配置项说明
- javascript中继承(一)-----原型链继承的个人理解
- POJ3658Matrix( 双重二分+负数+死循环)
- 关于Core Location-ios定位
- 【百度地图API】除夕夜,大家一起来赶走“夕”——删除标注功能
- CodeForces-748C
- 关于oracle11g在window10环境下安装不满足最低要求问题:报错NS-13001
- SpriteBuilder中不能编辑自定义类或不能给节点添加属性的解决
- Qt Creator 更改默认构建目录到工程目录下
- arcEngine开发之IMapControl接口
- (八)Index and Query a Document
- Golang 入门系列(九) 如何读取YAML,JSON,INI等配置文件
- windows环境下的git安装及使用
- zip 与 unzip的简单使用
- Eclipse环境安装Python插件PyDev
- 2018-2019-2 网络对抗技术 20165301 Exp2 后门原理与实践
- 在EditText中添加QQ表情
- [转]Chart.js入门教程
热门文章
- Tesseract5.0训练字库,提高OCR特殊场景识别率,合并字库(二)
- python基础-5.2装饰器
- css定位:相对定位、绝对定位、固定定位的区别与特性
- PPT制作,数据图等画图
- [2019杭电多校第三场][hdu6609]Find the answer(线段树)
- 第九届蓝桥杯A组第三题: 乘积尾零
- Windows 中下载 Android Q 源码
- EF添加关联的提示问题:映射从第 260 行开始的片段时有问题:
- 可视化操作,实现横向柱形echart图 无边框
- 自定义、操作cookie