TensorFlow 之命令行参数

TensorFlow项目例子中经常出现tf.app.flags,这个好像和tf.flags是一样,加不加中间的app没区别(要是不是这样还请大家指出错误之处),它支持应用从命令行接受参数,可以用来指定集群配置等。

import tensorflow as tf

#调用flags内部的DEFINE_string函数来制定解析规则
tf.flags.DEFINE_string("para_name_1","default_val", "description")
tf.flags.DEFINE_integer("batch_size", 64, "Batch Size (default: 64)")
tf.flags.DEFINE_integer("num_epochs", 10, "Number of training epochs (default: 10)")

#FLAGS是一个对象,保存了解析后的命令行参数
FLAGS = tf.flags.FLAGS
FLAGS._parse_flags()#进行解析,加上这一句可以把FLAGS.__flags变成一个字典
print(FLAGS.batch_size)#运行结果输出64
print(FLAGS.__flags)#运行结果见下图

TensorFlow 之命令行参数_第1张图片

当然,以上的都不是重点,重点来了,重点是它可以从命令行接受参数。结果见下图吧。
TensorFlow 之命令行参数_第2张图片

可以看到当不传入参数的时候它可以使用默认值,你也可以很方便的传入自己的参数。

你可能感兴趣的:(tensorflow入门)