如何在不使用会话的情况下以张力量还原模型



我使用

创建和保存的DNNClassifier
classifier = learn.DNNClassifier(
  feature_columns=feature_columns, hidden_units=[10, 20, 10], n_classes=3, model_dir=model_directory)

然后将某些东西保存在Directory Model_directory中,我获取文件

checkpoint
events.out.tfevents.1480518258.DESKTOP-E18T9HJ
graph.pbtxt
model.ckpt-100-00000-of-00001
model.ckpt-1-00000-of-00001
model.ckpt-100.meta
model.ckpt-1.meta
然后,我尝试使用 尝试加载它
new_classifier = learn.TensorFlowEstimator.restore(model_directory)

(根据我在那里看到的内容)但是得到

File "importAndClassify.py", line 17, in <module>
  new_classifier = learn.TensorFlowEstimator.restore(model_directory)
File "/home/Alois/anaconda2/envs/tensorflow/lib/python2.7/site-packages/tensorflow/contrib/learn/python/learn/estimators/base.py", line 441, in restore
raise ValueError("Restore folder doesn't contain model definition.")
ValueError: Restore folder doesn't contain model definition.

您知道我该怎么办?我在这里读到"通过为构造函数提供相同的model_dir来恢复。"但这没有结果。

new_classifier = learn.DNNClassifier(model_directory)

我对所有API的更改和缺乏明确的文档感到困惑。尤其是,我不明白为什么在某些教程中,分类器是使用TensorFlow变量和会话构建的,并且一切都非常复杂,其他时间,听起来很容易做到,您只需要说您希望基于基于此分类器这个和此参数...这是为了进一步参数吗?这两种视野之间有桥吗?

相同的意见...接缝就像他们需要一些好的软件架构和良好的项目经理...这种方式TF看起来像个笑话

解决您的问题:该模型会自动从"构造函数"中加载该目录:

classifier = learn.dnnclassifier( feature_columns = feature_columns,hidden_units = [10,20,10],n_classes = 3,model_dir = model_directory)

如果model_directory拥有文件,它将加载它们...那就是加载模型的方法...它实际上不再是

我的问题是在Java的TensorFlow中加载相同的模型...我需要一个" model_saved.pb"或" model_saved.pbtxt"文件,但是不可能使用Learn.dnnclassifier(...)

相关内容

  • 没有找到相关文章

最新更新