tensorflow加载预训练模型数据

1、自己写图或者修改后的图加载参数

Tips 1自己重写了一遍图,加载别人训过的参数,要注意图的变量名字要一致!
Tips 2自己写一个图,部分图的变量用预训练的参数。

# 1去除某些参数
exclude = ['MobilenetV1/Logits/Conv2d_1c_1x1/biases','global_step']
variables_to_restore = tf.contrib.framework.get_variables_to_restore(exclude=exclude)
saver = tf.train.Saver(variables_to_restore)
# 2只加载当前搭建的图中部分变量
variables_to_restore = [val for val in tf.global_variables() if  'Adam' not in val.name and 'power' not in val.name and 'global' not in val.name and 'Logits/' not in val.name]
saver = tf.train.Saver(variables_to_restore)
#加载参数
with tf.Session() as sess:
    sess.run(tf.global_variables_initializer())
    # 装载参数
    saver.restore(sess,  ckpt_path)
    # 此时改为所有变量以便于之后保存...
    variables_to_restore = [val for val in tf.global_variables()]
	saver = tf.train.Saver(variables_to_restore)
发布了140 篇原创文章 · 获赞 26 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/CLOUD_J/article/details/104524860