基于tensorflow加载部分层的方法

yipeiwu_com6年前Python基础

一般使用

saver.restore(sess, modeldir + "model.ckpt")

即可加载已经训练好的网络,可是有时候想值使用部分层的参数,这时候可以选择在加载网络之后重新初始化剩下的层

var_list = [weights['wd1'], weights['out'], biases['bd1'], biases['out'], global_step]
initfc = tf.variables_initializer(var_list, name='init')

比如我们想从新初始化var_list中的各个层,在restore之后,再初始化即可

sess.run(init)
saver.restore(sess, modeldir + "model.ckpt")
print sess.run(global_step)
#initialize several layer
sess.run(initfc)
print sess.run(global_step)

即可发现部分变量重新初始化了

以上这篇基于tensorflow加载部分层的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python中快速进行多个字符替换的方法小结

先给出结论: 要替换的字符数量不多时,可以直接链式replace()方法进行替换,效率非常高; 如果要替换的字符数量较多,则推荐在 for 循环中调用 replace()...

Python实现的单向循环链表功能示例

Python实现的单向循环链表功能示例

本文实例讲述了Python实现的单向循环链表功能。分享给大家供大家参考,具体如下: 概述: 单向循环链表是指在单链表的基础上,表的最后一个元素指向链表头结点,不再是为空。 由图可知,单...

Python中的自省(反射)详解

首先通过一个例子来看一下本文中可能用到的对象和相关概念。 复制代码 代码如下: #coding:  UTF-8 import sys #  模块,sys指向这个模块...

Python信息抽取之乱码解决办法

Python信息抽取之乱码解决办法 就事论事,直说自己遇到的情况,和我不一样的路过吧,一样的就看看吧   信息抓取,用python,beautifulSoup,lxml,re,urlli...

对python_discover方法遍历所有执行的用例详解

对python_discover方法遍历所有执行的用例详解

当我们写了一个单个py的测试文件时直接运行就ok了,但当我们有很多很多个这样的py时,难道要一个一个的点击来运行吗,当然不是。我们可以通过discover方法来找到所有的用例。 下面直接...