Python 如何在Tensorflow2中只保存tensor而不保存模型
我已经学习Tensorflow2几个月了,但我遇到了一些困难。例如,我创建了一个类似于:Python 如何在Tensorflow2中只保存tensor而不保存模型,python,tensorflow,tensorflow2.0,Python,Tensorflow,Tensorflow2.0,我已经学习Tensorflow2几个月了,但我遇到了一些困难。例如,我创建了一个类似于: import tensorflow as tf v=tf.random.normal((20,30,40)) 现在我只想将张量v保存到合适的文件中。实际上,v是从.nc数据创建的。我使用包“netCDF4”来读取它,并选择一些变量,它们的维度是(time,lon,lat),将它们压缩到v中,维度是(time,lon,lat,var_num) 但是v的大小很大(例如,(1000224,5)),所以我需要保存
import tensorflow as tf
v=tf.random.normal((20,30,40))
现在我只想将张量v保存到合适的文件中。实际上,v是从.nc数据创建的。我使用包“netCDF4”来读取它,并选择一些变量,它们的维度是(time,lon,lat),将它们压缩到v中,维度是(time,lon,lat,var_num)
但是v的大小很大(例如,(1000224,5)),所以我需要保存v以防多次读取netcdf。我搜索了一些问题,但几乎没有什么帮助,因为它们要么是关于在tf1.X中保存变量,要么是关于在TF2中保存模型(或模型中的变量)
所以我来这里寻求帅哥的帮助。提前多谢。您仍然可以使用存储单个tf.Variable
您只需在tf.Variable
中捕获v
,然后将其传递给tf.saved\u model.save
也许是这样的:
v=tf.Variable(tf.random.normal((20,30,40)))
tf.saved_model.save(v'/path/to/my_var')
然后,要从保存的版本再次加载:
v_from_file=tf.saved_model.load('/path/to/my_var'))
您仍然可以使用存储单个tf.变量
您只需在tf.Variable
中捕获v
,然后将其传递给tf.saved\u model.save
也许是这样的:
v=tf.Variable(tf.random.normal((20,30,40)))
tf.saved_model.save(v'/path/to/my_var')
然后,要从保存的版本再次加载:
v_from_file=tf.saved_model.load('/path/to/my_var'))
非常感谢。通过你的方法,我已经解决了我的问题!也许在这是我的错之前,save_模型只用于models~@janase是为了我的快乐。很高兴问题解决了。:-)如果我的解决方案帮助你可能会考虑接受和/或投票赞成!现在我的声誉还不到15。有一天当我达到门槛时,我会回来投票给你的答案。非常感谢。用你的方法我已经解决了我的问题!也许在这是我的错之前,save_模型只用于models~@janase是为了我的快乐。很高兴问题解决了。:-)如果我的解决方案帮助你可能会考虑接受和/或投票赞成!现在我的名声还不到15岁。总有一天当我达到门槛时,我会回来投票给你的答案。