Tensorflow中tf.app.flags和tf.app.run。

本文简要介绍了TensorFlow中tf.app.flags和tf.app.run的使用。tf.app.flags用于定义命令行参数,如data_dir、batch_size和num_evals,而FLAGS变量用于获取这些参数的值。tf.app.run则负责执行程序的main函数并解析命令行参数。通过tf.app.run,可以直接运行包含main函数的模块。
摘要由CSDN通过智能技术生成

正文

一、tf.app.flags和tf.app.run。

经常在程序中看到有tf.app.flags和tf.app.run字样的代码,这两段代码究竟是什么作用,我在这里简单记录一下。希望大神批评指正。

二、简记

首先我们通过tf.app.flags来调用这个flags.py文件,这样我们就可以用flags.DEFINE_interger/float()来添加命令行参数,而FLAGS=flags.FLAGS可以实例化这个解析参数的类从对应的命令行参数取出参数。


新建test.py文件,并输入如下代码,代码的功能是创建几个命令行参数,然后把命令行参数输出显示


import tensorflow as tf

flags = tf.app.flags
flags.DEFINE_string(‘data_dir’, ‘/tmp/mnist’, ‘Directory with the MNIST data.’)

#本人就是再这里出错
#data_dir是数据集在程序中的名字对象,第二个才是数据集的文件地址!

flags.DEFINE_integer(‘batch_size’, 5, ‘Batch size.’)

flags.DEFINE_integer(‘num_evals’, 1000, ‘Number of batches to evaluate.’)
FLAGS = flags.FLAGS

print(FLAGS.data_dir, FLAGS.batch_size, FLAGS.num_evals)


tf.app.run()
该函数一般都是出现在这种代码中:

if name == ‘main’:
tf.app.run()

上述第一行代码表示如果当前是从其它模块调用的该模块程序,则不会运行main函数!而如果就是直接运行的该模块程序,则会运行main函数。

tf.app.run的核心意思就是:执行程序中main函数,并解析命令行参数!

总结

转载至:链接: link.

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值