Posted in Python onJuly 26, 2018
一般使用
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加载部分层的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。
基于tensorflow加载部分层的方法
- Author -
jinglingli_SJTU声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@