当前位置:主页 > 软件编程 > Python代码 >

基于tensorflow加载部分层的方法

时间:2020-10-17 23:27:39 | 栏目: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)

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

您可能感兴趣的文章:

相关文章