tf.app.flags.FLAGS 的作用
tensorflow 中定义了 tf.app.flags.FLAGS ,用于接受从终端传入的命令行参数。
tf.app.flags.FLAGS 类型
tf中每个合法类型都有对应的 “DEFINE_xxx”函数。常用:
参数说明
“DEFINE_xxx”函数带3个参数,分别是变量名称,默认值;
用法
tf.app.flags.DEFINE_string('ckpt_path',
'model/model.ckpt-100000',
'''Checkpoint directory to restore''')
定义一个名称是 “ckpt_path” 的变量;
默认值是 ckpt_path = ‘model/model.ckpt-100000’;
描述信息表明这是一个用于保存节点信息的路径。
使用示例
# -*- coding=utf-8 -*-
import tensorflow as tf
FLAGS = tf.app.flags.FLAGS
tf.app.flags.DEFINE_string('ckpt_path', 'model/model.ckpt-100000', '''模型保存路径''')
tf.app.flags.DEFINE_float('learning_rate',0.0001,'''初始学习率''')
tf.app.flags.DEFINE_integer('train_steps', 50000, '''总的训练轮数''')
tf.app.flags.DEFINE_boolean('is_use_gpu', False, '''是否使用GPU''')
print ('模型保存路径: {}'.format(FLAGS.ckpt_path))
print ('初始学习率: {}'.format(FLAGS.learning_rate))
print ('总的训练次数: {}'.format(FLAGS.train_steps))
print ('是否使用GPU: {}'.format(FLAGS.is_use_gpu))
使用 ‘-h’ 指令查看帮助信息
python test.py -h
按默认设置执行程序:
传入用户自定义的命令行参数:
python flags_test.py --ckpt_path abc/cba --learning_rate 0.001 --train_steps 10000 --is_use_gpu True