首先对预训练模型的scope一定要做好定义,不然恢复起来会比较麻烦。

这里使用tf.get_collection()

1、tf.get_collection(tf.GraphKeys.GLOBAL_VARIABLES,scope='name')
tf.get_collection(key,scope=None
)

Args:

  • key: The key for the collection. For example, the GraphKeys class contains many standard names for collections.
  • scope: (Optional.) If supplied, the resulting list is filtered to include only items whose name attribute matches using re.match. Items without a name attribute are never returned if a scope is supplied and the choice or re.match means that a scope without special tokens filters by prefix.

Returns:

The list of values in the collection with the given name, or an empty list if no value has been added to that collection. The list contains the values in the order under which they were collected.

tf.get_collection(tf.GraphKeys.GLOBAL_VARIABLES)用于获取当前图下,给定指定name的所有变量,并返回由这些变量构成的list。

2、申请saver

saver = tf.train.Saver(var_list=var)

这里表示当前的这个saver只对var中的变量进行恢复,其余的不管

3、载入之前预训练的ckpt

saver.restore(sess,MODELPATH)

这里表示指定恢复的变量的权重是从MODELPATH里面来的,MODELPATH是之前预训练模型的ckpt

如果有多个这样的scope需要恢复的话可以多次重复上述步骤

最后,代码总结

var = tf.get_collection(tf.GraphKeys.GLOBAL_VARIABLES,scope='name1')
saver.restore(sess,MODELPATH1)var = tf.get_collection(tf.GraphKeys.GLOBAL_VARIABLES, scope='name2')
saver = tf.train.Saver(var_list=var)

TensorFlow预训练模型在新图中权重部分加载相关推荐

  1. OpenCV调用TensorFlow预训练模型

    OpenCV调用TensorFlow预训练模型 [尊重原创,转载请注明出处]https://panjinquan.blog.csdn.net/article/details/80570120 强大Op ...

  2. 他山之石 | 预训练模型在华为推荐中的应用与探索

    经过多年的技术进步,推荐系统场景已经从最开始的协同过滤,发展到了现在的深度学习为核心的阶段.随着深度学习模型的体量逐渐变大后,其优化的难度也在增大,特别在推理性能上的限制下,最后模型的效果提升受到了很 ...

  3. 5.1 Tensorflow:图与模型的加载与存储

    这里写目录标题 前言 快速应用 存储与加载,简单示例 存储的文件 tf.train.Saver与存储文件的讲解 核心定义 存储文件的讲解 保存图与模型进阶 按迭代次数保存 按时间保存 更详细的解释 前 ...

  4. 在TensorFlow中使用pipeline加载数据

    正文共2028个字,6张图,预计阅读时间6分钟. 前面对TensorFlow的多线程做了测试,接下来就利用多线程和Queue pipeline地加载数据.数据流如下图所示: 首先,A.B.C三个文件通 ...

  5. 插件化中Activity的加载

    插件化中Activity的加载 前面一系列的文章中我们介绍了Android系统资源加载流程,最后引出插件化中资源加载的方法,完成了『资源动态加载』这一大块的介绍.本系列文章将重点介绍『代码动态加载』, ...

  6. PowerPoint 中缺少think-cell 加载项丨解决方案丨使用教程

    若在 PowerPoint 中无法找到 think-cell,存在多种可能的原因.请循序尝试以下解决方案: 检查 think-cell 是否已在运行中 若 PowerPoint 功能区的插入选项卡中显 ...

  7. Python图片转gif(将静态图转化为分块加载的动态图)

    简介 将静态图转化为分块加载的动态图 方案 1. PIL: 1. 创建背景图2. 将原图拆分成N块并依次合成到背景图的相应位置, 得到N张素材图3. 将N张素材图合成GIF2. pygifsicle对 ...

  8. Pytorch中的数据加载

    Pytorch中的数据加载 1. 模型中使用数据加载器的目的 在前面的线性回归模型中,使用的数据很少,所以直接把全部数据放到模型中去使用. 但是在深度学习中,数据量通常是都非常多,非常大的,如此大量的 ...

  9. 浏览器中Javascript的加载和执行

    在刚学习Javascript时曾对该问题在小组内做个一次StudyReport,发现其中的基础还是值得分析的. 从标题分析,可以加个Javascript的加载和执行分为两个阶段:加载.执行.而加载即浏 ...

最新文章

  1. 干货|python基础知识总结
  2. matlab选择结构
  3. C语言 malloc动态申请内存,存放数组
  4. 幽灵交易策略_幽灵交易者策略(附源代码)
  5. ide快捷键_一款好用的IDE怎么可以没有代码提示?
  6. IDEA2018部署jeesite3完美运行教程
  7. JetBrains:更改webstrom、IDEA等主题
  8. git 创建和合并分支
  9. wireshark display reference: https://www.wireshark.org/docs/dfref/
  10. 全国大学生数学竞赛学习笔记
  11. 重装系统备份找不到镜像文件_如何从Windows 7系统映像备份中提取单个文件
  12. [iOS] 组件化之一:MGJRouter的简单实用
  13. [M1]Daily Scum 9.26
  14. Objective-C 理解之方括号[ ]的使用
  15. ES5 ES6相关内容 day15
  16. 敏捷宣言的第五项原则
  17. 7-2 求π的近似值
  18. 浙江大学计算机学院足球队,男足校队|浙大男子普通生足球队荣获2020年浙江省青少年校园足球联赛(大学男子校园A组)冠军...
  19. Ubuntu折腾--优化wine 微信小黑框处理
  20. 洒水车问题(路线有单向有双向)

热门文章

  1. 使用Nginx、Nginx Plus抵御DDOS攻击的方法
  2. iis配置绑定二级域名的问题
  3. 代码迁移之旅(二)- 渐进式迁移方案
  4. MyBatis源码解析【4】反射和动态代理
  5. 4.Hibernate O/R 映射
  6. [转] Envelop
  7. Meditation Guide
  8. 这些年,我收集的JavaScript代码(二)
  9. 数字证书及在WCF中的应用
  10. WINCE下如何虚拟多个串口