• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

TensorFlow中tf.app.flags的作用是什么?

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

阅读Tensorflow代码时遇到的问题

最近在研究大名鼎鼎的深度学习工具包Tensorflow,在阅读Tensorflow中的示例Python代码时,发现有以下代码片段:

flags = tf.app.flags
FLAGS = flags.FLAGS
flags.DEFINE_float('learning_rate', 0.01, 'Initial learning rate.')
flags.DEFINE_integer('max_steps', 2000, 'Number of steps to run trainer.')
flags.DEFINE_integer('hidden1', 128, 'Number of units in hidden layer 1.')
flags.DEFINE_integer('hidden2', 32, 'Number of units in hidden layer 2.')
flags.DEFINE_integer('batch_size', 100, 'Batch size.  '
                 'Must divide evenly into the dataset sizes.')
flags.DEFINE_string('train_dir', 'data', 'Directory to put the training data.')
flags.DEFINE_boolean('fake_data', False, 'If true, uses fake data '
                 'for unit testing.')

这段代码位于文件:tensorflow/tensorflow/g3doc/tutorials/mnist/fully_connected_feed.py之中。

其中有一个tf.app.flags变量,目前我找不到关于tf.app.flags这个用法的任何文档或者资料,这让人非常困惑。

显然,从上面代码的上下文来看,这个tf.app.flags应该用于以某种方式初始化或者配置网络,那么为什么它不在Tensorflow的官方API文档中?谁能解释一下这个表示到底是干什么用的?

tf.app.flags相关的介绍

tf.app.flags相关的模块,从命令行解析参数的方法,它是google特有的风格,更常见的解析方法是argparsetf.app.flags可以认为是对模块argparse的简单封装,它实现了python-gflags的一个功能子集。

请注意,此模块目前封装在一起,主要用于编写演示应用程序,并且在技术上不是公共API的一部分,将来有发生更改的可能性。

建议您使用argparse或您喜欢的任何其他代码库实现自己的标志解析。

补充说明:tf.app.flags模块实际上并不是使用python-gflags实现的,而是使用其他类似的API。

附加:Tensorflow的简介


图1. Tensorflow的Logo

Tensorflow是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。由于google公司本身的号召力,以及Tensorflow系统设计的优越性,目前该工具包在深度学习领域得到广泛应用。Tensorflow具有非常好的易用性,特别是使用Keras这样的封装,深度网络搭建如同探囊取物。Keras入门可以参考:深度学习库Keras入门

本文由编程爱好者ubuntuer整理自

  1. What’s the purpose of tf.app.flags in TensorFlow?
  2. what does tf.app.flags do? why we need that?


鲜花

握手

雷人

路过

鸡蛋
专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap