我正在尝试编写一个通用脚本来运行tensorflow应用,例如:
./laucher.py tensorflow_main.py --train_dir xxx --log_dir xxx --numWorker xxx --numPs xxx ...
然后tensorflow_main.py可以根据需要选择选项值。
但是,如果使用tf.app.flags.FLAGS获取选项,除非获得所有选项,否则它将获得UnrecognizedFlagError异常:
Traceback (most recent call last):
File "./main.py", line 19, in
log_dir = os.path.join(FLAGS.train_dir, 'log')
File "/ma1gpu07_nfsv4/zhuangxy/anaconda3/envs/dlipy2/lib/python2.7/site-packages/tensorflow/python/platform/flags.py", line 84, in __getattr__
wrapped(_sys.argv)
File "/ma1gpu07_nfsv4/zhuangxy/anaconda3/envs/dlipy2/lib/python2.7/site-packages/absl/flags/_flagvalues.py", line 633, in __call__
name, value, suggestions=suggestions)
absl.flags._exceptions.UnrecognizedFlagError: Unknown command line flag 'worker_hosts'
此问题How does tensorflow ignore undefined flags
Thomas建议使用conf文件,这可能是一个解决方案,但是我仍然想知道是否有一种方法可以传递所有选项,并且只获得我在tensorflow应用程序中得到的东西而没有这个异常?
非常感谢您!