简体   繁体   English

在Tensorflow 1.2中恢复训练好的模型

[英]Restoring a trained model in Tensorflow 1.2

The Model is saved using: 使用以下命令保存模型:

self.model.saver.save(sess, os.path.join(result_dir, "basic"), global_step=global_step)

This produces: 这将产生:

devuser@gpu:~/ChatLearner-v1$ ls -al ./Data/Result/
total 7945536
drwxrwxr-x 3 devuser devuser       4096 Oct 18 12:45 .
drwxrwxr-x 6 devuser devuser       4096 Oct 13 07:54 ..
-rw-rw-r-- 1 devuser devuser 1625702412 Oct 17 00:22 basic-143640.data-00000-of-00001
-rw-rw-r-- 1 devuser devuser       2660 Oct 17 00:22 basic-143640.index
-rw-rw-r-- 1 devuser devuser    1525771 Oct 17 00:22 basic-143640.meta
-rw-rw-r-- 1 devuser devuser 1625702412 Oct 17 01:52 basic-146205.data-00000-of-00001
-rw-rw-r-- 1 devuser devuser       2660 Oct 17 01:52 basic-146205.index
-rw-rw-r-- 1 devuser devuser    1525771 Oct 17 01:52 basic-146205.meta
-rw-rw-r-- 1 devuser devuser 1625702412 Oct 17 03:22 basic-148770.data-00000-of-00001
-rw-rw-r-- 1 devuser devuser       2660 Oct 17 03:22 basic-148770.index
-rw-rw-r-- 1 devuser devuser    1525771 Oct 17 03:22 basic-148770.meta
-rw-rw-r-- 1 devuser devuser 1625702412 Oct 17 04:51 basic-151335.data-00000-of-00001
-rw-rw-r-- 1 devuser devuser       2660 Oct 17 04:51 basic-151335.index
-rw-rw-r-- 1 devuser devuser    1525771 Oct 17 04:51 basic-151335.meta
-rw-rw-r-- 1 devuser devuser 1625702412 Oct 17 06:21 basic-153900.data-00000-of-00001
-rw-rw-r-- 1 devuser devuser       2660 Oct 17 06:21 basic-153900.index
-rw-rw-r-- 1 devuser devuser    1525771 Oct 17 06:21 basic-153900.meta
-rw-rw-r-- 1 devuser devuser        487 Oct 17 06:21 checkpoint
drwxr-xr-x 2 devuser devuser       4096 Oct 18 12:36 train_log

The Model is then restored using: 然后使用以下方法还原模型:

self.model.saver.restore(session, os.path.join(result_dir, "basic"))

But this throws the following error: 但这会引发以下错误:

tensorflow.python.framework.errors_impl.NotFoundError: Unsuccessful TensorSliceReader constructor: Failed to find any matching files for /home/devuser/ChatLearner-v1/Data/Result/basic
    [[Node: save/RestoreV2_6 = RestoreV2[dtypes=[DT_FLOAT], _device="/job:localhost/replica:0/task:0/cpu:0"](_arg_save/Const_0_0, save/RestoreV2_6/tensor_names, save/RestoreV2_6/shape_and_slices)]]

Can anyone please help? 谁能帮忙吗?

Please use tf.train.latest_checkpoint: 请使用tf.train.latest_checkpoint:

self.model.saver.restore(session, tf.train.latest_checkpoint(os.path.join(result_dir, "basic"))) self.model.saver.restore(session,tf.train.latest_checkpoint(os.path.join(result_dir,“ basic”)))

Doc: https://www.tensorflow.org/api_docs/python/tf/train/latest_checkpoint Doc: https : //www.tensorflow.org/api_docs/python/tf/train/latest_checkpoint

The answer was to modify the model path: 答案是修改模型路径:

self.model.saver.restore(session, os.path.join(result_dir, "basic-153900"))

According to the checkpoint log: 根据检查点日志:

cybercon@gpu:~/ChatLearner-v1$ cat Data/Result/checkpoint 
model_checkpoint_path: "/home/cybercon/ChatLearner/Data/Result/basic-153900"
all_model_checkpoint_paths: "/home/cybercon/ChatLearner/Data/Result/basic-143640"
all_model_checkpoint_paths: "/home/cybercon/ChatLearner/Data/Result/basic-146205"
all_model_checkpoint_paths: "/home/cybercon/ChatLearner/Data/Result/basic-148770"
all_model_checkpoint_paths: "/home/cybercon/ChatLearner/Data/Result/basic-151335"
all_model_checkpoint_paths: "/home/cybercon/ChatLearner/Data/Result/basic-153900"

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM