tensorflow variable的保存和修改(加载一部分variable到新的model中)

link: https://www.tensorflow.org/guide/saved_model

中文博客:https://blog.csdn.net/Searching_Bird/article/details/78274207

  https://blog.csdn.net/mieleizhi0522/article/details/80535189 

 

self.saver = tf.train.Saver({'words/_word_embeddings':self._word_embeddings})

for x in tf.all_variables():
print(x.name)

mysaver = tf.train.import_meta_graph(self.config.dir_model_storepath_pre_graph)
mysaver.restore(self.sess, tf.train.latest_checkpoint(self.config.dir_model_storepath_pre))

 

 

一,恢复部分预训练模型的参数。

 

weight=[weights['wc1'],weights['wc2'],weights['wc3a']]
saver = tf.train.Saver(weight)#创建一个saver对象,.values是以列表的形式获取字典值
saver.restore(sess, model_filename)
二,手动初始化剩下的(预训练模型中没有的)参数。

var = tf.get_variable(name, shape, initializer=tf.contrib.layers.xavier_initializer())
 

保存的时候怎么保存呢?我想保存全部变量,所以要重新写一个对象,名字和恢复的那个saver对象不同:

saver_out=tf.train.Saver()
saver_out.save(sess,'file_name')
这个时候就保存了全部变量,如果你想保存部分变量,只需要在构造器里传入想要保存的变量的名字就行了。

 

posted @   simple_wxl  阅读(1377)  评论(0编辑  收藏  举报
编辑推荐:
· Linux glibc自带哈希表的用例及性能测试
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
阅读排行:
· 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 数据库服务器 SQL Server 版本升级公告
· C#/.NET/.NET Core技术前沿周刊 | 第 23 期(2025年1.20-1.26)
· 程序员常用高效实用工具推荐,办公效率提升利器!
点击右上角即可分享
微信分享提示