【发布时间】:2017-12-22 20:58:08
【问题描述】:
我是 Floydhub 的新手。我正在尝试从this github repository 和相应的教程运行代码。
为了训练,我成功使用了这个命令:
floyd run --gpu --env tensorflow-1.2 --data janinanu/dataset
/data/2:tut_train 'python udc_train.py'
我在培训文件中调整了这一行以在 Floydhub 中工作:
tf.flags.DEFINE_string("input_dir", "/tut_train", "Directory containing
input data files 'train.tfrecords' and 'validation.tfrecords'")
如前所述,这对培训没有问题。
现在进行测试,我并没有找到有关如何指定存储训练输出的模型目录的任何详细信息。我使用 model_dir 作为安装点安装了训练的输出。我假设正确的命令应该是这样的:
floyd run --cpu --env tensorflow-1.2 --data janinanu/datasets
/data/2:tut_test --data janinanu/projects/retrieval-based-dialogue-system-
on-ubuntu-corpus/18/output:model_dir 'python udc_test.py
--model_dir=?'
我不知道在--model_dir=? 中添加什么
相应地,我假设我必须在测试文件中调整一些行:
tf.flags.DEFINE_string("test_file", "/tut_test/test.tfrecords", "Path of
test data in TFRecords format")
tf.flags.DEFINE_string("model_dir", "/model_dir", "Directory to load model
checkpoints from")
...以及在火车文件中(虽然不确定...):
tf.flags.DEFINE_string("input_dir", "/tut_train", "Directory containing
input data files 'train.tfrecords' and 'validation.tfrecords'")
tf.flags.DEFINE_string("model_dir", "/model_dir", "Directory to store
model checkpoints (defaults to /model_dir)")
当我使用例如--model_dir=/model_dir 和上面调整的代码,我得到这个错误:
2017-12-22 12:17:49,048 INFO - return func(*args, **kwargs)
2017-12-22 12:17:49,048 INFO - File "/usr/local/lib/python3.5/site-
packages/tensorflow/contrib/learn/python/learn/estimators/estimator.py",
line 543, in evaluate
2017-12-22 12:17:49,048 INFO - log_progress=log_progress)
2017-12-22 12:17:49,049 INFO - File "/usr/local/lib/python3.5/site-
packages/tensorflow/contrib/learn/python/learn/estimators/estimator.py",
line 816, in _evaluate_model
2017-12-22 12:17:49,049 INFO - % self._model_dir)
2017-12-22 12:17:49,049 INFO -
tensorflow.contrib.learn.python.learn.estimators._sklearn.NotFittedError:
Couldn't find trained model at /model_dir
这不足为奇。
谁能给我一些关于如何将训练输出提供给测试运行的说明?
我也会在 Floydhub 论坛上发布这个问题。
谢谢!!
.
【问题讨论】:
标签: tensorflow nlp deep-learning