tensorflow - tensorflow 中是否有类似 Pytorch 中的 load_state_dict() 的函数?
问题描述
就像已经描述的那样,我想知道在 tensorflow 中是否有类似的函数用于 load_state_dict(),就像 Pytorch 中的函数一样。为了演示一个场景,请参考以下代码:
# Suppose we have two correctly initialized neural networks: net2 and net1
# Using Pytorch
net2.load_state_dict(net1.state_dict())
有人有什么主意吗?
解决方案
下面的代码可能有助于在 tensorflow 中实现相同的目标:
保存模型
w1 = tf.Variable(tf.truncated_normal(shape=[10]), name='w1')
w2 = tf.Variable(tf.truncated_normal(shape=[20]), name='w2')
tf.add_to_collection('vars', w1)
tf.add_to_collection('vars', w2)
saver = tf.train.Saver()
sess = tf.Session()
sess.run(tf.global_variables_initializer())
saver.save(sess, 'my-model')
# `save` method will call `export_meta_graph` implicitly.
# you will get saved graph files:my-model.meta
恢复模型
sess = tf.Session()
new_saver = tf.train.import_meta_graph('my-model.meta')
new_saver.restore(sess, tf.train.latest_checkpoint('./'))
all_vars = tf.get_collection('vars')
for v in all_vars:
v_ = sess.run(v)
print(v_)
推荐阅读
- android-jetpack-compose - 我可以在哪里放置 `suppressKotlinVersionCompatibilityCheck` 标志?
- django - 已修复:CKEditor 插件无法与 django-ckeditor 一起使用
- javascript - NUXT - asyncData 和 vue Actions 错误处理
- go - 无法从我的终端导入 go SSE 库
- python - 如何使用 jquery 一次用一个按钮提交多个 django 表单?
- python - 如何覆盖绘制多个熊猫列
- c++ - 不使用函数来提高速度?(C++)
- android - 在 Xamarin Forms 中单击按钮时从堆栈导航中添加和删除页面
- google-chrome-extension - 迁移 Chrome 扩展程序 v3 通知
- python - 执行程序时出错 Object is not suscriptable